// ReSharper disable InconsistentNaming public void LoadDataset(DatasetDescription datasetDescription) { UnloadDataset(); Interop.LoadVolume(datasetDescription.VolumeDescriptions); Interop.VisualUpdate(); Interop.VisualUpdateColorMap(); var neuralProcessEnumerator = datasetDescription.NeuralProcessDescriptions.GetEnumerator() as IEnumerator <KeyValuePair <int, NeuralProcessDescription> >; neuralProcessEnumerator.MoveNext(); var d3d11CudaTextureEnumerator = Interop.D3D11CudaTextures.Internal.GetEnumerator() as IEnumerator <KeyValuePair <string, ShaderResourceView> >; d3d11CudaTextureEnumerator.MoveNext(); DatasetDescription = datasetDescription; NeuralProcessEnumerator = neuralProcessEnumerator; D3D11CudaTextureEnumerator = d3d11CudaTextureEnumerator; CurrentNeuralProcess = NeuralProcessEnumerator.Current.Value; CurrentD3D11CudaTextureIndex = 0; CurrentSegmenterToolMode = SegmenterToolMode.Adjust; CommittedSegmentationEqualsUndoBuffer = true; CommittedSegmentationEqualsRedoBuffer = true; DatasetLoaded = true; D3D11CudaTextureEnumerator.MoveNext(); CurrentD3D11CudaTextureIndex++; D3D11CudaTextureEnumerator.MoveNext(); CurrentD3D11CudaTextureIndex++; }
public void IncrementCurrentTexture() { CurrentD3D11CudaTextureIndex++; D3D11CudaTextureEnumerator.MoveNext(); if (CurrentD3D11CudaTextureIndex > Interop.D3D11CudaTextures.Internal.Count - 1) { CurrentD3D11CudaTextureIndex = 0; D3D11CudaTextureEnumerator.Reset(); D3D11CudaTextureEnumerator.MoveNext(); } }
public void DecrementCurrentTexture() { CurrentD3D11CudaTextureIndex--; if (CurrentD3D11CudaTextureIndex < 0) { CurrentD3D11CudaTextureIndex = Interop.D3D11CudaTextures.Internal.Count - 1; } D3D11CudaTextureEnumerator.Reset(); D3D11CudaTextureEnumerator.MoveNext(); for (var i = 0; i < CurrentD3D11CudaTextureIndex; i++) { D3D11CudaTextureEnumerator.MoveNext(); } }