internal SliceStreamReader(VolumeMetadata metadata, Stream stream, IProgress <VolumeSliceDefinition> progressNotifier = null, CancellationToken ct = default(CancellationToken)) { _Stream = stream; _ProgressNotifier = progressNotifier; _Ct = ct; _CurrentSlice = 0; _SizeX = metadata.SizeX; _SizeY = metadata.SizeY; _SizeZ = metadata.SizeZ; _Buffer = new byte[0]; Interop = new InteropSliceReader { ReadSlice = ReadSlice }; }
internal SliceReader(VolumeMetadata metadata, byte[][] data, Direction readDirection = Direction.Z, IProgress <VolumeSliceDefinition> progressNotifier = null, CancellationToken ct = default(CancellationToken)) { _Data = data; _ReadDirection = readDirection; _ProgressNotifier = progressNotifier; _Ct = ct; _CurrentSlice = 0; _SizeX = metadata.SizeX; _SizeY = metadata.SizeY; _SizeZ = metadata.SizeZ; _Buffer = new byte[0]; Interop = new InteropSliceReader { ReadSlice = ReadSlice }; }
internal static extern int CompressVolume(InteropSliceReader inputStream, InteropStream outputStream, ushort width, ushort height, [MarshalAs(UnmanagedType.LPStr)] string encoderName, [MarshalAs(UnmanagedType.LPStr)] string pixelFormat, [MarshalAs(UnmanagedType.LPStr)] string options, int bitrate);