public static TVolume[] GetAllVolumesGUID() { TVolume[] volumes = new TVolume[10]; int max = GetAllVolumesArrayGUID(10, volumes); return(volumes); }
public static TQuad[] GetColouredBlocks(TVolume volume, uint size) { var quads = GetColouredBlocksInternal(volume, size); var blocks = new TQuad[size]; for (int i = 0; i < size; i++) { blocks[i] = Marshal.PtrToStructure <TQuad>(IntPtr.Add(quads, i * Marshal.SizeOf <TQuad>())); } return(blocks); }
public static extern UInt64 GetVolumeSizeInBytes([In] TVolume volume);
public static extern UInt64 DefragmentSecondStage([In] TVolume volume, UInt64 size);
public static extern UInt64 DefragmentFirstStage([In] TVolume volume, UInt64 size);
private static extern IntPtr GetColouredBlocksInternal([In] TVolume volume, UInt32 size);