CNAS取数仪器端升级
Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.

6136 lines
293KB

  1. <?xml version="1.0"?>
  2. <doc>
  3. <assembly>
  4. <name>DiscUtils.Core</name>
  5. </assembly>
  6. <members>
  7. <member name="T:DiscUtils.ApplePartitionMap.PartitionMap">
  8. <summary>
  9. Interprets Apple Partition Map structures that partition a disk.
  10. </summary>
  11. </member>
  12. <member name="M:DiscUtils.ApplePartitionMap.PartitionMap.#ctor(System.IO.Stream)">
  13. <summary>
  14. Initializes a new instance of the PartitionMap class.
  15. </summary>
  16. <param name="stream">Stream containing the contents of a disk.</param>
  17. </member>
  18. <member name="P:DiscUtils.ApplePartitionMap.PartitionMap.DiskGuid">
  19. <summary>
  20. Gets the GUID of the disk, always returns Guid.Empty.
  21. </summary>
  22. </member>
  23. <member name="P:DiscUtils.ApplePartitionMap.PartitionMap.Partitions">
  24. <summary>
  25. Gets the partitions present on the disk.
  26. </summary>
  27. </member>
  28. <member name="M:DiscUtils.ApplePartitionMap.PartitionMap.Create(DiscUtils.Partitions.WellKnownPartitionType,System.Boolean)">
  29. <summary>
  30. Creates a new partition that encompasses the entire disk.
  31. </summary>
  32. <param name="type">The partition type.</param>
  33. <param name="active">Whether the partition is active (bootable).</param>
  34. <returns>The index of the partition.</returns>
  35. <remarks>The partition table must be empty before this method is called,
  36. otherwise IOException is thrown.</remarks>
  37. </member>
  38. <member name="M:DiscUtils.ApplePartitionMap.PartitionMap.Create(System.Int64,DiscUtils.Partitions.WellKnownPartitionType,System.Boolean)">
  39. <summary>
  40. Creates a new partition with a target size.
  41. </summary>
  42. <param name="size">The target size (in bytes).</param>
  43. <param name="type">The partition type.</param>
  44. <param name="active">Whether the partition is active (bootable).</param>
  45. <returns>The index of the new partition.</returns>
  46. </member>
  47. <member name="M:DiscUtils.ApplePartitionMap.PartitionMap.CreateAligned(DiscUtils.Partitions.WellKnownPartitionType,System.Boolean,System.Int32)">
  48. <summary>
  49. Creates a new aligned partition that encompasses the entire disk.
  50. </summary>
  51. <param name="type">The partition type.</param>
  52. <param name="active">Whether the partition is active (bootable).</param>
  53. <param name="alignment">The alignment (in byte).</param>
  54. <returns>The index of the partition.</returns>
  55. <remarks>The partition table must be empty before this method is called,
  56. otherwise IOException is thrown.</remarks>
  57. <remarks>
  58. Traditionally partitions were aligned to the physical structure of the underlying disk,
  59. however with modern storage greater efficiency is acheived by aligning partitions on
  60. large values that are a power of two.
  61. </remarks>
  62. </member>
  63. <member name="M:DiscUtils.ApplePartitionMap.PartitionMap.CreateAligned(System.Int64,DiscUtils.Partitions.WellKnownPartitionType,System.Boolean,System.Int32)">
  64. <summary>
  65. Creates a new aligned partition with a target size.
  66. </summary>
  67. <param name="size">The target size (in bytes).</param>
  68. <param name="type">The partition type.</param>
  69. <param name="active">Whether the partition is active (bootable).</param>
  70. <param name="alignment">The alignment (in byte).</param>
  71. <returns>The index of the new partition.</returns>
  72. <remarks>
  73. Traditionally partitions were aligned to the physical structure of the underlying disk,
  74. however with modern storage greater efficiency is achieved by aligning partitions on
  75. large values that are a power of two.
  76. </remarks>
  77. </member>
  78. <member name="M:DiscUtils.ApplePartitionMap.PartitionMap.Delete(System.Int32)">
  79. <summary>
  80. Deletes a partition at a given index.
  81. </summary>
  82. <param name="index">The index of the partition.</param>
  83. </member>
  84. <member name="T:DiscUtils.Archives.TarFile">
  85. <summary>
  86. Minimal tar file format implementation.
  87. </summary>
  88. </member>
  89. <member name="M:DiscUtils.Archives.TarFile.#ctor(System.IO.Stream)">
  90. <summary>
  91. Initializes a new instance of the TarFile class.
  92. </summary>
  93. <param name="fileStream">The Tar file.</param>
  94. </member>
  95. <member name="M:DiscUtils.Archives.TarFile.TryOpenFile(System.String,System.IO.Stream@)">
  96. <summary>
  97. Tries to open a file contained in the archive, if it exists.
  98. </summary>
  99. <param name="path">The path to the file within the archive.</param>
  100. <param name="stream">A stream containing the file contents, or null.</param>
  101. <returns><c>true</c> if the file could be opened, else <c>false</c>.</returns>
  102. </member>
  103. <member name="M:DiscUtils.Archives.TarFile.OpenFile(System.String)">
  104. <summary>
  105. Open a file contained in the archive.
  106. </summary>
  107. <param name="path">The path to the file within the archive.</param>
  108. <returns>A stream containing the file contents.</returns>
  109. <exception cref="T:System.IO.FileNotFoundException">Thrown if the file is not found.</exception>
  110. </member>
  111. <member name="M:DiscUtils.Archives.TarFile.FileExists(System.String)">
  112. <summary>
  113. Determines if a given file exists in the archive.
  114. </summary>
  115. <param name="path">The file path to test.</param>
  116. <returns><c>true</c> if the file is present, else <c>false</c>.</returns>
  117. </member>
  118. <member name="M:DiscUtils.Archives.TarFile.DirExists(System.String)">
  119. <summary>
  120. Determines if a given directory exists in the archive.
  121. </summary>
  122. <param name="path">The file path to test.</param>
  123. <returns><c>true</c> if the directory is present, else <c>false</c>.</returns>
  124. </member>
  125. <member name="T:DiscUtils.Archives.TarFileBuilder">
  126. <summary>
  127. Builder to create UNIX Tar archive files.
  128. </summary>
  129. </member>
  130. <member name="M:DiscUtils.Archives.TarFileBuilder.#ctor">
  131. <summary>
  132. Initializes a new instance of the <see cref="T:DiscUtils.Archives.TarFileBuilder"/> class.
  133. </summary>
  134. </member>
  135. <member name="M:DiscUtils.Archives.TarFileBuilder.AddFile(System.String,System.Byte[])">
  136. <summary>
  137. Add a file to the tar archive.
  138. </summary>
  139. <param name="name">The name of the file.</param>
  140. <param name="buffer">The file data.</param>
  141. </member>
  142. <member name="M:DiscUtils.Archives.TarFileBuilder.AddFile(System.String,System.Byte[],DiscUtils.UnixFilePermissions,System.Int32,System.Int32,System.DateTime)">
  143. <summary>
  144. Add a file to the tar archive.
  145. </summary>
  146. <param name="name">The name of the file.</param>
  147. <param name="buffer">The file data.</param>
  148. <param name="fileMode">The access mode of the file.</param>
  149. <param name="ownerId">The uid of the owner.</param>
  150. <param name="groupId">The gid of the owner.</param>
  151. <param name="modificationTime">The modification time for the file.</param>
  152. </member>
  153. <member name="M:DiscUtils.Archives.TarFileBuilder.AddFile(System.String,System.IO.Stream)">
  154. <summary>
  155. Add a file to the tar archive.
  156. </summary>
  157. <param name="name">The name of the file.</param>
  158. <param name="stream">The file data.</param>
  159. </member>
  160. <member name="M:DiscUtils.Archives.TarFileBuilder.AddFile(System.String,System.IO.Stream,DiscUtils.UnixFilePermissions,System.Int32,System.Int32,System.DateTime)">
  161. <summary>
  162. Add a file to the tar archive.
  163. </summary>
  164. <param name="name">The name of the file.</param>
  165. <param name="stream">The file data.</param>
  166. <param name="fileMode">The access mode of the file.</param>
  167. <param name="ownerId">The uid of the owner.</param>
  168. <param name="groupId">The gid of the owner.</param>
  169. <param name="modificationTime">The modification time for the file.</param>
  170. </member>
  171. <member name="T:DiscUtils.ChsAddress">
  172. <summary>
  173. Class whose instances represent a CHS (Cylinder, Head, Sector) address on a disk.
  174. </summary>
  175. <remarks>Instances of this class are immutable.</remarks>
  176. </member>
  177. <member name="F:DiscUtils.ChsAddress.First">
  178. <summary>
  179. The address of the first sector on any disk.
  180. </summary>
  181. </member>
  182. <member name="M:DiscUtils.ChsAddress.#ctor(System.Int32,System.Int32,System.Int32)">
  183. <summary>
  184. Initializes a new instance of the ChsAddress class.
  185. </summary>
  186. <param name="cylinder">The number of cylinders of the disk.</param>
  187. <param name="head">The number of heads (aka platters) of the disk.</param>
  188. <param name="sector">The number of sectors per track/cylinder of the disk.</param>
  189. </member>
  190. <member name="P:DiscUtils.ChsAddress.Cylinder">
  191. <summary>
  192. Gets the cylinder number (zero-based).
  193. </summary>
  194. </member>
  195. <member name="P:DiscUtils.ChsAddress.Head">
  196. <summary>
  197. Gets the head (zero-based).
  198. </summary>
  199. </member>
  200. <member name="P:DiscUtils.ChsAddress.Sector">
  201. <summary>
  202. Gets the sector number (one-based).
  203. </summary>
  204. </member>
  205. <member name="M:DiscUtils.ChsAddress.Equals(System.Object)">
  206. <summary>
  207. Determines if this object is equivalent to another.
  208. </summary>
  209. <param name="obj">The object to test against.</param>
  210. <returns><c>true</c> if the <paramref name="obj"/> is equivalent, else <c>false</c>.</returns>
  211. </member>
  212. <member name="M:DiscUtils.ChsAddress.GetHashCode">
  213. <summary>
  214. Calculates the hash code for this object.
  215. </summary>
  216. <returns>The hash code.</returns>
  217. </member>
  218. <member name="M:DiscUtils.ChsAddress.ToString">
  219. <summary>
  220. Gets a string representation of this object, in the form (C/H/S).
  221. </summary>
  222. <returns>The string representation.</returns>
  223. </member>
  224. <member name="T:DiscUtils.ClusterMap">
  225. <summary>
  226. Class that identifies the role of each cluster in a file system.
  227. </summary>
  228. </member>
  229. <member name="M:DiscUtils.ClusterMap.GetRole(System.Int64)">
  230. <summary>
  231. Gets the role of a cluster within the file system.
  232. </summary>
  233. <param name="cluster">The cluster to inspect.</param>
  234. <returns>The clusters role (or roles).</returns>
  235. </member>
  236. <member name="M:DiscUtils.ClusterMap.ClusterToPaths(System.Int64)">
  237. <summary>
  238. Converts a cluster to a list of file names.
  239. </summary>
  240. <param name="cluster">The cluster to inspect.</param>
  241. <returns>A list of paths that map to the cluster.</returns>
  242. <remarks>A list is returned because on file systems with the notion of
  243. hard links, a cluster may correspond to multiple directory entries.</remarks>
  244. </member>
  245. <member name="T:DiscUtils.ClusterRoles">
  246. <summary>
  247. Enumeration of possible cluster roles.
  248. </summary>
  249. <remarks>A cluster may be in more than one role.</remarks>
  250. </member>
  251. <member name="F:DiscUtils.ClusterRoles.None">
  252. <summary>
  253. Unknown, or unspecified role.
  254. </summary>
  255. </member>
  256. <member name="F:DiscUtils.ClusterRoles.Free">
  257. <summary>
  258. Cluster is free.
  259. </summary>
  260. </member>
  261. <member name="F:DiscUtils.ClusterRoles.DataFile">
  262. <summary>
  263. Cluster is in use by a normal file.
  264. </summary>
  265. </member>
  266. <member name="F:DiscUtils.ClusterRoles.SystemFile">
  267. <summary>
  268. Cluster is in use by a system file.
  269. </summary>
  270. <remarks>This isn't a file marked with the 'system' attribute,
  271. rather files that form part of the file system namespace but also
  272. form part of the file system meta-data.</remarks>
  273. </member>
  274. <member name="F:DiscUtils.ClusterRoles.Metadata">
  275. <summary>
  276. Cluster is in use for meta-data.
  277. </summary>
  278. </member>
  279. <member name="F:DiscUtils.ClusterRoles.BootArea">
  280. <summary>
  281. Cluster contains the boot region.
  282. </summary>
  283. </member>
  284. <member name="F:DiscUtils.ClusterRoles.Bad">
  285. <summary>
  286. Cluster is marked bad.
  287. </summary>
  288. </member>
  289. <member name="T:DiscUtils.Compression.Adler32">
  290. <summary>
  291. Implementation of the Adler-32 checksum algorithm.
  292. </summary>
  293. </member>
  294. <member name="M:DiscUtils.Compression.Adler32.#ctor">
  295. <summary>
  296. Initializes a new instance of the Adler32 class.
  297. </summary>
  298. </member>
  299. <member name="P:DiscUtils.Compression.Adler32.Value">
  300. <summary>
  301. Gets the checksum of all data processed so far.
  302. </summary>
  303. </member>
  304. <member name="M:DiscUtils.Compression.Adler32.Process(System.Byte[],System.Int32,System.Int32)">
  305. <summary>
  306. Provides data that should be checksummed.
  307. </summary>
  308. <param name="buffer">Buffer containing the data to checksum.</param>
  309. <param name="offset">Offset of the first byte to checksum.</param>
  310. <param name="count">The number of bytes to checksum.</param>
  311. <remarks>
  312. Call this method repeatedly until all checksummed
  313. data has been processed.
  314. </remarks>
  315. </member>
  316. <member name="T:DiscUtils.Compression.BigEndianBitStream">
  317. <summary>
  318. Converts a byte stream into a bit stream.
  319. </summary>
  320. </member>
  321. <member name="T:DiscUtils.Compression.BitStream">
  322. <summary>
  323. Base class for bit streams.
  324. </summary>
  325. <remarks>
  326. The rules for conversion of a byte stream to a bit stream vary
  327. between implementations.
  328. </remarks>
  329. </member>
  330. <member name="P:DiscUtils.Compression.BitStream.MaxReadAhead">
  331. <summary>
  332. Gets the maximum number of bits that can be peeked on the stream.
  333. </summary>
  334. </member>
  335. <member name="M:DiscUtils.Compression.BitStream.Read(System.Int32)">
  336. <summary>
  337. Reads bits from the stream.
  338. </summary>
  339. <param name="count">The number of bits to read.</param>
  340. <returns>The bits as a UInt32.</returns>
  341. </member>
  342. <member name="M:DiscUtils.Compression.BitStream.Peek(System.Int32)">
  343. <summary>
  344. Queries data from the stream.
  345. </summary>
  346. <param name="count">The number of bits to query.</param>
  347. <returns>The bits as a UInt32.</returns>
  348. <remarks>This method does not consume the bits (i.e. move the file pointer).</remarks>
  349. </member>
  350. <member name="M:DiscUtils.Compression.BitStream.Consume(System.Int32)">
  351. <summary>
  352. Consumes bits from the stream without returning them.
  353. </summary>
  354. <param name="count">The number of bits to consume.</param>
  355. </member>
  356. <member name="T:DiscUtils.Compression.BlockCompressor">
  357. <summary>
  358. Base class for block compression algorithms.
  359. </summary>
  360. </member>
  361. <member name="P:DiscUtils.Compression.BlockCompressor.BlockSize">
  362. <summary>
  363. Gets or sets the block size parameter to the algorithm.
  364. </summary>
  365. <remarks>
  366. Some algorithms may use this to control both compression and decompression, others may
  367. only use it to control compression. Some may ignore it entirely.
  368. </remarks>
  369. </member>
  370. <member name="M:DiscUtils.Compression.BlockCompressor.Compress(System.Byte[],System.Int32,System.Int32,System.Byte[],System.Int32,System.Int32@)">
  371. <summary>
  372. Compresses some data.
  373. </summary>
  374. <param name="source">The uncompressed input.</param>
  375. <param name="sourceOffset">Offset of the input data in <c>source</c>.</param>
  376. <param name="sourceLength">The amount of uncompressed data.</param>
  377. <param name="compressed">The destination for the output compressed data.</param>
  378. <param name="compressedOffset">Offset for the output data in <c>compressed</c>.</param>
  379. <param name="compressedLength">The maximum size of the compressed data on input, and the actual size on output.</param>
  380. <returns>Indication of success, or indication the data could not compress into the requested space.</returns>
  381. </member>
  382. <member name="M:DiscUtils.Compression.BlockCompressor.Decompress(System.Byte[],System.Int32,System.Int32,System.Byte[],System.Int32)">
  383. <summary>
  384. Decompresses some data.
  385. </summary>
  386. <param name="source">The compressed input.</param>
  387. <param name="sourceOffset">Offset of the input data in <c>source</c>.</param>
  388. <param name="sourceLength">The amount of compressed data.</param>
  389. <param name="decompressed">The destination for the output decompressed data.</param>
  390. <param name="decompressedOffset">Offset for the output data in <c>decompressed</c>.</param>
  391. <returns>The amount of decompressed data.</returns>
  392. </member>
  393. <member name="T:DiscUtils.Compression.BZip2CombinedHuffmanTrees">
  394. <summary>
  395. Represents scheme used by BZip2 where multiple Huffman trees are used as a
  396. virtual Huffman tree, with a logical selector every 50 bits in the bit stream.
  397. </summary>
  398. </member>
  399. <member name="T:DiscUtils.Compression.BZip2DecoderStream">
  400. <summary>
  401. Implementation of a BZip2 decoder.
  402. </summary>
  403. </member>
  404. <member name="M:DiscUtils.Compression.BZip2DecoderStream.#ctor(System.IO.Stream,DiscUtils.Streams.Ownership)">
  405. <summary>
  406. Initializes a new instance of the BZip2DecoderStream class.
  407. </summary>
  408. <param name="stream">The compressed input stream.</param>
  409. <param name="ownsStream">Whether ownership of stream passes to the new instance.</param>
  410. </member>
  411. <member name="P:DiscUtils.Compression.BZip2DecoderStream.CanRead">
  412. <summary>
  413. Gets an indication of whether read access is permitted.
  414. </summary>
  415. </member>
  416. <member name="P:DiscUtils.Compression.BZip2DecoderStream.CanSeek">
  417. <summary>
  418. Gets an indication of whether seeking is permitted.
  419. </summary>
  420. </member>
  421. <member name="P:DiscUtils.Compression.BZip2DecoderStream.CanWrite">
  422. <summary>
  423. Gets an indication of whether write access is permitted.
  424. </summary>
  425. </member>
  426. <member name="P:DiscUtils.Compression.BZip2DecoderStream.Length">
  427. <summary>
  428. Gets the length of the stream (the capacity of the underlying buffer).
  429. </summary>
  430. </member>
  431. <member name="P:DiscUtils.Compression.BZip2DecoderStream.Position">
  432. <summary>
  433. Gets and sets the current position within the stream.
  434. </summary>
  435. </member>
  436. <member name="M:DiscUtils.Compression.BZip2DecoderStream.Flush">
  437. <summary>
  438. Flushes all data to the underlying storage.
  439. </summary>
  440. </member>
  441. <member name="M:DiscUtils.Compression.BZip2DecoderStream.Read(System.Byte[],System.Int32,System.Int32)">
  442. <summary>
  443. Reads a number of bytes from the stream.
  444. </summary>
  445. <param name="buffer">The destination buffer.</param>
  446. <param name="offset">The start offset within the destination buffer.</param>
  447. <param name="count">The number of bytes to read.</param>
  448. <returns>The number of bytes read.</returns>
  449. </member>
  450. <member name="M:DiscUtils.Compression.BZip2DecoderStream.Seek(System.Int64,System.IO.SeekOrigin)">
  451. <summary>
  452. Changes the current stream position.
  453. </summary>
  454. <param name="offset">The origin-relative stream position.</param>
  455. <param name="origin">The origin for the stream position.</param>
  456. <returns>The new stream position.</returns>
  457. </member>
  458. <member name="M:DiscUtils.Compression.BZip2DecoderStream.SetLength(System.Int64)">
  459. <summary>
  460. Sets the length of the stream (the underlying buffer's capacity).
  461. </summary>
  462. <param name="value">The new length of the stream.</param>
  463. </member>
  464. <member name="M:DiscUtils.Compression.BZip2DecoderStream.Write(System.Byte[],System.Int32,System.Int32)">
  465. <summary>
  466. Writes a buffer to the stream.
  467. </summary>
  468. <param name="buffer">The buffer to write.</param>
  469. <param name="offset">The starting offset within buffer.</param>
  470. <param name="count">The number of bytes to write.</param>
  471. </member>
  472. <member name="M:DiscUtils.Compression.BZip2DecoderStream.Dispose(System.Boolean)">
  473. <summary>
  474. Releases underlying resources.
  475. </summary>
  476. <param name="disposing">Whether this method is called from Dispose.</param>
  477. </member>
  478. <member name="T:DiscUtils.Compression.CompressionResult">
  479. <summary>
  480. Possible results of attempting to compress data.
  481. </summary>
  482. <remarks>
  483. A compression routine <i>may</i> return <c>Compressed</c>, even if the data
  484. was 'all zeros' or increased in size. The <c>AllZeros</c> and <c>Incompressible</c>
  485. values are for algorithms that include special detection for these cases.
  486. </remarks>
  487. </member>
  488. <member name="F:DiscUtils.Compression.CompressionResult.Compressed">
  489. <summary>
  490. The data compressed succesfully.
  491. </summary>
  492. </member>
  493. <member name="F:DiscUtils.Compression.CompressionResult.AllZeros">
  494. <summary>
  495. The data was all-zero's.
  496. </summary>
  497. </member>
  498. <member name="F:DiscUtils.Compression.CompressionResult.Incompressible">
  499. <summary>
  500. The data was incompressible (could not fit into destination buffer).
  501. </summary>
  502. </member>
  503. <member name="T:DiscUtils.Compression.HuffmanTree">
  504. <summary>
  505. A canonical Huffman tree implementation.
  506. </summary>
  507. <remarks>
  508. A lookup table is created that will take any bit sequence (max tree depth in length),
  509. indicating the output symbol. In WIM files, in practice, no chunk exceeds 32768 bytes
  510. in length, so we often end up generating a bigger lookup table than the data it's
  511. encoding. This makes for exceptionally fast symbol lookups O(1), but is inefficient
  512. overall.
  513. </remarks>
  514. </member>
  515. <member name="T:DiscUtils.Compression.ZlibStream">
  516. <summary>
  517. Implementation of the Zlib compression algorithm.
  518. </summary>
  519. <remarks>Only decompression is currently implemented.</remarks>
  520. </member>
  521. <member name="M:DiscUtils.Compression.ZlibStream.#ctor(System.IO.Stream,System.IO.Compression.CompressionMode,System.Boolean)">
  522. <summary>
  523. Initializes a new instance of the ZlibStream class.
  524. </summary>
  525. <param name="stream">The stream to compress of decompress.</param>
  526. <param name="mode">Whether to compress or decompress.</param>
  527. <param name="leaveOpen">Whether closing this stream should leave <c>stream</c> open.</param>
  528. </member>
  529. <member name="P:DiscUtils.Compression.ZlibStream.CanRead">
  530. <summary>
  531. Gets whether the stream can be read.
  532. </summary>
  533. </member>
  534. <member name="P:DiscUtils.Compression.ZlibStream.CanSeek">
  535. <summary>
  536. Gets whether the stream pointer can be changed.
  537. </summary>
  538. </member>
  539. <member name="P:DiscUtils.Compression.ZlibStream.CanWrite">
  540. <summary>
  541. Gets whether the stream can be written to.
  542. </summary>
  543. </member>
  544. <member name="P:DiscUtils.Compression.ZlibStream.Length">
  545. <summary>
  546. Gets the length of the stream.
  547. </summary>
  548. </member>
  549. <member name="P:DiscUtils.Compression.ZlibStream.Position">
  550. <summary>
  551. Gets and sets the stream position.
  552. </summary>
  553. </member>
  554. <member name="M:DiscUtils.Compression.ZlibStream.Dispose(System.Boolean)">
  555. <summary>
  556. Closes the stream.
  557. </summary>
  558. </member>
  559. <member name="M:DiscUtils.Compression.ZlibStream.Flush">
  560. <summary>
  561. Flushes the stream.
  562. </summary>
  563. </member>
  564. <member name="M:DiscUtils.Compression.ZlibStream.Read(System.Byte[],System.Int32,System.Int32)">
  565. <summary>
  566. Reads data from the stream.
  567. </summary>
  568. <param name="buffer">The buffer to populate.</param>
  569. <param name="offset">The first byte to write.</param>
  570. <param name="count">The number of bytes requested.</param>
  571. <returns>The number of bytes read.</returns>
  572. </member>
  573. <member name="M:DiscUtils.Compression.ZlibStream.Seek(System.Int64,System.IO.SeekOrigin)">
  574. <summary>
  575. Seeks to a new position.
  576. </summary>
  577. <param name="offset">Relative position to seek to.</param>
  578. <param name="origin">The origin of the seek.</param>
  579. <returns>The new position.</returns>
  580. </member>
  581. <member name="M:DiscUtils.Compression.ZlibStream.SetLength(System.Int64)">
  582. <summary>
  583. Changes the length of the stream.
  584. </summary>
  585. <param name="value">The new desired length of the stream.</param>
  586. </member>
  587. <member name="M:DiscUtils.Compression.ZlibStream.Write(System.Byte[],System.Int32,System.Int32)">
  588. <summary>
  589. Writes data to the stream.
  590. </summary>
  591. <param name="buffer">Buffer containing the data to write.</param>
  592. <param name="offset">Offset of the first byte to write.</param>
  593. <param name="count">Number of bytes to write.</param>
  594. </member>
  595. <member name="T:DiscUtils.DiscDirectoryInfo">
  596. <summary>
  597. Provides information about a directory on a disc.
  598. </summary>
  599. <remarks>
  600. This class allows navigation of the disc directory/file hierarchy.
  601. </remarks>
  602. </member>
  603. <member name="M:DiscUtils.DiscDirectoryInfo.#ctor(DiscUtils.DiscFileSystem,System.String)">
  604. <summary>
  605. Initializes a new instance of the DiscDirectoryInfo class.
  606. </summary>
  607. <param name="fileSystem">The file system the directory info relates to.</param>
  608. <param name="path">The path within the file system of the directory.</param>
  609. </member>
  610. <member name="P:DiscUtils.DiscDirectoryInfo.Exists">
  611. <summary>
  612. Gets a value indicating whether the directory exists.
  613. </summary>
  614. </member>
  615. <member name="P:DiscUtils.DiscDirectoryInfo.FullName">
  616. <summary>
  617. Gets the full path of the directory.
  618. </summary>
  619. </member>
  620. <member name="M:DiscUtils.DiscDirectoryInfo.Create">
  621. <summary>
  622. Creates a directory.
  623. </summary>
  624. </member>
  625. <member name="M:DiscUtils.DiscDirectoryInfo.Delete">
  626. <summary>
  627. Deletes a directory, even if it's not empty.
  628. </summary>
  629. </member>
  630. <member name="M:DiscUtils.DiscDirectoryInfo.Delete(System.Boolean)">
  631. <summary>
  632. Deletes a directory, with the caller choosing whether to recurse.
  633. </summary>
  634. <param name="recursive"><c>true</c> to delete all child node, <c>false</c> to fail if the directory is not empty.</param>
  635. </member>
  636. <member name="M:DiscUtils.DiscDirectoryInfo.MoveTo(System.String)">
  637. <summary>
  638. Moves a directory and it's contents to a new path.
  639. </summary>
  640. <param name="destinationDirName">The destination directory name.</param>
  641. </member>
  642. <member name="M:DiscUtils.DiscDirectoryInfo.GetDirectories">
  643. <summary>
  644. Gets all child directories.
  645. </summary>
  646. <returns>An array of child directories.</returns>
  647. </member>
  648. <member name="M:DiscUtils.DiscDirectoryInfo.GetDirectories(System.String)">
  649. <summary>
  650. Gets all child directories matching a search pattern.
  651. </summary>
  652. <param name="pattern">The search pattern.</param>
  653. <returns>An array of child directories, or empty if none match.</returns>
  654. <remarks>The search pattern can include the wildcards * (matching 0 or more characters)
  655. and ? (matching 1 character).</remarks>
  656. </member>
  657. <member name="M:DiscUtils.DiscDirectoryInfo.GetDirectories(System.String,System.IO.SearchOption)">
  658. <summary>
  659. Gets all descendant directories matching a search pattern.
  660. </summary>
  661. <param name="pattern">The search pattern.</param>
  662. <param name="searchOption">Whether to search just this directory, or all children.</param>
  663. <returns>An array of descendant directories, or empty if none match.</returns>
  664. <remarks>The search pattern can include the wildcards * (matching 0 or more characters)
  665. and ? (matching 1 character). The option parameter determines whether only immediate
  666. children, or all children are returned.</remarks>
  667. </member>
  668. <member name="M:DiscUtils.DiscDirectoryInfo.GetFiles">
  669. <summary>
  670. Gets all files.
  671. </summary>
  672. <returns>An array of files.</returns>
  673. </member>
  674. <member name="M:DiscUtils.DiscDirectoryInfo.GetFiles(System.String)">
  675. <summary>
  676. Gets all files matching a search pattern.
  677. </summary>
  678. <param name="pattern">The search pattern.</param>
  679. <returns>An array of files, or empty if none match.</returns>
  680. <remarks>The search pattern can include the wildcards * (matching 0 or more characters)
  681. and ? (matching 1 character).</remarks>
  682. </member>
  683. <member name="M:DiscUtils.DiscDirectoryInfo.GetFiles(System.String,System.IO.SearchOption)">
  684. <summary>
  685. Gets all descendant files matching a search pattern.
  686. </summary>
  687. <param name="pattern">The search pattern.</param>
  688. <param name="searchOption">Whether to search just this directory, or all children.</param>
  689. <returns>An array of descendant files, or empty if none match.</returns>
  690. <remarks>The search pattern can include the wildcards * (matching 0 or more characters)
  691. and ? (matching 1 character). The option parameter determines whether only immediate
  692. children, or all children are returned.</remarks>
  693. </member>
  694. <member name="M:DiscUtils.DiscDirectoryInfo.GetFileSystemInfos">
  695. <summary>
  696. Gets all files and directories in this directory.
  697. </summary>
  698. <returns>An array of files and directories.</returns>
  699. </member>
  700. <member name="M:DiscUtils.DiscDirectoryInfo.GetFileSystemInfos(System.String)">
  701. <summary>
  702. Gets all files and directories in this directory.
  703. </summary>
  704. <param name="pattern">The search pattern.</param>
  705. <returns>An array of files and directories.</returns>
  706. <remarks>The search pattern can include the wildcards * (matching 0 or more characters)
  707. and ? (matching 1 character).</remarks>
  708. </member>
  709. <member name="T:DiscUtils.DiscFileInfo">
  710. <summary>
  711. Provides information about a file on a disc.
  712. </summary>
  713. </member>
  714. <member name="P:DiscUtils.DiscFileInfo.Directory">
  715. <summary>
  716. Gets an instance of the parent directory.
  717. </summary>
  718. </member>
  719. <member name="P:DiscUtils.DiscFileInfo.DirectoryName">
  720. <summary>
  721. Gets a string representing the directory's full path.
  722. </summary>
  723. </member>
  724. <member name="P:DiscUtils.DiscFileInfo.Exists">
  725. <summary>
  726. Gets a value indicating whether the file exists.
  727. </summary>
  728. </member>
  729. <member name="P:DiscUtils.DiscFileInfo.IsReadOnly">
  730. <summary>
  731. Gets or sets a value indicating whether the file is read-only.
  732. </summary>
  733. </member>
  734. <member name="P:DiscUtils.DiscFileInfo.Length">
  735. <summary>
  736. Gets the length of the current file in bytes.
  737. </summary>
  738. </member>
  739. <member name="M:DiscUtils.DiscFileInfo.Delete">
  740. <summary>
  741. Deletes a file.
  742. </summary>
  743. </member>
  744. <member name="M:DiscUtils.DiscFileInfo.AppendText">
  745. <summary>
  746. Creates a <see cref="T:System.IO.StreamWriter" /> that appends text to the file represented by this <see cref="T:DiscUtils.DiscFileInfo"/>.
  747. </summary>
  748. <returns>The newly created writer.</returns>
  749. </member>
  750. <member name="M:DiscUtils.DiscFileInfo.CopyTo(System.String)">
  751. <summary>
  752. Copies an existing file to a new file.
  753. </summary>
  754. <param name="destinationFileName">The destination file.</param>
  755. </member>
  756. <member name="M:DiscUtils.DiscFileInfo.CopyTo(System.String,System.Boolean)">
  757. <summary>
  758. Copies an existing file to a new file, allowing overwriting of an existing file.
  759. </summary>
  760. <param name="destinationFileName">The destination file.</param>
  761. <param name="overwrite">Whether to permit over-writing of an existing file.</param>
  762. </member>
  763. <member name="M:DiscUtils.DiscFileInfo.Create">
  764. <summary>
  765. Creates a new file for reading and writing.
  766. </summary>
  767. <returns>The newly created stream.</returns>
  768. </member>
  769. <member name="M:DiscUtils.DiscFileInfo.CreateText">
  770. <summary>
  771. Creates a new <see cref="T:System.IO.StreamWriter"/> that writes a new text file.
  772. </summary>
  773. <returns>A new stream writer that can write to the file contents.</returns>
  774. </member>
  775. <member name="M:DiscUtils.DiscFileInfo.MoveTo(System.String)">
  776. <summary>
  777. Moves a file to a new location.
  778. </summary>
  779. <param name="destinationFileName">The new name of the file.</param>
  780. </member>
  781. <member name="M:DiscUtils.DiscFileInfo.Open(System.IO.FileMode)">
  782. <summary>
  783. Opens the current file.
  784. </summary>
  785. <param name="mode">The file mode for the created stream.</param>
  786. <returns>The newly created stream.</returns>
  787. <remarks>Read-only file systems only support <c>FileMode.Open</c>.</remarks>
  788. </member>
  789. <member name="M:DiscUtils.DiscFileInfo.Open(System.IO.FileMode,System.IO.FileAccess)">
  790. <summary>
  791. Opens the current file.
  792. </summary>
  793. <param name="mode">The file mode for the created stream.</param>
  794. <param name="access">The access permissions for the created stream.</param>
  795. <returns>The newly created stream.</returns>
  796. <remarks>Read-only file systems only support <c>FileMode.Open</c> and <c>FileAccess.Read</c>.</remarks>
  797. </member>
  798. <member name="M:DiscUtils.DiscFileInfo.OpenRead">
  799. <summary>
  800. Opens an existing file for read-only access.
  801. </summary>
  802. <returns>The newly created stream.</returns>
  803. </member>
  804. <member name="M:DiscUtils.DiscFileInfo.OpenText">
  805. <summary>
  806. Opens an existing file for reading as UTF-8 text.
  807. </summary>
  808. <returns>The newly created reader.</returns>
  809. </member>
  810. <member name="M:DiscUtils.DiscFileInfo.OpenWrite">
  811. <summary>
  812. Opens a file for writing.
  813. </summary>
  814. <returns>The newly created stream.</returns>
  815. </member>
  816. <member name="T:DiscUtils.DiscFileSystem">
  817. <summary>
  818. Provides the base class for all file systems.
  819. </summary>
  820. </member>
  821. <member name="M:DiscUtils.DiscFileSystem.#ctor">
  822. <summary>
  823. Initializes a new instance of the DiscFileSystem class.
  824. </summary>
  825. </member>
  826. <member name="M:DiscUtils.DiscFileSystem.#ctor(DiscUtils.DiscFileSystemOptions)">
  827. <summary>
  828. Initializes a new instance of the DiscFileSystem class.
  829. </summary>
  830. <param name="defaultOptions">The options instance to use for this file system instance.</param>
  831. </member>
  832. <member name="M:DiscUtils.DiscFileSystem.Finalize">
  833. <summary>
  834. Finalizes an instance of the DiscFileSystem class.
  835. </summary>
  836. </member>
  837. <member name="P:DiscUtils.DiscFileSystem.Options">
  838. <summary>
  839. Gets the file system options, which can be modified.
  840. </summary>
  841. </member>
  842. <member name="P:DiscUtils.DiscFileSystem.FriendlyName">
  843. <summary>
  844. Gets a friendly description of the file system type.
  845. </summary>
  846. </member>
  847. <member name="P:DiscUtils.DiscFileSystem.CanWrite">
  848. <summary>
  849. Gets a value indicating whether the file system is read-only or read-write.
  850. </summary>
  851. <returns>true if the file system is read-write.</returns>
  852. </member>
  853. <member name="P:DiscUtils.DiscFileSystem.Root">
  854. <summary>
  855. Gets the root directory of the file system.
  856. </summary>
  857. </member>
  858. <member name="P:DiscUtils.DiscFileSystem.VolumeLabel">
  859. <summary>
  860. Gets the volume label.
  861. </summary>
  862. </member>
  863. <member name="P:DiscUtils.DiscFileSystem.IsThreadSafe">
  864. <summary>
  865. Gets a value indicating whether the file system is thread-safe.
  866. </summary>
  867. </member>
  868. <member name="M:DiscUtils.DiscFileSystem.CopyFile(System.String,System.String)">
  869. <summary>
  870. Copies an existing file to a new file.
  871. </summary>
  872. <param name="sourceFile">The source file.</param>
  873. <param name="destinationFile">The destination file.</param>
  874. </member>
  875. <member name="M:DiscUtils.DiscFileSystem.CopyFile(System.String,System.String,System.Boolean)">
  876. <summary>
  877. Copies an existing file to a new file, allowing overwriting of an existing file.
  878. </summary>
  879. <param name="sourceFile">The source file.</param>
  880. <param name="destinationFile">The destination file.</param>
  881. <param name="overwrite">Whether to permit over-writing of an existing file.</param>
  882. </member>
  883. <member name="M:DiscUtils.DiscFileSystem.CreateDirectory(System.String)">
  884. <summary>
  885. Creates a directory.
  886. </summary>
  887. <param name="path">The path of the new directory.</param>
  888. </member>
  889. <member name="M:DiscUtils.DiscFileSystem.DeleteDirectory(System.String)">
  890. <summary>
  891. Deletes a directory.
  892. </summary>
  893. <param name="path">The path of the directory to delete.</param>
  894. </member>
  895. <member name="M:DiscUtils.DiscFileSystem.DeleteDirectory(System.String,System.Boolean)">
  896. <summary>
  897. Deletes a directory, optionally with all descendants.
  898. </summary>
  899. <param name="path">The path of the directory to delete.</param>
  900. <param name="recursive">Determines if the all descendants should be deleted.</param>
  901. </member>
  902. <member name="M:DiscUtils.DiscFileSystem.DeleteFile(System.String)">
  903. <summary>
  904. Deletes a file.
  905. </summary>
  906. <param name="path">The path of the file to delete.</param>
  907. </member>
  908. <member name="M:DiscUtils.DiscFileSystem.DirectoryExists(System.String)">
  909. <summary>
  910. Indicates if a directory exists.
  911. </summary>
  912. <param name="path">The path to test.</param>
  913. <returns>true if the directory exists.</returns>
  914. </member>
  915. <member name="M:DiscUtils.DiscFileSystem.FileExists(System.String)">
  916. <summary>
  917. Indicates if a file exists.
  918. </summary>
  919. <param name="path">The path to test.</param>
  920. <returns>true if the file exists.</returns>
  921. </member>
  922. <member name="M:DiscUtils.DiscFileSystem.Exists(System.String)">
  923. <summary>
  924. Indicates if a file or directory exists.
  925. </summary>
  926. <param name="path">The path to test.</param>
  927. <returns>true if the file or directory exists.</returns>
  928. </member>
  929. <member name="M:DiscUtils.DiscFileSystem.GetDirectories(System.String)">
  930. <summary>
  931. Gets the names of subdirectories in a specified directory.
  932. </summary>
  933. <param name="path">The path to search.</param>
  934. <returns>Array of directories.</returns>
  935. </member>
  936. <member name="M:DiscUtils.DiscFileSystem.GetDirectories(System.String,System.String)">
  937. <summary>
  938. Gets the names of subdirectories in a specified directory matching a specified
  939. search pattern.
  940. </summary>
  941. <param name="path">The path to search.</param>
  942. <param name="searchPattern">The search string to match against.</param>
  943. <returns>Array of directories matching the search pattern.</returns>
  944. </member>
  945. <member name="M:DiscUtils.DiscFileSystem.GetDirectories(System.String,System.String,System.IO.SearchOption)">
  946. <summary>
  947. Gets the names of subdirectories in a specified directory matching a specified
  948. search pattern, using a value to determine whether to search subdirectories.
  949. </summary>
  950. <param name="path">The path to search.</param>
  951. <param name="searchPattern">The search string to match against.</param>
  952. <param name="searchOption">Indicates whether to search subdirectories.</param>
  953. <returns>Array of directories matching the search pattern.</returns>
  954. </member>
  955. <member name="M:DiscUtils.DiscFileSystem.GetFiles(System.String)">
  956. <summary>
  957. Gets the names of files in a specified directory.
  958. </summary>
  959. <param name="path">The path to search.</param>
  960. <returns>Array of files.</returns>
  961. </member>
  962. <member name="M:DiscUtils.DiscFileSystem.GetFiles(System.String,System.String)">
  963. <summary>
  964. Gets the names of files in a specified directory.
  965. </summary>
  966. <param name="path">The path to search.</param>
  967. <param name="searchPattern">The search string to match against.</param>
  968. <returns>Array of files matching the search pattern.</returns>
  969. </member>
  970. <member name="M:DiscUtils.DiscFileSystem.GetFiles(System.String,System.String,System.IO.SearchOption)">
  971. <summary>
  972. Gets the names of files in a specified directory matching a specified
  973. search pattern, using a value to determine whether to search subdirectories.
  974. </summary>
  975. <param name="path">The path to search.</param>
  976. <param name="searchPattern">The search string to match against.</param>
  977. <param name="searchOption">Indicates whether to search subdirectories.</param>
  978. <returns>Array of files matching the search pattern.</returns>
  979. </member>
  980. <member name="M:DiscUtils.DiscFileSystem.GetFileSystemEntries(System.String)">
  981. <summary>
  982. Gets the names of all files and subdirectories in a specified directory.
  983. </summary>
  984. <param name="path">The path to search.</param>
  985. <returns>Array of files and subdirectories matching the search pattern.</returns>
  986. </member>
  987. <member name="M:DiscUtils.DiscFileSystem.GetFileSystemEntries(System.String,System.String)">
  988. <summary>
  989. Gets the names of files and subdirectories in a specified directory matching a specified
  990. search pattern.
  991. </summary>
  992. <param name="path">The path to search.</param>
  993. <param name="searchPattern">The search string to match against.</param>
  994. <returns>Array of files and subdirectories matching the search pattern.</returns>
  995. </member>
  996. <member name="M:DiscUtils.DiscFileSystem.MoveDirectory(System.String,System.String)">
  997. <summary>
  998. Moves a directory.
  999. </summary>
  1000. <param name="sourceDirectoryName">The directory to move.</param>
  1001. <param name="destinationDirectoryName">The target directory name.</param>
  1002. </member>
  1003. <member name="M:DiscUtils.DiscFileSystem.MoveFile(System.String,System.String)">
  1004. <summary>
  1005. Moves a file.
  1006. </summary>
  1007. <param name="sourceName">The file to move.</param>
  1008. <param name="destinationName">The target file name.</param>
  1009. </member>
  1010. <member name="M:DiscUtils.DiscFileSystem.MoveFile(System.String,System.String,System.Boolean)">
  1011. <summary>
  1012. Moves a file, allowing an existing file to be overwritten.
  1013. </summary>
  1014. <param name="sourceName">The file to move.</param>
  1015. <param name="destinationName">The target file name.</param>
  1016. <param name="overwrite">Whether to permit a destination file to be overwritten.</param>
  1017. </member>
  1018. <member name="M:DiscUtils.DiscFileSystem.OpenFile(System.String,System.IO.FileMode)">
  1019. <summary>
  1020. Opens the specified file.
  1021. </summary>
  1022. <param name="path">The full path of the file to open.</param>
  1023. <param name="mode">The file mode for the created stream.</param>
  1024. <returns>The new stream.</returns>
  1025. </member>
  1026. <member name="M:DiscUtils.DiscFileSystem.OpenFile(System.String,System.IO.FileMode,System.IO.FileAccess)">
  1027. <summary>
  1028. Opens the specified file.
  1029. </summary>
  1030. <param name="path">The full path of the file to open.</param>
  1031. <param name="mode">The file mode for the created stream.</param>
  1032. <param name="access">The access permissions for the created stream.</param>
  1033. <returns>The new stream.</returns>
  1034. </member>
  1035. <member name="M:DiscUtils.DiscFileSystem.GetAttributes(System.String)">
  1036. <summary>
  1037. Gets the attributes of a file or directory.
  1038. </summary>
  1039. <param name="path">The file or directory to inspect.</param>
  1040. <returns>The attributes of the file or directory.</returns>
  1041. </member>
  1042. <member name="M:DiscUtils.DiscFileSystem.SetAttributes(System.String,System.IO.FileAttributes)">
  1043. <summary>
  1044. Sets the attributes of a file or directory.
  1045. </summary>
  1046. <param name="path">The file or directory to change.</param>
  1047. <param name="newValue">The new attributes of the file or directory.</param>
  1048. </member>
  1049. <member name="M:DiscUtils.DiscFileSystem.GetCreationTime(System.String)">
  1050. <summary>
  1051. Gets the creation time (in local time) of a file or directory.
  1052. </summary>
  1053. <param name="path">The path of the file or directory.</param>
  1054. <returns>The creation time.</returns>
  1055. </member>
  1056. <member name="M:DiscUtils.DiscFileSystem.SetCreationTime(System.String,System.DateTime)">
  1057. <summary>
  1058. Sets the creation time (in local time) of a file or directory.
  1059. </summary>
  1060. <param name="path">The path of the file or directory.</param>
  1061. <param name="newTime">The new time to set.</param>
  1062. </member>
  1063. <member name="M:DiscUtils.DiscFileSystem.GetCreationTimeUtc(System.String)">
  1064. <summary>
  1065. Gets the creation time (in UTC) of a file or directory.
  1066. </summary>
  1067. <param name="path">The path of the file or directory.</param>
  1068. <returns>The creation time.</returns>
  1069. </member>
  1070. <member name="M:DiscUtils.DiscFileSystem.SetCreationTimeUtc(System.String,System.DateTime)">
  1071. <summary>
  1072. Sets the creation time (in UTC) of a file or directory.
  1073. </summary>
  1074. <param name="path">The path of the file or directory.</param>
  1075. <param name="newTime">The new time to set.</param>
  1076. </member>
  1077. <member name="M:DiscUtils.DiscFileSystem.GetLastAccessTime(System.String)">
  1078. <summary>
  1079. Gets the last access time (in local time) of a file or directory.
  1080. </summary>
  1081. <param name="path">The path of the file or directory.</param>
  1082. <returns>The last access time.</returns>
  1083. </member>
  1084. <member name="M:DiscUtils.DiscFileSystem.SetLastAccessTime(System.String,System.DateTime)">
  1085. <summary>
  1086. Sets the last access time (in local time) of a file or directory.
  1087. </summary>
  1088. <param name="path">The path of the file or directory.</param>
  1089. <param name="newTime">The new time to set.</param>
  1090. </member>
  1091. <member name="M:DiscUtils.DiscFileSystem.GetLastAccessTimeUtc(System.String)">
  1092. <summary>
  1093. Gets the last access time (in UTC) of a file or directory.
  1094. </summary>
  1095. <param name="path">The path of the file or directory.</param>
  1096. <returns>The last access time.</returns>
  1097. </member>
  1098. <member name="M:DiscUtils.DiscFileSystem.SetLastAccessTimeUtc(System.String,System.DateTime)">
  1099. <summary>
  1100. Sets the last access time (in UTC) of a file or directory.
  1101. </summary>
  1102. <param name="path">The path of the file or directory.</param>
  1103. <param name="newTime">The new time to set.</param>
  1104. </member>
  1105. <member name="M:DiscUtils.DiscFileSystem.GetLastWriteTime(System.String)">
  1106. <summary>
  1107. Gets the last modification time (in local time) of a file or directory.
  1108. </summary>
  1109. <param name="path">The path of the file or directory.</param>
  1110. <returns>The last write time.</returns>
  1111. </member>
  1112. <member name="M:DiscUtils.DiscFileSystem.SetLastWriteTime(System.String,System.DateTime)">
  1113. <summary>
  1114. Sets the last modification time (in local time) of a file or directory.
  1115. </summary>
  1116. <param name="path">The path of the file or directory.</param>
  1117. <param name="newTime">The new time to set.</param>
  1118. </member>
  1119. <member name="M:DiscUtils.DiscFileSystem.GetLastWriteTimeUtc(System.String)">
  1120. <summary>
  1121. Gets the last modification time (in UTC) of a file or directory.
  1122. </summary>
  1123. <param name="path">The path of the file or directory.</param>
  1124. <returns>The last write time.</returns>
  1125. </member>
  1126. <member name="M:DiscUtils.DiscFileSystem.SetLastWriteTimeUtc(System.String,System.DateTime)">
  1127. <summary>
  1128. Sets the last modification time (in UTC) of a file or directory.
  1129. </summary>
  1130. <param name="path">The path of the file or directory.</param>
  1131. <param name="newTime">The new time to set.</param>
  1132. </member>
  1133. <member name="M:DiscUtils.DiscFileSystem.GetFileLength(System.String)">
  1134. <summary>
  1135. Gets the length of a file.
  1136. </summary>
  1137. <param name="path">The path to the file.</param>
  1138. <returns>The length in bytes.</returns>
  1139. </member>
  1140. <member name="M:DiscUtils.DiscFileSystem.GetFileInfo(System.String)">
  1141. <summary>
  1142. Gets an object representing a possible file.
  1143. </summary>
  1144. <param name="path">The file path.</param>
  1145. <returns>The representing object.</returns>
  1146. <remarks>The file does not need to exist.</remarks>
  1147. </member>
  1148. <member name="M:DiscUtils.DiscFileSystem.GetDirectoryInfo(System.String)">
  1149. <summary>
  1150. Gets an object representing a possible directory.
  1151. </summary>
  1152. <param name="path">The directory path.</param>
  1153. <returns>The representing object.</returns>
  1154. <remarks>The directory does not need to exist.</remarks>
  1155. </member>
  1156. <member name="M:DiscUtils.DiscFileSystem.GetFileSystemInfo(System.String)">
  1157. <summary>
  1158. Gets an object representing a possible file system object (file or directory).
  1159. </summary>
  1160. <param name="path">The file system path.</param>
  1161. <returns>The representing object.</returns>
  1162. <remarks>The file system object does not need to exist.</remarks>
  1163. </member>
  1164. <member name="M:DiscUtils.DiscFileSystem.ReadBootCode">
  1165. <summary>
  1166. Reads the boot code of the file system into a byte array.
  1167. </summary>
  1168. <returns>The boot code, or <c>null</c> if not available.</returns>
  1169. </member>
  1170. <member name="P:DiscUtils.DiscFileSystem.Size">
  1171. <summary>
  1172. Size of the Filesystem in bytes
  1173. </summary>
  1174. </member>
  1175. <member name="P:DiscUtils.DiscFileSystem.UsedSpace">
  1176. <summary>
  1177. Used space of the Filesystem in bytes
  1178. </summary>
  1179. </member>
  1180. <member name="P:DiscUtils.DiscFileSystem.AvailableSpace">
  1181. <summary>
  1182. Available space of the Filesystem in bytes
  1183. </summary>
  1184. </member>
  1185. <member name="M:DiscUtils.DiscFileSystem.Dispose">
  1186. <summary>
  1187. Disposes of this instance, releasing all resources.
  1188. </summary>
  1189. </member>
  1190. <member name="M:DiscUtils.DiscFileSystem.Dispose(System.Boolean)">
  1191. <summary>
  1192. Disposes of this instance.
  1193. </summary>
  1194. <param name="disposing">The value <c>true</c> if Disposing.</param>
  1195. </member>
  1196. <member name="T:DiscUtils.DiscFileSystemChecker">
  1197. <summary>
  1198. Base class for objects that validate file system integrity.
  1199. </summary>
  1200. <remarks>Instances of this class do not offer the ability to fix/correct
  1201. file system issues, just to perform a limited number of checks on
  1202. integrity of the file system.</remarks>
  1203. </member>
  1204. <member name="M:DiscUtils.DiscFileSystemChecker.Check(System.IO.TextWriter,DiscUtils.ReportLevels)">
  1205. <summary>
  1206. Checks the integrity of a file system held in a stream.
  1207. </summary>
  1208. <param name="reportOutput">A report on issues found.</param>
  1209. <param name="levels">The amount of detail to report.</param>
  1210. <returns><c>true</c> if the file system appears valid, else <c>false</c>.</returns>
  1211. </member>
  1212. <member name="T:DiscUtils.DiscFileSystemInfo">
  1213. <summary>
  1214. Provides the base class for both <see cref="T:DiscUtils.DiscFileInfo"/> and <see cref="T:DiscUtils.DiscDirectoryInfo"/> objects.
  1215. </summary>
  1216. </member>
  1217. <member name="P:DiscUtils.DiscFileSystemInfo.Attributes">
  1218. <summary>
  1219. Gets or sets the <see cref="T:System.IO.FileAttributes"/> of the current <see cref="T:DiscUtils.DiscFileSystemInfo"/> object.
  1220. </summary>
  1221. </member>
  1222. <member name="P:DiscUtils.DiscFileSystemInfo.CreationTime">
  1223. <summary>
  1224. Gets or sets the creation time (in local time) of the current <see cref="T:DiscUtils.DiscFileSystemInfo"/> object.
  1225. </summary>
  1226. </member>
  1227. <member name="P:DiscUtils.DiscFileSystemInfo.CreationTimeUtc">
  1228. <summary>
  1229. Gets or sets the creation time (in UTC) of the current <see cref="T:DiscUtils.DiscFileSystemInfo"/> object.
  1230. </summary>
  1231. </member>
  1232. <member name="P:DiscUtils.DiscFileSystemInfo.Exists">
  1233. <summary>
  1234. Gets a value indicating whether the file system object exists.
  1235. </summary>
  1236. </member>
  1237. <member name="P:DiscUtils.DiscFileSystemInfo.Extension">
  1238. <summary>
  1239. Gets the extension part of the file or directory name.
  1240. </summary>
  1241. </member>
  1242. <member name="P:DiscUtils.DiscFileSystemInfo.FileSystem">
  1243. <summary>
  1244. Gets the file system the referenced file or directory exists on.
  1245. </summary>
  1246. </member>
  1247. <member name="P:DiscUtils.DiscFileSystemInfo.FullName">
  1248. <summary>
  1249. Gets the full path of the file or directory.
  1250. </summary>
  1251. </member>
  1252. <member name="P:DiscUtils.DiscFileSystemInfo.LastAccessTime">
  1253. <summary>
  1254. Gets or sets the last time (in local time) the file or directory was accessed.
  1255. </summary>
  1256. <remarks>Read-only file systems will never update this value, it will remain at a fixed value.</remarks>
  1257. </member>
  1258. <member name="P:DiscUtils.DiscFileSystemInfo.LastAccessTimeUtc">
  1259. <summary>
  1260. Gets or sets the last time (in UTC) the file or directory was accessed.
  1261. </summary>
  1262. <remarks>Read-only file systems will never update this value, it will remain at a fixed value.</remarks>
  1263. </member>
  1264. <member name="P:DiscUtils.DiscFileSystemInfo.LastWriteTime">
  1265. <summary>
  1266. Gets or sets the last time (in local time) the file or directory was written to.
  1267. </summary>
  1268. </member>
  1269. <member name="P:DiscUtils.DiscFileSystemInfo.LastWriteTimeUtc">
  1270. <summary>
  1271. Gets or sets the last time (in UTC) the file or directory was written to.
  1272. </summary>
  1273. </member>
  1274. <member name="P:DiscUtils.DiscFileSystemInfo.Name">
  1275. <summary>
  1276. Gets the name of the file or directory.
  1277. </summary>
  1278. </member>
  1279. <member name="P:DiscUtils.DiscFileSystemInfo.Parent">
  1280. <summary>
  1281. Gets the <see cref="T:DiscUtils.DiscDirectoryInfo"/> of the directory containing the current <see cref="T:DiscUtils.DiscFileSystemInfo"/> object.
  1282. </summary>
  1283. </member>
  1284. <member name="P:DiscUtils.DiscFileSystemInfo.Path">
  1285. <summary>
  1286. Gets the path to the referenced file.
  1287. </summary>
  1288. </member>
  1289. <member name="M:DiscUtils.DiscFileSystemInfo.Delete">
  1290. <summary>
  1291. Deletes a file or directory.
  1292. </summary>
  1293. </member>
  1294. <member name="M:DiscUtils.DiscFileSystemInfo.Equals(System.Object)">
  1295. <summary>
  1296. Indicates if <paramref name="obj"/> is equivalent to this object.
  1297. </summary>
  1298. <param name="obj">The object to compare.</param>
  1299. <returns><c>true</c> if <paramref name="obj"/> is equivalent, else <c>false</c>.</returns>
  1300. </member>
  1301. <member name="M:DiscUtils.DiscFileSystemInfo.GetHashCode">
  1302. <summary>
  1303. Gets the hash code for this object.
  1304. </summary>
  1305. <returns>The hash code.</returns>
  1306. </member>
  1307. <member name="T:DiscUtils.DiscFileSystemOptions">
  1308. <summary>
  1309. Common file system options.
  1310. </summary>
  1311. <remarks>Not all options are honoured by all file systems.</remarks>
  1312. </member>
  1313. <member name="P:DiscUtils.DiscFileSystemOptions.RandomNumberGenerator">
  1314. <summary>
  1315. Gets or sets the random number generator the file system should use.
  1316. </summary>
  1317. <remarks>This option is normally <c>null</c>, which is fine for most purposes.
  1318. Use this option when you need to finely control the filesystem for
  1319. reproducibility of behaviour (for example in a test harness).</remarks>
  1320. </member>
  1321. <member name="T:DiscUtils.DiskImageBuilder">
  1322. <summary>
  1323. Base class for all disk image builders.
  1324. </summary>
  1325. </member>
  1326. <member name="P:DiscUtils.DiskImageBuilder.BiosGeometry">
  1327. <summary>
  1328. Gets or sets the geometry of this disk, as reported by the BIOS, will be implied from the content stream if not set.
  1329. </summary>
  1330. </member>
  1331. <member name="P:DiscUtils.DiskImageBuilder.Content">
  1332. <summary>
  1333. Gets or sets the content for this disk, implying the size of the disk.
  1334. </summary>
  1335. </member>
  1336. <member name="P:DiscUtils.DiskImageBuilder.GenericAdapterType">
  1337. <summary>
  1338. Gets or sets the adapter type for created virtual disk, for file formats that encode this information.
  1339. </summary>
  1340. </member>
  1341. <member name="P:DiscUtils.DiskImageBuilder.Geometry">
  1342. <summary>
  1343. Gets or sets the geometry of this disk, will be implied from the content stream if not set.
  1344. </summary>
  1345. </member>
  1346. <member name="P:DiscUtils.DiskImageBuilder.PreservesBiosGeometry">
  1347. <summary>
  1348. Gets a value indicating whether this file format preserves BIOS geometry information.
  1349. </summary>
  1350. </member>
  1351. <member name="M:DiscUtils.DiskImageBuilder.GetBuilder(System.String,System.String)">
  1352. <summary>
  1353. Gets an instance that constructs the specified type (and variant) of virtual disk image.
  1354. </summary>
  1355. <param name="type">The type of image to build (VHD, VMDK, etc).</param>
  1356. <param name="variant">The variant type (differencing/dynamic, fixed/static, etc).</param>
  1357. <returns>The builder instance.</returns>
  1358. </member>
  1359. <member name="M:DiscUtils.DiskImageBuilder.Build(System.String)">
  1360. <summary>
  1361. Initiates the construction of the disk image.
  1362. </summary>
  1363. <param name="baseName">The base name for the disk images.</param>
  1364. <returns>A set of one or more logical files that constitute the
  1365. disk image. The first file is the 'primary' file that is normally attached to VMs.</returns>
  1366. <remarks>The supplied <c>baseName</c> is the start of the file name, with no file
  1367. extension. The set of file specifications will indicate the actual name corresponding
  1368. to each logical file that comprises the disk image. For example, given a base name
  1369. 'foo', the files 'foo.vmdk' and 'foo-flat.vmdk' could be returned.</remarks>
  1370. </member>
  1371. <member name="T:DiscUtils.DiskImageFileSpecification">
  1372. <summary>
  1373. Describes a particular file that is a constituent part of a virtual disk.
  1374. </summary>
  1375. </member>
  1376. <member name="P:DiscUtils.DiskImageFileSpecification.Name">
  1377. <summary>
  1378. Gets name of the file.
  1379. </summary>
  1380. </member>
  1381. <member name="M:DiscUtils.DiskImageFileSpecification.OpenStream">
  1382. <summary>
  1383. Gets the object that provides access to the file's content.
  1384. </summary>
  1385. <returns>A stream object that contains the file's content.</returns>
  1386. </member>
  1387. <member name="T:DiscUtils.FileSystemInfo">
  1388. <summary>
  1389. Base class holding information about a file system.
  1390. </summary>
  1391. <remarks>
  1392. File system implementations derive from this class, to provide information about the file system.
  1393. </remarks>
  1394. </member>
  1395. <member name="P:DiscUtils.FileSystemInfo.Description">
  1396. <summary>
  1397. Gets a one-line description of the file system.
  1398. </summary>
  1399. </member>
  1400. <member name="P:DiscUtils.FileSystemInfo.Name">
  1401. <summary>
  1402. Gets the name of the file system.
  1403. </summary>
  1404. </member>
  1405. <member name="M:DiscUtils.FileSystemInfo.Open(DiscUtils.VolumeInfo)">
  1406. <summary>
  1407. Opens a volume using the file system.
  1408. </summary>
  1409. <param name="volume">The volume to access.</param>
  1410. <returns>A file system instance.</returns>
  1411. </member>
  1412. <member name="M:DiscUtils.FileSystemInfo.Open(System.IO.Stream)">
  1413. <summary>
  1414. Opens a stream using the file system.
  1415. </summary>
  1416. <param name="stream">The stream to access.</param>
  1417. <returns>A file system instance.</returns>
  1418. </member>
  1419. <member name="M:DiscUtils.FileSystemInfo.Open(DiscUtils.VolumeInfo,DiscUtils.FileSystemParameters)">
  1420. <summary>
  1421. Opens a volume using the file system.
  1422. </summary>
  1423. <param name="volume">The volume to access.</param>
  1424. <param name="parameters">Parameters for the file system.</param>
  1425. <returns>A file system instance.</returns>
  1426. </member>
  1427. <member name="M:DiscUtils.FileSystemInfo.Open(System.IO.Stream,DiscUtils.FileSystemParameters)">
  1428. <summary>
  1429. Opens a stream using the file system.
  1430. </summary>
  1431. <param name="stream">The stream to access.</param>
  1432. <param name="parameters">Parameters for the file system.</param>
  1433. <returns>A file system instance.</returns>
  1434. </member>
  1435. <member name="M:DiscUtils.FileSystemInfo.ToString">
  1436. <summary>
  1437. Gets the name of the file system.
  1438. </summary>
  1439. <returns>The file system name.</returns>
  1440. </member>
  1441. <member name="T:DiscUtils.FileSystemManager">
  1442. <summary>
  1443. FileSystemManager determines which file systems are present on a volume.
  1444. </summary>
  1445. <remarks>
  1446. The static detection methods detect default file systems. To plug in additional
  1447. file systems, create an instance of this class and call RegisterFileSystems.
  1448. </remarks>
  1449. </member>
  1450. <member name="M:DiscUtils.FileSystemManager.#cctor">
  1451. <summary>
  1452. Initializes a new instance of the FileSystemManager class.
  1453. </summary>
  1454. </member>
  1455. <member name="M:DiscUtils.FileSystemManager.RegisterFileSystems(DiscUtils.Vfs.VfsFileSystemFactory)">
  1456. <summary>
  1457. Registers new file systems with an instance of this class.
  1458. </summary>
  1459. <param name="factory">The detector for the new file systems.</param>
  1460. </member>
  1461. <member name="M:DiscUtils.FileSystemManager.RegisterFileSystems(System.Reflection.Assembly)">
  1462. <summary>
  1463. Registers new file systems detected in an assembly.
  1464. </summary>
  1465. <param name="assembly">The assembly to inspect.</param>
  1466. <remarks>
  1467. To be detected, the <c>VfsFileSystemFactory</c> instances must be marked with the
  1468. <c>VfsFileSystemFactoryAttribute</c>> attribute.
  1469. </remarks>
  1470. </member>
  1471. <member name="M:DiscUtils.FileSystemManager.DetectFileSystems(DiscUtils.VolumeInfo)">
  1472. <summary>
  1473. Detect which file systems are present on a volume.
  1474. </summary>
  1475. <param name="volume">The volume to inspect.</param>
  1476. <returns>The list of file systems detected.</returns>
  1477. </member>
  1478. <member name="M:DiscUtils.FileSystemManager.DetectFileSystems(System.IO.Stream)">
  1479. <summary>
  1480. Detect which file systems are present in a stream.
  1481. </summary>
  1482. <param name="stream">The stream to inspect.</param>
  1483. <returns>The list of file systems detected.</returns>
  1484. </member>
  1485. <member name="T:DiscUtils.FileSystemParameters">
  1486. <summary>
  1487. Class with generic file system parameters.
  1488. </summary>
  1489. <remarks>Note - not all parameters apply to all types of file system.</remarks>
  1490. </member>
  1491. <member name="P:DiscUtils.FileSystemParameters.FileNameEncoding">
  1492. <summary>
  1493. Gets or sets the character encoding for file names, or <c>null</c> for default.
  1494. </summary>
  1495. <remarks>Some file systems, such as FAT, don't specify a particular character set for
  1496. file names. This parameter determines the character set that will be used for such
  1497. file systems.</remarks>
  1498. </member>
  1499. <member name="P:DiscUtils.FileSystemParameters.TimeConverter">
  1500. <summary>
  1501. Gets or sets the algorithm to convert file system time to UTC.
  1502. </summary>
  1503. <remarks>Some file system, such as FAT, don't have a defined way to convert from file system
  1504. time (local time where the file system is authored) to UTC time. This parameter determines
  1505. the algorithm to use.</remarks>
  1506. </member>
  1507. <member name="T:DiscUtils.FloppyDiskType">
  1508. <summary>
  1509. The supported Floppy Disk logical formats.
  1510. </summary>
  1511. </member>
  1512. <member name="F:DiscUtils.FloppyDiskType.DoubleDensity">
  1513. <summary>
  1514. 720KiB capacity disk.
  1515. </summary>
  1516. </member>
  1517. <member name="F:DiscUtils.FloppyDiskType.HighDensity">
  1518. <summary>
  1519. 1440KiB capacity disk.
  1520. </summary>
  1521. </member>
  1522. <member name="F:DiscUtils.FloppyDiskType.Extended">
  1523. <summary>
  1524. 2880KiB capacity disk.
  1525. </summary>
  1526. </member>
  1527. <member name="T:DiscUtils.GenericDiskAdapterType">
  1528. <summary>
  1529. Well known hard disk adaptor types.
  1530. </summary>
  1531. </member>
  1532. <member name="F:DiscUtils.GenericDiskAdapterType.Ide">
  1533. <summary>
  1534. IDE adaptor.
  1535. </summary>
  1536. </member>
  1537. <member name="F:DiscUtils.GenericDiskAdapterType.Scsi">
  1538. <summary>
  1539. SCSI adaptor.
  1540. </summary>
  1541. </member>
  1542. <member name="T:DiscUtils.Geometry">
  1543. <summary>
  1544. Class whose instances represent disk geometries.
  1545. </summary>
  1546. <remarks>Instances of this class are immutable.</remarks>
  1547. </member>
  1548. <member name="M:DiscUtils.Geometry.#ctor(System.Int32,System.Int32,System.Int32)">
  1549. <summary>
  1550. Initializes a new instance of the Geometry class. The default 512 bytes per sector is assumed.
  1551. </summary>
  1552. <param name="cylinders">The number of cylinders of the disk.</param>
  1553. <param name="headsPerCylinder">The number of heads (aka platters) of the disk.</param>
  1554. <param name="sectorsPerTrack">The number of sectors per track/cylinder of the disk.</param>
  1555. </member>
  1556. <member name="M:DiscUtils.Geometry.#ctor(System.Int32,System.Int32,System.Int32,System.Int32)">
  1557. <summary>
  1558. Initializes a new instance of the Geometry class.
  1559. </summary>
  1560. <param name="cylinders">The number of cylinders of the disk.</param>
  1561. <param name="headsPerCylinder">The number of heads (aka platters) of the disk.</param>
  1562. <param name="sectorsPerTrack">The number of sectors per track/cylinder of the disk.</param>
  1563. <param name="bytesPerSector">The number of bytes per sector of the disk.</param>
  1564. </member>
  1565. <member name="M:DiscUtils.Geometry.#ctor(System.Int64,System.Int32,System.Int32,System.Int32)">
  1566. <summary>
  1567. Initializes a new instance of the Geometry class.
  1568. </summary>
  1569. <param name="capacity">The total capacity of the disk.</param>
  1570. <param name="headsPerCylinder">The number of heads (aka platters) of the disk.</param>
  1571. <param name="sectorsPerTrack">The number of sectors per track/cylinder of the disk.</param>
  1572. <param name="bytesPerSector">The number of bytes per sector of the disk.</param>
  1573. </member>
  1574. <member name="P:DiscUtils.Geometry.BytesPerSector">
  1575. <summary>
  1576. Gets the number of bytes in each sector.
  1577. </summary>
  1578. </member>
  1579. <member name="P:DiscUtils.Geometry.Capacity">
  1580. <summary>
  1581. Gets the total capacity of the disk (in bytes).
  1582. </summary>
  1583. </member>
  1584. <member name="P:DiscUtils.Geometry.Cylinders">
  1585. <summary>
  1586. Gets the number of cylinders.
  1587. </summary>
  1588. </member>
  1589. <member name="P:DiscUtils.Geometry.HeadsPerCylinder">
  1590. <summary>
  1591. Gets the number of heads (aka platters).
  1592. </summary>
  1593. </member>
  1594. <member name="P:DiscUtils.Geometry.IsBiosAndIdeSafe">
  1595. <summary>
  1596. Gets a value indicating whether the Geometry is representable both by the BIOS and by IDE.
  1597. </summary>
  1598. </member>
  1599. <member name="P:DiscUtils.Geometry.IsBiosSafe">
  1600. <summary>
  1601. Gets a value indicating whether the Geometry is consistent with the values a BIOS can support.
  1602. </summary>
  1603. </member>
  1604. <member name="P:DiscUtils.Geometry.IsIdeSafe">
  1605. <summary>
  1606. Gets a value indicating whether the Geometry is consistent with the values IDE can represent.
  1607. </summary>
  1608. </member>
  1609. <member name="P:DiscUtils.Geometry.LastSector">
  1610. <summary>
  1611. Gets the address of the last sector on the disk.
  1612. </summary>
  1613. </member>
  1614. <member name="P:DiscUtils.Geometry.Null">
  1615. <summary>
  1616. Gets a null geometry, which has 512-byte sectors but zero sectors, tracks or cylinders.
  1617. </summary>
  1618. </member>
  1619. <member name="P:DiscUtils.Geometry.SectorsPerTrack">
  1620. <summary>
  1621. Gets the number of sectors per track.
  1622. </summary>
  1623. </member>
  1624. <member name="P:DiscUtils.Geometry.TotalSectors">
  1625. <summary>
  1626. Gets the total size of the disk (in sectors).
  1627. </summary>
  1628. </member>
  1629. <member name="P:DiscUtils.Geometry.TotalSectorsLong">
  1630. <summary>
  1631. Gets the total size of the disk (in sectors).
  1632. </summary>
  1633. </member>
  1634. <member name="M:DiscUtils.Geometry.LargeBiosGeometry(DiscUtils.Geometry)">
  1635. <summary>
  1636. Gets the 'Large' BIOS geometry for a disk, given it's physical geometry.
  1637. </summary>
  1638. <param name="ideGeometry">The physical (aka IDE) geometry of the disk.</param>
  1639. <returns>The geometry a BIOS using the 'Large' method for calculating disk geometry will indicate for the disk.</returns>
  1640. </member>
  1641. <member name="M:DiscUtils.Geometry.LbaAssistedBiosGeometry(System.Int64)">
  1642. <summary>
  1643. Gets the 'LBA Assisted' BIOS geometry for a disk, given it's capacity.
  1644. </summary>
  1645. <param name="capacity">The capacity of the disk.</param>
  1646. <returns>The geometry a BIOS using the 'LBA Assisted' method for calculating disk geometry will indicate for the disk.</returns>
  1647. </member>
  1648. <member name="M:DiscUtils.Geometry.MakeBiosSafe(DiscUtils.Geometry,System.Int64)">
  1649. <summary>
  1650. Converts a geometry into one that is BIOS-safe, if not already.
  1651. </summary>
  1652. <param name="geometry">The geometry to make BIOS-safe.</param>
  1653. <param name="capacity">The capacity of the disk.</param>
  1654. <returns>The new geometry.</returns>
  1655. <remarks>This method returns the LBA-Assisted geometry if the given geometry isn't BIOS-safe.</remarks>
  1656. </member>
  1657. <member name="M:DiscUtils.Geometry.FromCapacity(System.Int64)">
  1658. <summary>
  1659. Calculates a sensible disk geometry for a disk capacity using the VHD algorithm (errs under).
  1660. </summary>
  1661. <param name="capacity">The desired capacity of the disk.</param>
  1662. <returns>The appropriate disk geometry.</returns>
  1663. <remarks>The geometry returned tends to produce a disk with less capacity
  1664. than requested (an exact capacity is not always possible). The geometry returned is the IDE
  1665. (aka Physical) geometry of the disk, not necessarily the geometry used by the BIOS.</remarks>
  1666. </member>
  1667. <member name="M:DiscUtils.Geometry.FromCapacity(System.Int64,System.Int32)">
  1668. <summary>
  1669. Calculates a sensible disk geometry for a disk capacity using the VHD algorithm (errs under).
  1670. </summary>
  1671. <param name="capacity">The desired capacity of the disk.</param>
  1672. <param name="sectorSize">The logical sector size of the disk.</param>
  1673. <returns>The appropriate disk geometry.</returns>
  1674. <remarks>The geometry returned tends to produce a disk with less capacity
  1675. than requested (an exact capacity is not always possible). The geometry returned is the IDE
  1676. (aka Physical) geometry of the disk, not necessarily the geometry used by the BIOS.</remarks>
  1677. </member>
  1678. <member name="M:DiscUtils.Geometry.ToLogicalBlockAddress(DiscUtils.ChsAddress)">
  1679. <summary>
  1680. Converts a CHS (Cylinder,Head,Sector) address to a LBA (Logical Block Address).
  1681. </summary>
  1682. <param name="chsAddress">The CHS address to convert.</param>
  1683. <returns>The Logical Block Address (in sectors).</returns>
  1684. </member>
  1685. <member name="M:DiscUtils.Geometry.ToLogicalBlockAddress(System.Int32,System.Int32,System.Int32)">
  1686. <summary>
  1687. Converts a CHS (Cylinder,Head,Sector) address to a LBA (Logical Block Address).
  1688. </summary>
  1689. <param name="cylinder">The cylinder of the address.</param>
  1690. <param name="head">The head of the address.</param>
  1691. <param name="sector">The sector of the address.</param>
  1692. <returns>The Logical Block Address (in sectors).</returns>
  1693. </member>
  1694. <member name="M:DiscUtils.Geometry.ToChsAddress(System.Int64)">
  1695. <summary>
  1696. Converts a LBA (Logical Block Address) to a CHS (Cylinder, Head, Sector) address.
  1697. </summary>
  1698. <param name="logicalBlockAddress">The logical block address (in sectors).</param>
  1699. <returns>The address in CHS form.</returns>
  1700. </member>
  1701. <member name="M:DiscUtils.Geometry.TranslateToBios(DiscUtils.GeometryTranslation)">
  1702. <summary>
  1703. Translates an IDE (aka Physical) geometry to a BIOS (aka Logical) geometry.
  1704. </summary>
  1705. <param name="translation">The translation to perform.</param>
  1706. <returns>The translated disk geometry.</returns>
  1707. </member>
  1708. <member name="M:DiscUtils.Geometry.TranslateToBios(System.Int64,DiscUtils.GeometryTranslation)">
  1709. <summary>
  1710. Translates an IDE (aka Physical) geometry to a BIOS (aka Logical) geometry.
  1711. </summary>
  1712. <param name="capacity">The capacity of the disk, required if the geometry is an approximation on the actual disk size.</param>
  1713. <param name="translation">The translation to perform.</param>
  1714. <returns>The translated disk geometry.</returns>
  1715. </member>
  1716. <member name="M:DiscUtils.Geometry.Equals(System.Object)">
  1717. <summary>
  1718. Determines if this object is equivalent to another.
  1719. </summary>
  1720. <param name="obj">The object to test against.</param>
  1721. <returns><c>true</c> if the <paramref name="obj"/> is equivalent, else <c>false</c>.</returns>
  1722. </member>
  1723. <member name="M:DiscUtils.Geometry.GetHashCode">
  1724. <summary>
  1725. Calculates the hash code for this object.
  1726. </summary>
  1727. <returns>The hash code.</returns>
  1728. </member>
  1729. <member name="M:DiscUtils.Geometry.ToString">
  1730. <summary>
  1731. Gets a string representation of this object, in the form (C/H/S).
  1732. </summary>
  1733. <returns>The string representation.</returns>
  1734. </member>
  1735. <member name="T:DiscUtils.GeometryCalculation">
  1736. <summary>
  1737. Delegate for calculating a disk geometry from a capacity.
  1738. </summary>
  1739. <param name="capacity">The disk capacity to convert.</param>
  1740. <returns>The appropriate geometry for the disk.</returns>
  1741. </member>
  1742. <member name="T:DiscUtils.GeometryTranslation">
  1743. <summary>
  1744. Enumeration of standard BIOS disk geometry translation methods.
  1745. </summary>
  1746. </member>
  1747. <member name="F:DiscUtils.GeometryTranslation.None">
  1748. <summary>
  1749. Apply no translation.
  1750. </summary>
  1751. </member>
  1752. <member name="F:DiscUtils.GeometryTranslation.Auto">
  1753. <summary>
  1754. Automatic, based on the physical geometry select the most appropriate translation.
  1755. </summary>
  1756. </member>
  1757. <member name="F:DiscUtils.GeometryTranslation.Lba">
  1758. <summary>
  1759. LBA assisted translation, based on just the disk capacity.
  1760. </summary>
  1761. </member>
  1762. <member name="F:DiscUtils.GeometryTranslation.Large">
  1763. <summary>
  1764. Bit-shifting translation, based on the physical geometry of the disk.
  1765. </summary>
  1766. </member>
  1767. <member name="T:DiscUtils.IClusterBasedFileSystem">
  1768. <summary>
  1769. Base class for all file systems based on a cluster model.
  1770. </summary>
  1771. </member>
  1772. <member name="P:DiscUtils.IClusterBasedFileSystem.ClusterSize">
  1773. <summary>
  1774. Gets the size (in bytes) of each cluster.
  1775. </summary>
  1776. </member>
  1777. <member name="P:DiscUtils.IClusterBasedFileSystem.TotalClusters">
  1778. <summary>
  1779. Gets the total number of clusters managed by the file system.
  1780. </summary>
  1781. </member>
  1782. <member name="M:DiscUtils.IClusterBasedFileSystem.ClusterToOffset(System.Int64)">
  1783. <summary>
  1784. Converts a cluster (index) into an absolute byte position in the underlying stream.
  1785. </summary>
  1786. <param name="cluster">The cluster to convert.</param>
  1787. <returns>The corresponding absolute byte position.</returns>
  1788. </member>
  1789. <member name="M:DiscUtils.IClusterBasedFileSystem.OffsetToCluster(System.Int64)">
  1790. <summary>
  1791. Converts an absolute byte position in the underlying stream to a cluster (index).
  1792. </summary>
  1793. <param name="offset">The byte position to convert.</param>
  1794. <returns>The cluster containing the specified byte.</returns>
  1795. </member>
  1796. <member name="M:DiscUtils.IClusterBasedFileSystem.PathToClusters(System.String)">
  1797. <summary>
  1798. Converts a file name to the list of clusters occupied by the file's data.
  1799. </summary>
  1800. <param name="path">The path to inspect.</param>
  1801. <returns>The clusters.</returns>
  1802. <remarks>Note that in some file systems, small files may not have dedicated
  1803. clusters. Only dedicated clusters will be returned.</remarks>
  1804. </member>
  1805. <member name="M:DiscUtils.IClusterBasedFileSystem.PathToExtents(System.String)">
  1806. <summary>
  1807. Converts a file name to the extents containing its data.
  1808. </summary>
  1809. <param name="path">The path to inspect.</param>
  1810. <returns>The file extents, as absolute byte positions in the underlying stream.</returns>
  1811. <remarks>Use this method with caution - not all file systems will store all bytes
  1812. directly in extents. Files may be compressed, sparse or encrypted. This method
  1813. merely indicates where file data is stored, not what's stored.</remarks>
  1814. </member>
  1815. <member name="M:DiscUtils.IClusterBasedFileSystem.BuildClusterMap">
  1816. <summary>
  1817. Gets an object that can convert between clusters and files.
  1818. </summary>
  1819. <returns>The cluster map.</returns>
  1820. </member>
  1821. <member name="T:DiscUtils.IDiagnosticTraceable">
  1822. <summary>
  1823. Interface exposed by objects that can provide a structured trace of their content.
  1824. </summary>
  1825. </member>
  1826. <member name="M:DiscUtils.IDiagnosticTraceable.Dump(System.IO.TextWriter,System.String)">
  1827. <summary>
  1828. Writes a diagnostic report about the state of the object to a writer.
  1829. </summary>
  1830. <param name="writer">The writer to send the report to.</param>
  1831. <param name="linePrefix">The prefix to place at the start of each line.</param>
  1832. </member>
  1833. <member name="T:DiscUtils.IFileSystem">
  1834. <summary>
  1835. Common interface for all file systems.
  1836. </summary>
  1837. </member>
  1838. <member name="P:DiscUtils.IFileSystem.CanWrite">
  1839. <summary>
  1840. Gets a value indicating whether the file system is read-only or read-write.
  1841. </summary>
  1842. <returns>true if the file system is read-write.</returns>
  1843. </member>
  1844. <member name="P:DiscUtils.IFileSystem.IsThreadSafe">
  1845. <summary>
  1846. Gets a value indicating whether the file system is thread-safe.
  1847. </summary>
  1848. </member>
  1849. <member name="P:DiscUtils.IFileSystem.Root">
  1850. <summary>
  1851. Gets the root directory of the file system.
  1852. </summary>
  1853. </member>
  1854. <member name="M:DiscUtils.IFileSystem.CopyFile(System.String,System.String)">
  1855. <summary>
  1856. Copies an existing file to a new file.
  1857. </summary>
  1858. <param name="sourceFile">The source file.</param>
  1859. <param name="destinationFile">The destination file.</param>
  1860. </member>
  1861. <member name="M:DiscUtils.IFileSystem.CopyFile(System.String,System.String,System.Boolean)">
  1862. <summary>
  1863. Copies an existing file to a new file, allowing overwriting of an existing file.
  1864. </summary>
  1865. <param name="sourceFile">The source file.</param>
  1866. <param name="destinationFile">The destination file.</param>
  1867. <param name="overwrite">Whether to permit over-writing of an existing file.</param>
  1868. </member>
  1869. <member name="M:DiscUtils.IFileSystem.CreateDirectory(System.String)">
  1870. <summary>
  1871. Creates a directory.
  1872. </summary>
  1873. <param name="path">The path of the new directory.</param>
  1874. </member>
  1875. <member name="M:DiscUtils.IFileSystem.DeleteDirectory(System.String)">
  1876. <summary>
  1877. Deletes a directory.
  1878. </summary>
  1879. <param name="path">The path of the directory to delete.</param>
  1880. </member>
  1881. <member name="M:DiscUtils.IFileSystem.DeleteDirectory(System.String,System.Boolean)">
  1882. <summary>
  1883. Deletes a directory, optionally with all descendants.
  1884. </summary>
  1885. <param name="path">The path of the directory to delete.</param>
  1886. <param name="recursive">Determines if the all descendants should be deleted.</param>
  1887. </member>
  1888. <member name="M:DiscUtils.IFileSystem.DeleteFile(System.String)">
  1889. <summary>
  1890. Deletes a file.
  1891. </summary>
  1892. <param name="path">The path of the file to delete.</param>
  1893. </member>
  1894. <member name="M:DiscUtils.IFileSystem.DirectoryExists(System.String)">
  1895. <summary>
  1896. Indicates if a directory exists.
  1897. </summary>
  1898. <param name="path">The path to test.</param>
  1899. <returns>true if the directory exists.</returns>
  1900. </member>
  1901. <member name="M:DiscUtils.IFileSystem.FileExists(System.String)">
  1902. <summary>
  1903. Indicates if a file exists.
  1904. </summary>
  1905. <param name="path">The path to test.</param>
  1906. <returns>true if the file exists.</returns>
  1907. </member>
  1908. <member name="M:DiscUtils.IFileSystem.Exists(System.String)">
  1909. <summary>
  1910. Indicates if a file or directory exists.
  1911. </summary>
  1912. <param name="path">The path to test.</param>
  1913. <returns>true if the file or directory exists.</returns>
  1914. </member>
  1915. <member name="M:DiscUtils.IFileSystem.GetDirectories(System.String)">
  1916. <summary>
  1917. Gets the names of subdirectories in a specified directory.
  1918. </summary>
  1919. <param name="path">The path to search.</param>
  1920. <returns>Array of directories.</returns>
  1921. </member>
  1922. <member name="M:DiscUtils.IFileSystem.GetDirectories(System.String,System.String)">
  1923. <summary>
  1924. Gets the names of subdirectories in a specified directory matching a specified
  1925. search pattern.
  1926. </summary>
  1927. <param name="path">The path to search.</param>
  1928. <param name="searchPattern">The search string to match against.</param>
  1929. <returns>Array of directories matching the search pattern.</returns>
  1930. </member>
  1931. <member name="M:DiscUtils.IFileSystem.GetDirectories(System.String,System.String,System.IO.SearchOption)">
  1932. <summary>
  1933. Gets the names of subdirectories in a specified directory matching a specified
  1934. search pattern, using a value to determine whether to search subdirectories.
  1935. </summary>
  1936. <param name="path">The path to search.</param>
  1937. <param name="searchPattern">The search string to match against.</param>
  1938. <param name="searchOption">Indicates whether to search subdirectories.</param>
  1939. <returns>Array of directories matching the search pattern.</returns>
  1940. </member>
  1941. <member name="M:DiscUtils.IFileSystem.GetFiles(System.String)">
  1942. <summary>
  1943. Gets the names of files in a specified directory.
  1944. </summary>
  1945. <param name="path">The path to search.</param>
  1946. <returns>Array of files.</returns>
  1947. </member>
  1948. <member name="M:DiscUtils.IFileSystem.GetFiles(System.String,System.String)">
  1949. <summary>
  1950. Gets the names of files in a specified directory.
  1951. </summary>
  1952. <param name="path">The path to search.</param>
  1953. <param name="searchPattern">The search string to match against.</param>
  1954. <returns>Array of files matching the search pattern.</returns>
  1955. </member>
  1956. <member name="M:DiscUtils.IFileSystem.GetFiles(System.String,System.String,System.IO.SearchOption)">
  1957. <summary>
  1958. Gets the names of files in a specified directory matching a specified
  1959. search pattern, using a value to determine whether to search subdirectories.
  1960. </summary>
  1961. <param name="path">The path to search.</param>
  1962. <param name="searchPattern">The search string to match against.</param>
  1963. <param name="searchOption">Indicates whether to search subdirectories.</param>
  1964. <returns>Array of files matching the search pattern.</returns>
  1965. </member>
  1966. <member name="M:DiscUtils.IFileSystem.GetFileSystemEntries(System.String)">
  1967. <summary>
  1968. Gets the names of all files and subdirectories in a specified directory.
  1969. </summary>
  1970. <param name="path">The path to search.</param>
  1971. <returns>Array of files and subdirectories matching the search pattern.</returns>
  1972. </member>
  1973. <member name="M:DiscUtils.IFileSystem.GetFileSystemEntries(System.String,System.String)">
  1974. <summary>
  1975. Gets the names of files and subdirectories in a specified directory matching a specified
  1976. search pattern.
  1977. </summary>
  1978. <param name="path">The path to search.</param>
  1979. <param name="searchPattern">The search string to match against.</param>
  1980. <returns>Array of files and subdirectories matching the search pattern.</returns>
  1981. </member>
  1982. <member name="M:DiscUtils.IFileSystem.MoveDirectory(System.String,System.String)">
  1983. <summary>
  1984. Moves a directory.
  1985. </summary>
  1986. <param name="sourceDirectoryName">The directory to move.</param>
  1987. <param name="destinationDirectoryName">The target directory name.</param>
  1988. </member>
  1989. <member name="M:DiscUtils.IFileSystem.MoveFile(System.String,System.String)">
  1990. <summary>
  1991. Moves a file.
  1992. </summary>
  1993. <param name="sourceName">The file to move.</param>
  1994. <param name="destinationName">The target file name.</param>
  1995. </member>
  1996. <member name="M:DiscUtils.IFileSystem.MoveFile(System.String,System.String,System.Boolean)">
  1997. <summary>
  1998. Moves a file, allowing an existing file to be overwritten.
  1999. </summary>
  2000. <param name="sourceName">The file to move.</param>
  2001. <param name="destinationName">The target file name.</param>
  2002. <param name="overwrite">Whether to permit a destination file to be overwritten.</param>
  2003. </member>
  2004. <member name="M:DiscUtils.IFileSystem.OpenFile(System.String,System.IO.FileMode)">
  2005. <summary>
  2006. Opens the specified file.
  2007. </summary>
  2008. <param name="path">The full path of the file to open.</param>
  2009. <param name="mode">The file mode for the created stream.</param>
  2010. <returns>The new stream.</returns>
  2011. </member>
  2012. <member name="M:DiscUtils.IFileSystem.OpenFile(System.String,System.IO.FileMode,System.IO.FileAccess)">
  2013. <summary>
  2014. Opens the specified file.
  2015. </summary>
  2016. <param name="path">The full path of the file to open.</param>
  2017. <param name="mode">The file mode for the created stream.</param>
  2018. <param name="access">The access permissions for the created stream.</param>
  2019. <returns>The new stream.</returns>
  2020. </member>
  2021. <member name="M:DiscUtils.IFileSystem.GetAttributes(System.String)">
  2022. <summary>
  2023. Gets the attributes of a file or directory.
  2024. </summary>
  2025. <param name="path">The file or directory to inspect.</param>
  2026. <returns>The attributes of the file or directory.</returns>
  2027. </member>
  2028. <member name="M:DiscUtils.IFileSystem.SetAttributes(System.String,System.IO.FileAttributes)">
  2029. <summary>
  2030. Sets the attributes of a file or directory.
  2031. </summary>
  2032. <param name="path">The file or directory to change.</param>
  2033. <param name="newValue">The new attributes of the file or directory.</param>
  2034. </member>
  2035. <member name="M:DiscUtils.IFileSystem.GetCreationTime(System.String)">
  2036. <summary>
  2037. Gets the creation time (in local time) of a file or directory.
  2038. </summary>
  2039. <param name="path">The path of the file or directory.</param>
  2040. <returns>The creation time.</returns>
  2041. </member>
  2042. <member name="M:DiscUtils.IFileSystem.SetCreationTime(System.String,System.DateTime)">
  2043. <summary>
  2044. Sets the creation time (in local time) of a file or directory.
  2045. </summary>
  2046. <param name="path">The path of the file or directory.</param>
  2047. <param name="newTime">The new time to set.</param>
  2048. </member>
  2049. <member name="M:DiscUtils.IFileSystem.GetCreationTimeUtc(System.String)">
  2050. <summary>
  2051. Gets the creation time (in UTC) of a file or directory.
  2052. </summary>
  2053. <param name="path">The path of the file or directory.</param>
  2054. <returns>The creation time.</returns>
  2055. </member>
  2056. <member name="M:DiscUtils.IFileSystem.SetCreationTimeUtc(System.String,System.DateTime)">
  2057. <summary>
  2058. Sets the creation time (in UTC) of a file or directory.
  2059. </summary>
  2060. <param name="path">The path of the file or directory.</param>
  2061. <param name="newTime">The new time to set.</param>
  2062. </member>
  2063. <member name="M:DiscUtils.IFileSystem.GetLastAccessTime(System.String)">
  2064. <summary>
  2065. Gets the last access time (in local time) of a file or directory.
  2066. </summary>
  2067. <param name="path">The path of the file or directory.</param>
  2068. <returns>The last access time.</returns>
  2069. </member>
  2070. <member name="M:DiscUtils.IFileSystem.SetLastAccessTime(System.String,System.DateTime)">
  2071. <summary>
  2072. Sets the last access time (in local time) of a file or directory.
  2073. </summary>
  2074. <param name="path">The path of the file or directory.</param>
  2075. <param name="newTime">The new time to set.</param>
  2076. </member>
  2077. <member name="M:DiscUtils.IFileSystem.GetLastAccessTimeUtc(System.String)">
  2078. <summary>
  2079. Gets the last access time (in UTC) of a file or directory.
  2080. </summary>
  2081. <param name="path">The path of the file or directory.</param>
  2082. <returns>The last access time.</returns>
  2083. </member>
  2084. <member name="M:DiscUtils.IFileSystem.SetLastAccessTimeUtc(System.String,System.DateTime)">
  2085. <summary>
  2086. Sets the last access time (in UTC) of a file or directory.
  2087. </summary>
  2088. <param name="path">The path of the file or directory.</param>
  2089. <param name="newTime">The new time to set.</param>
  2090. </member>
  2091. <member name="M:DiscUtils.IFileSystem.GetLastWriteTime(System.String)">
  2092. <summary>
  2093. Gets the last modification time (in local time) of a file or directory.
  2094. </summary>
  2095. <param name="path">The path of the file or directory.</param>
  2096. <returns>The last write time.</returns>
  2097. </member>
  2098. <member name="M:DiscUtils.IFileSystem.SetLastWriteTime(System.String,System.DateTime)">
  2099. <summary>
  2100. Sets the last modification time (in local time) of a file or directory.
  2101. </summary>
  2102. <param name="path">The path of the file or directory.</param>
  2103. <param name="newTime">The new time to set.</param>
  2104. </member>
  2105. <member name="M:DiscUtils.IFileSystem.GetLastWriteTimeUtc(System.String)">
  2106. <summary>
  2107. Gets the last modification time (in UTC) of a file or directory.
  2108. </summary>
  2109. <param name="path">The path of the file or directory.</param>
  2110. <returns>The last write time.</returns>
  2111. </member>
  2112. <member name="M:DiscUtils.IFileSystem.SetLastWriteTimeUtc(System.String,System.DateTime)">
  2113. <summary>
  2114. Sets the last modification time (in UTC) of a file or directory.
  2115. </summary>
  2116. <param name="path">The path of the file or directory.</param>
  2117. <param name="newTime">The new time to set.</param>
  2118. </member>
  2119. <member name="M:DiscUtils.IFileSystem.GetFileLength(System.String)">
  2120. <summary>
  2121. Gets the length of a file.
  2122. </summary>
  2123. <param name="path">The path to the file.</param>
  2124. <returns>The length in bytes.</returns>
  2125. </member>
  2126. <member name="M:DiscUtils.IFileSystem.GetFileInfo(System.String)">
  2127. <summary>
  2128. Gets an object representing a possible file.
  2129. </summary>
  2130. <param name="path">The file path.</param>
  2131. <returns>The representing object.</returns>
  2132. <remarks>The file does not need to exist.</remarks>
  2133. </member>
  2134. <member name="M:DiscUtils.IFileSystem.GetDirectoryInfo(System.String)">
  2135. <summary>
  2136. Gets an object representing a possible directory.
  2137. </summary>
  2138. <param name="path">The directory path.</param>
  2139. <returns>The representing object.</returns>
  2140. <remarks>The directory does not need to exist.</remarks>
  2141. </member>
  2142. <member name="M:DiscUtils.IFileSystem.GetFileSystemInfo(System.String)">
  2143. <summary>
  2144. Gets an object representing a possible file system object (file or directory).
  2145. </summary>
  2146. <param name="path">The file system path.</param>
  2147. <returns>The representing object.</returns>
  2148. <remarks>The file system object does not need to exist.</remarks>
  2149. </member>
  2150. <member name="M:DiscUtils.IFileSystem.ReadBootCode">
  2151. <summary>
  2152. Reads the boot code of the file system into a byte array.
  2153. </summary>
  2154. <returns>The boot code, or <c>null</c> if not available.</returns>
  2155. </member>
  2156. <member name="P:DiscUtils.IFileSystem.Size">
  2157. <summary>
  2158. Size of the Filesystem in bytes
  2159. </summary>
  2160. </member>
  2161. <member name="P:DiscUtils.IFileSystem.UsedSpace">
  2162. <summary>
  2163. Used space of the Filesystem in bytes
  2164. </summary>
  2165. </member>
  2166. <member name="P:DiscUtils.IFileSystem.AvailableSpace">
  2167. <summary>
  2168. Available space of the Filesystem in bytes
  2169. </summary>
  2170. </member>
  2171. <member name="F:DiscUtils.Internal.Crc32Algorithm.Common">
  2172. <summary>
  2173. Used in Ethernet, PKZIP, BZIP2, Gzip, PNG, etc. (aka CRC32).
  2174. </summary>
  2175. </member>
  2176. <member name="F:DiscUtils.Internal.Crc32Algorithm.Castagnoli">
  2177. <summary>
  2178. Used in iSCSI, SCTP, Btrfs, Vhdx. (aka CRC32C).
  2179. </summary>
  2180. </member>
  2181. <member name="F:DiscUtils.Internal.Crc32Algorithm.Koopman">
  2182. <summary>
  2183. Unknown usage. (aka CRC32K).
  2184. </summary>
  2185. </member>
  2186. <member name="F:DiscUtils.Internal.Crc32Algorithm.Aeronautical">
  2187. <summary>
  2188. Used in AIXM. (aka CRC32Q).
  2189. </summary>
  2190. </member>
  2191. <member name="T:DiscUtils.Internal.Crc32BigEndian">
  2192. <summary>
  2193. Calculates CRC32 of buffers.
  2194. </summary>
  2195. </member>
  2196. <member name="T:DiscUtils.Internal.Crc32LittleEndian">
  2197. <summary>
  2198. Calculates CRC32 of buffers.
  2199. </summary>
  2200. </member>
  2201. <member name="T:DiscUtils.Internal.ObjectCache`2">
  2202. <summary>
  2203. Caches objects.
  2204. </summary>
  2205. <typeparam name="K">The type of the object key.</typeparam>
  2206. <typeparam name="V">The type of the objects to cache.</typeparam>
  2207. <remarks>
  2208. Can be use for two purposes - to ensure there is only one instance of a given object,
  2209. and to prevent the need to recreate objects that are expensive to create.
  2210. </remarks>
  2211. </member>
  2212. <member name="M:DiscUtils.Internal.Utilities.Map``2(System.Collections.Generic.ICollection{``0},System.Func{``0,``1})">
  2213. <summary>
  2214. Converts between two arrays.
  2215. </summary>
  2216. <typeparam name="T">The type of the elements of the source array.</typeparam>
  2217. <typeparam name="U">The type of the elements of the destination array.</typeparam>
  2218. <param name="source">The source array.</param>
  2219. <param name="func">The function to map from source type to destination type.</param>
  2220. <returns>The resultant array.</returns>
  2221. </member>
  2222. <member name="M:DiscUtils.Internal.Utilities.Map``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1})">
  2223. <summary>
  2224. Converts between two arrays.
  2225. </summary>
  2226. <typeparam name="T">The type of the elements of the source array.</typeparam>
  2227. <typeparam name="U">The type of the elements of the destination array.</typeparam>
  2228. <param name="source">The source array.</param>
  2229. <param name="func">The function to map from source type to destination type.</param>
  2230. <returns>The resultant array.</returns>
  2231. </member>
  2232. <member name="M:DiscUtils.Internal.Utilities.Filter``2(System.Collections.Generic.ICollection{``1},System.Func{``1,System.Boolean})">
  2233. <summary>
  2234. Filters a collection into a new collection.
  2235. </summary>
  2236. <typeparam name="C">The type of the new collection.</typeparam>
  2237. <typeparam name="T">The type of the collection entries.</typeparam>
  2238. <param name="source">The collection to filter.</param>
  2239. <param name="predicate">The predicate to select which entries are carried over.</param>
  2240. <returns>The new collection, containing all entries where the predicate returns <c>true</c>.</returns>
  2241. </member>
  2242. <member name="M:DiscUtils.Internal.Utilities.RangesOverlap``1(``0,``0,``0,``0)">
  2243. <summary>
  2244. Indicates if two ranges overlap.
  2245. </summary>
  2246. <typeparam name="T">The type of the ordinals.</typeparam>
  2247. <param name="xFirst">The lowest ordinal of the first range (inclusive).</param>
  2248. <param name="xLast">The highest ordinal of the first range (exclusive).</param>
  2249. <param name="yFirst">The lowest ordinal of the second range (inclusive).</param>
  2250. <param name="yLast">The highest ordinal of the second range (exclusive).</param>
  2251. <returns><c>true</c> if the ranges overlap, else <c>false</c>.</returns>
  2252. </member>
  2253. <member name="M:DiscUtils.Internal.Utilities.GetDirectoryFromPath(System.String)">
  2254. <summary>
  2255. Extracts the directory part of a path.
  2256. </summary>
  2257. <param name="path">The path to process.</param>
  2258. <returns>The directory part.</returns>
  2259. </member>
  2260. <member name="M:DiscUtils.Internal.Utilities.GetFileFromPath(System.String)">
  2261. <summary>
  2262. Extracts the file part of a path.
  2263. </summary>
  2264. <param name="path">The path to process.</param>
  2265. <returns>The file part of the path.</returns>
  2266. </member>
  2267. <member name="M:DiscUtils.Internal.Utilities.CombinePaths(System.String,System.String)">
  2268. <summary>
  2269. Combines two paths.
  2270. </summary>
  2271. <param name="a">The first part of the path.</param>
  2272. <param name="b">The second part of the path.</param>
  2273. <returns>The combined path.</returns>
  2274. </member>
  2275. <member name="M:DiscUtils.Internal.Utilities.ResolveRelativePath(System.String,System.String)">
  2276. <summary>
  2277. Resolves a relative path into an absolute one.
  2278. </summary>
  2279. <param name="basePath">The base path to resolve from.</param>
  2280. <param name="relativePath">The relative path.</param>
  2281. <returns>The absolute path. If no <paramref name="basePath"/> is specified
  2282. then relativePath is returned as-is. If <paramref name="relativePath"/>
  2283. contains more '..' characters than the base path contains levels of
  2284. directory, the resultant string be the root drive followed by the file name.
  2285. If no the basePath starts with '\' (no drive specified) then the returned
  2286. path will also start with '\'.
  2287. For example: (\TEMP\Foo.txt, ..\..\Bar.txt) gives (\Bar.txt).
  2288. </returns>
  2289. </member>
  2290. <member name="M:DiscUtils.Internal.Utilities.Is8Dot3(System.String)">
  2291. <summary>
  2292. Indicates if a file name matches the 8.3 pattern.
  2293. </summary>
  2294. <param name="name">The name to test.</param>
  2295. <returns><c>true</c> if the name is 8.3, otherwise <c>false</c>.</returns>
  2296. </member>
  2297. <member name="M:DiscUtils.Internal.Utilities.ConvertWildcardsToRegEx(System.String)">
  2298. <summary>
  2299. Converts a 'standard' wildcard file/path specification into a regular expression.
  2300. </summary>
  2301. <param name="pattern">The wildcard pattern to convert.</param>
  2302. <returns>The resultant regular expression.</returns>
  2303. <remarks>
  2304. The wildcard * (star) matches zero or more characters (including '.'), and ?
  2305. (question mark) matches precisely one character (except '.').
  2306. </remarks>
  2307. </member>
  2308. <member name="T:DiscUtils.InvalidFileSystemException">
  2309. <summary>
  2310. Exception thrown when some invalid file system data is found, indicating probably corruption.
  2311. </summary>
  2312. </member>
  2313. <member name="M:DiscUtils.InvalidFileSystemException.#ctor">
  2314. <summary>
  2315. Initializes a new instance of the InvalidFileSystemException class.
  2316. </summary>
  2317. </member>
  2318. <member name="M:DiscUtils.InvalidFileSystemException.#ctor(System.String)">
  2319. <summary>
  2320. Initializes a new instance of the InvalidFileSystemException class.
  2321. </summary>
  2322. <param name="message">The exception message.</param>
  2323. </member>
  2324. <member name="M:DiscUtils.InvalidFileSystemException.#ctor(System.String,System.Exception)">
  2325. <summary>
  2326. Initializes a new instance of the InvalidFileSystemException class.
  2327. </summary>
  2328. <param name="message">The exception message.</param>
  2329. <param name="innerException">The inner exception.</param>
  2330. </member>
  2331. <member name="M:DiscUtils.InvalidFileSystemException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
  2332. <summary>
  2333. Initializes a new instance of the InvalidFileSystemException class.
  2334. </summary>
  2335. <param name="info">The serialization info.</param>
  2336. <param name="context">The streaming context.</param>
  2337. </member>
  2338. <member name="T:DiscUtils.IUnixFileSystem">
  2339. <summary>
  2340. Provides the base class for all file systems that support Unix semantics.
  2341. </summary>
  2342. </member>
  2343. <member name="M:DiscUtils.IUnixFileSystem.GetUnixFileInfo(System.String)">
  2344. <summary>
  2345. Retrieves Unix-specific information about a file or directory.
  2346. </summary>
  2347. <param name="path">Path to the file or directory.</param>
  2348. <returns>Information about the owner, group, permissions and type of the
  2349. file or directory.</returns>
  2350. </member>
  2351. <member name="T:DiscUtils.IWindowsFileSystem">
  2352. <summary>
  2353. Provides the base class for all file systems that support Windows semantics.
  2354. </summary>
  2355. </member>
  2356. <member name="M:DiscUtils.IWindowsFileSystem.GetSecurity(System.String)">
  2357. <summary>
  2358. Gets the security descriptor associated with the file or directory.
  2359. </summary>
  2360. <param name="path">The file or directory to inspect.</param>
  2361. <returns>The security descriptor.</returns>
  2362. </member>
  2363. <member name="M:DiscUtils.IWindowsFileSystem.SetSecurity(System.String,System.Security.AccessControl.RawSecurityDescriptor)">
  2364. <summary>
  2365. Sets the security descriptor associated with the file or directory.
  2366. </summary>
  2367. <param name="path">The file or directory to change.</param>
  2368. <param name="securityDescriptor">The new security descriptor.</param>
  2369. </member>
  2370. <member name="M:DiscUtils.IWindowsFileSystem.GetReparsePoint(System.String)">
  2371. <summary>
  2372. Gets the reparse point data associated with a file or directory.
  2373. </summary>
  2374. <param name="path">The file to query.</param>
  2375. <returns>The reparse point information.</returns>
  2376. </member>
  2377. <member name="M:DiscUtils.IWindowsFileSystem.SetReparsePoint(System.String,DiscUtils.ReparsePoint)">
  2378. <summary>
  2379. Sets the reparse point data on a file or directory.
  2380. </summary>
  2381. <param name="path">The file to set the reparse point on.</param>
  2382. <param name="reparsePoint">The new reparse point.</param>
  2383. </member>
  2384. <member name="M:DiscUtils.IWindowsFileSystem.RemoveReparsePoint(System.String)">
  2385. <summary>
  2386. Removes a reparse point from a file or directory, without deleting the file or directory.
  2387. </summary>
  2388. <param name="path">The path to the file or directory to remove the reparse point from.</param>
  2389. </member>
  2390. <member name="M:DiscUtils.IWindowsFileSystem.GetShortName(System.String)">
  2391. <summary>
  2392. Gets the short name for a given path.
  2393. </summary>
  2394. <param name="path">The path to convert.</param>
  2395. <returns>The short name.</returns>
  2396. <remarks>
  2397. This method only gets the short name for the final part of the path, to
  2398. convert a complete path, call this method repeatedly, once for each path
  2399. segment. If there is no short name for the given path,<c>null</c> is
  2400. returned.
  2401. </remarks>
  2402. </member>
  2403. <member name="M:DiscUtils.IWindowsFileSystem.SetShortName(System.String,System.String)">
  2404. <summary>
  2405. Sets the short name for a given file or directory.
  2406. </summary>
  2407. <param name="path">The full path to the file or directory to change.</param>
  2408. <param name="shortName">The shortName, which should not include a path.</param>
  2409. </member>
  2410. <member name="M:DiscUtils.IWindowsFileSystem.GetFileStandardInformation(System.String)">
  2411. <summary>
  2412. Gets the standard file information for a file.
  2413. </summary>
  2414. <param name="path">The full path to the file or directory to query.</param>
  2415. <returns>The standard file information.</returns>
  2416. </member>
  2417. <member name="M:DiscUtils.IWindowsFileSystem.SetFileStandardInformation(System.String,DiscUtils.WindowsFileInformation)">
  2418. <summary>
  2419. Sets the standard file information for a file.
  2420. </summary>
  2421. <param name="path">The full path to the file or directory to query.</param>
  2422. <param name="info">The standard file information.</param>
  2423. </member>
  2424. <member name="M:DiscUtils.IWindowsFileSystem.GetAlternateDataStreams(System.String)">
  2425. <summary>
  2426. Gets the names of the alternate data streams for a file.
  2427. </summary>
  2428. <param name="path">The path to the file.</param>
  2429. <returns>
  2430. The list of alternate data streams (or empty, if none). To access the contents
  2431. of the alternate streams, use OpenFile(path + ":" + name, ...).
  2432. </returns>
  2433. </member>
  2434. <member name="M:DiscUtils.IWindowsFileSystem.GetFileId(System.String)">
  2435. <summary>
  2436. Gets the file id for a given path.
  2437. </summary>
  2438. <param name="path">The path to get the id of.</param>
  2439. <returns>The file id, or -1.</returns>
  2440. <remarks>
  2441. The returned file id uniquely identifies the file, and is shared by all hard
  2442. links to the same file. The value -1 indicates no unique identifier is
  2443. available, and so it can be assumed the file has no hard links.
  2444. </remarks>
  2445. </member>
  2446. <member name="M:DiscUtils.IWindowsFileSystem.HasHardLinks(System.String)">
  2447. <summary>
  2448. Indicates whether the file is known by other names.
  2449. </summary>
  2450. <param name="path">The file to inspect.</param>
  2451. <returns><c>true</c> if the file has other names, else <c>false</c>.</returns>
  2452. </member>
  2453. <member name="T:DiscUtils.LogicalDiskManager.DynamicDiskManager">
  2454. <summary>
  2455. A class that understands Windows LDM structures, mapping physical volumes to logical volumes.
  2456. </summary>
  2457. </member>
  2458. <member name="M:DiscUtils.LogicalDiskManager.DynamicDiskManager.#ctor(DiscUtils.VirtualDisk[])">
  2459. <summary>
  2460. Initializes a new instance of the DynamicDiskManager class.
  2461. </summary>
  2462. <param name="disks">The initial set of disks to manage.</param>
  2463. </member>
  2464. <member name="M:DiscUtils.LogicalDiskManager.DynamicDiskManager.Dump(System.IO.TextWriter,System.String)">
  2465. <summary>
  2466. Writes a diagnostic report about the state of the disk manager.
  2467. </summary>
  2468. <param name="writer">The writer to send the report to.</param>
  2469. <param name="linePrefix">The prefix to place at the start of each line.</param>
  2470. </member>
  2471. <member name="M:DiscUtils.LogicalDiskManager.DynamicDiskManager.HandlesPhysicalVolume(DiscUtils.PhysicalVolumeInfo)">
  2472. <summary>
  2473. Determines if a physical volume contains LDM data.
  2474. </summary>
  2475. <param name="volumeInfo">The volume to inspect.</param>
  2476. <returns><c>true</c> if the physical volume contains LDM data, else <c>false</c>.</returns>
  2477. </member>
  2478. <member name="M:DiscUtils.LogicalDiskManager.DynamicDiskManager.IsDynamicDisk(DiscUtils.VirtualDisk)">
  2479. <summary>
  2480. Determines if a disk is 'dynamic' (i.e. contains LDM volumes).
  2481. </summary>
  2482. <param name="disk">The disk to inspect.</param>
  2483. <returns><c>true</c> if the disk contains LDM volumes, else <c>false</c>.</returns>
  2484. </member>
  2485. <member name="M:DiscUtils.LogicalDiskManager.DynamicDiskManager.Add(DiscUtils.VirtualDisk)">
  2486. <summary>
  2487. Adds a new disk to be managed.
  2488. </summary>
  2489. <param name="disk">The disk to manage.</param>
  2490. </member>
  2491. <member name="M:DiscUtils.LogicalDiskManager.DynamicDiskManager.GetLogicalVolumes">
  2492. <summary>
  2493. Gets the logical volumes held across the set of managed disks.
  2494. </summary>
  2495. <returns>An array of logical volumes.</returns>
  2496. </member>
  2497. <member name="T:DiscUtils.LogicalVolumeInfo">
  2498. <summary>
  2499. Information about a logical disk volume, which may be backed by one or more physical volumes.
  2500. </summary>
  2501. </member>
  2502. <member name="P:DiscUtils.LogicalVolumeInfo.BiosGeometry">
  2503. <summary>
  2504. Gets the disk geometry of the underlying storage medium (as used in BIOS calls), may be null.
  2505. </summary>
  2506. </member>
  2507. <member name="P:DiscUtils.LogicalVolumeInfo.BiosType">
  2508. <summary>
  2509. Gets the one-byte BIOS type for this volume, which indicates the content.
  2510. </summary>
  2511. </member>
  2512. <member name="P:DiscUtils.LogicalVolumeInfo.Identity">
  2513. <summary>
  2514. The stable identity for this logical volume.
  2515. </summary>
  2516. <remarks>The stability of the identity depends the disk structure.
  2517. In some cases the identity may include a simple index, when no other information
  2518. is available. Best practice is to add disks to the Volume Manager in a stable
  2519. order, if the stability of this identity is paramount.</remarks>
  2520. </member>
  2521. <member name="P:DiscUtils.LogicalVolumeInfo.Length">
  2522. <summary>
  2523. Gets the length of the volume (in bytes).
  2524. </summary>
  2525. </member>
  2526. <member name="P:DiscUtils.LogicalVolumeInfo.PhysicalGeometry">
  2527. <summary>
  2528. Gets the disk geometry of the underlying storage medium, if any (may be Geometry.Null).
  2529. </summary>
  2530. </member>
  2531. <member name="P:DiscUtils.LogicalVolumeInfo.PhysicalStartSector">
  2532. <summary>
  2533. Gets the offset of this volume in the underlying storage medium, if any (may be Zero).
  2534. </summary>
  2535. </member>
  2536. <member name="P:DiscUtils.LogicalVolumeInfo.Status">
  2537. <summary>
  2538. Gets the status of the logical volume, indicating volume health.
  2539. </summary>
  2540. </member>
  2541. <member name="P:DiscUtils.LogicalVolumeInfo.PhysicalVolume">
  2542. <summary>
  2543. Gets the underlying physical volume info
  2544. </summary>
  2545. </member>
  2546. <member name="M:DiscUtils.LogicalVolumeInfo.Open">
  2547. <summary>
  2548. Opens a stream with access to the content of the logical volume.
  2549. </summary>
  2550. <returns>The volume's content as a stream.</returns>
  2551. </member>
  2552. <member name="T:DiscUtils.LogicalVolumeStatus">
  2553. <summary>
  2554. Enumeration of the health status of a logical volume.
  2555. </summary>
  2556. </member>
  2557. <member name="F:DiscUtils.LogicalVolumeStatus.Healthy">
  2558. <summary>
  2559. The volume is healthy and fully functional.
  2560. </summary>
  2561. </member>
  2562. <member name="F:DiscUtils.LogicalVolumeStatus.FailedRedundancy">
  2563. <summary>
  2564. The volume is completely accessible, but at degraded redundancy.
  2565. </summary>
  2566. </member>
  2567. <member name="F:DiscUtils.LogicalVolumeStatus.Failed">
  2568. <summary>
  2569. The volume is wholey, or partly, inaccessible.
  2570. </summary>
  2571. </member>
  2572. <member name="T:DiscUtils.NativeFileSystem">
  2573. <summary>
  2574. Provides an implementation for OS-mounted file systems.
  2575. </summary>
  2576. </member>
  2577. <member name="M:DiscUtils.NativeFileSystem.#ctor(System.String,System.Boolean)">
  2578. <summary>
  2579. Initializes a new instance of the NativeFileSystem class.
  2580. </summary>
  2581. <param name="basePath">The 'root' directory of the new instance.</param>
  2582. <param name="readOnly">Only permit 'read' activities.</param>
  2583. </member>
  2584. <member name="P:DiscUtils.NativeFileSystem.BasePath">
  2585. <summary>
  2586. Gets the base path used to create the file system.
  2587. </summary>
  2588. </member>
  2589. <member name="P:DiscUtils.NativeFileSystem.CanWrite">
  2590. <summary>
  2591. Indicates whether the file system is read-only or read-write.
  2592. </summary>
  2593. <returns>true if the file system is read-write.</returns>
  2594. </member>
  2595. <member name="P:DiscUtils.NativeFileSystem.FriendlyName">
  2596. <summary>
  2597. Provides a friendly description of the file system type.
  2598. </summary>
  2599. </member>
  2600. <member name="P:DiscUtils.NativeFileSystem.IsThreadSafe">
  2601. <summary>
  2602. Gets a value indicating whether the file system is thread-safe.
  2603. </summary>
  2604. <remarks>The Native File System is thread safe.</remarks>
  2605. </member>
  2606. <member name="P:DiscUtils.NativeFileSystem.Root">
  2607. <summary>
  2608. Gets the root directory of the file system.
  2609. </summary>
  2610. </member>
  2611. <member name="P:DiscUtils.NativeFileSystem.VolumeLabel">
  2612. <summary>
  2613. Gets the volume label.
  2614. </summary>
  2615. </member>
  2616. <member name="M:DiscUtils.NativeFileSystem.CopyFile(System.String,System.String)">
  2617. <summary>
  2618. Copies an existing file to a new file.
  2619. </summary>
  2620. <param name="sourceFile">The source file.</param>
  2621. <param name="destinationFile">The destination file.</param>
  2622. </member>
  2623. <member name="M:DiscUtils.NativeFileSystem.CopyFile(System.String,System.String,System.Boolean)">
  2624. <summary>
  2625. Copies an existing file to a new file, allowing overwriting of an existing file.
  2626. </summary>
  2627. <param name="sourceFile">The source file.</param>
  2628. <param name="destinationFile">The destination file.</param>
  2629. <param name="overwrite">Whether to permit over-writing of an existing file.</param>
  2630. </member>
  2631. <member name="M:DiscUtils.NativeFileSystem.CreateDirectory(System.String)">
  2632. <summary>
  2633. Creates a directory.
  2634. </summary>
  2635. <param name="path">The path of the new directory.</param>
  2636. </member>
  2637. <member name="M:DiscUtils.NativeFileSystem.DeleteDirectory(System.String)">
  2638. <summary>
  2639. Deletes a directory.
  2640. </summary>
  2641. <param name="path">The path of the directory to delete.</param>
  2642. </member>
  2643. <member name="M:DiscUtils.NativeFileSystem.DeleteDirectory(System.String,System.Boolean)">
  2644. <summary>
  2645. Deletes a directory, optionally with all descendants.
  2646. </summary>
  2647. <param name="path">The path of the directory to delete.</param>
  2648. <param name="recursive">Determines if the all descendants should be deleted.</param>
  2649. </member>
  2650. <member name="M:DiscUtils.NativeFileSystem.DeleteFile(System.String)">
  2651. <summary>
  2652. Deletes a file.
  2653. </summary>
  2654. <param name="path">The path of the file to delete.</param>
  2655. </member>
  2656. <member name="M:DiscUtils.NativeFileSystem.DirectoryExists(System.String)">
  2657. <summary>
  2658. Indicates if a directory exists.
  2659. </summary>
  2660. <param name="path">The path to test.</param>
  2661. <returns>true if the directory exists.</returns>
  2662. </member>
  2663. <member name="M:DiscUtils.NativeFileSystem.FileExists(System.String)">
  2664. <summary>
  2665. Indicates if a file exists.
  2666. </summary>
  2667. <param name="path">The path to test.</param>
  2668. <returns>true if the file exists.</returns>
  2669. </member>
  2670. <member name="M:DiscUtils.NativeFileSystem.Exists(System.String)">
  2671. <summary>
  2672. Indicates if a file or directory exists.
  2673. </summary>
  2674. <param name="path">The path to test.</param>
  2675. <returns>true if the file or directory exists.</returns>
  2676. </member>
  2677. <member name="M:DiscUtils.NativeFileSystem.GetDirectories(System.String)">
  2678. <summary>
  2679. Gets the names of subdirectories in a specified directory.
  2680. </summary>
  2681. <param name="path">The path to search.</param>
  2682. <returns>Array of directories.</returns>
  2683. </member>
  2684. <member name="M:DiscUtils.NativeFileSystem.GetDirectories(System.String,System.String)">
  2685. <summary>
  2686. Gets the names of subdirectories in a specified directory matching a specified
  2687. search pattern.
  2688. </summary>
  2689. <param name="path">The path to search.</param>
  2690. <param name="searchPattern">The search string to match against.</param>
  2691. <returns>Array of directories matching the search pattern.</returns>
  2692. </member>
  2693. <member name="M:DiscUtils.NativeFileSystem.GetDirectories(System.String,System.String,System.IO.SearchOption)">
  2694. <summary>
  2695. Gets the names of subdirectories in a specified directory matching a specified
  2696. search pattern, using a value to determine whether to search subdirectories.
  2697. </summary>
  2698. <param name="path">The path to search.</param>
  2699. <param name="searchPattern">The search string to match against.</param>
  2700. <param name="searchOption">Indicates whether to search subdirectories.</param>
  2701. <returns>Array of directories matching the search pattern.</returns>
  2702. </member>
  2703. <member name="M:DiscUtils.NativeFileSystem.GetFiles(System.String)">
  2704. <summary>
  2705. Gets the names of files in a specified directory.
  2706. </summary>
  2707. <param name="path">The path to search.</param>
  2708. <returns>Array of files.</returns>
  2709. </member>
  2710. <member name="M:DiscUtils.NativeFileSystem.GetFiles(System.String,System.String)">
  2711. <summary>
  2712. Gets the names of files in a specified directory.
  2713. </summary>
  2714. <param name="path">The path to search.</param>
  2715. <param name="searchPattern">The search string to match against.</param>
  2716. <returns>Array of files matching the search pattern.</returns>
  2717. </member>
  2718. <member name="M:DiscUtils.NativeFileSystem.GetFiles(System.String,System.String,System.IO.SearchOption)">
  2719. <summary>
  2720. Gets the names of files in a specified directory matching a specified
  2721. search pattern, using a value to determine whether to search subdirectories.
  2722. </summary>
  2723. <param name="path">The path to search.</param>
  2724. <param name="searchPattern">The search string to match against.</param>
  2725. <param name="searchOption">Indicates whether to search subdirectories.</param>
  2726. <returns>Array of files matching the search pattern.</returns>
  2727. </member>
  2728. <member name="M:DiscUtils.NativeFileSystem.GetFileSystemEntries(System.String)">
  2729. <summary>
  2730. Gets the names of all files and subdirectories in a specified directory.
  2731. </summary>
  2732. <param name="path">The path to search.</param>
  2733. <returns>Array of files and subdirectories matching the search pattern.</returns>
  2734. </member>
  2735. <member name="M:DiscUtils.NativeFileSystem.GetFileSystemEntries(System.String,System.String)">
  2736. <summary>
  2737. Gets the names of files and subdirectories in a specified directory matching a specified
  2738. search pattern.
  2739. </summary>
  2740. <param name="path">The path to search.</param>
  2741. <param name="searchPattern">The search string to match against.</param>
  2742. <returns>Array of files and subdirectories matching the search pattern.</returns>
  2743. </member>
  2744. <member name="M:DiscUtils.NativeFileSystem.MoveDirectory(System.String,System.String)">
  2745. <summary>
  2746. Moves a directory.
  2747. </summary>
  2748. <param name="sourceDirectoryName">The directory to move.</param>
  2749. <param name="destinationDirectoryName">The target directory name.</param>
  2750. </member>
  2751. <member name="M:DiscUtils.NativeFileSystem.MoveFile(System.String,System.String)">
  2752. <summary>
  2753. Moves a file.
  2754. </summary>
  2755. <param name="sourceName">The file to move.</param>
  2756. <param name="destinationName">The target file name.</param>
  2757. </member>
  2758. <member name="M:DiscUtils.NativeFileSystem.MoveFile(System.String,System.String,System.Boolean)">
  2759. <summary>
  2760. Moves a file, allowing an existing file to be overwritten.
  2761. </summary>
  2762. <param name="sourceName">The file to move.</param>
  2763. <param name="destinationName">The target file name.</param>
  2764. <param name="overwrite">Whether to permit a destination file to be overwritten.</param>
  2765. </member>
  2766. <member name="M:DiscUtils.NativeFileSystem.OpenFile(System.String,System.IO.FileMode)">
  2767. <summary>
  2768. Opens the specified file.
  2769. </summary>
  2770. <param name="path">The full path of the file to open.</param>
  2771. <param name="mode">The file mode for the created stream.</param>
  2772. <returns>The new stream.</returns>
  2773. </member>
  2774. <member name="M:DiscUtils.NativeFileSystem.OpenFile(System.String,System.IO.FileMode,System.IO.FileAccess)">
  2775. <summary>
  2776. Opens the specified file.
  2777. </summary>
  2778. <param name="path">The full path of the file to open.</param>
  2779. <param name="mode">The file mode for the created stream.</param>
  2780. <param name="access">The access permissions for the created stream.</param>
  2781. <returns>The new stream.</returns>
  2782. </member>
  2783. <member name="M:DiscUtils.NativeFileSystem.GetAttributes(System.String)">
  2784. <summary>
  2785. Gets the attributes of a file or directory.
  2786. </summary>
  2787. <param name="path">The file or directory to inspect.</param>
  2788. <returns>The attributes of the file or directory.</returns>
  2789. </member>
  2790. <member name="M:DiscUtils.NativeFileSystem.SetAttributes(System.String,System.IO.FileAttributes)">
  2791. <summary>
  2792. Sets the attributes of a file or directory.
  2793. </summary>
  2794. <param name="path">The file or directory to change.</param>
  2795. <param name="newValue">The new attributes of the file or directory.</param>
  2796. </member>
  2797. <member name="M:DiscUtils.NativeFileSystem.GetCreationTime(System.String)">
  2798. <summary>
  2799. Gets the creation time (in local time) of a file or directory.
  2800. </summary>
  2801. <param name="path">The path of the file or directory.</param>
  2802. <returns>The creation time.</returns>
  2803. </member>
  2804. <member name="M:DiscUtils.NativeFileSystem.SetCreationTime(System.String,System.DateTime)">
  2805. <summary>
  2806. Sets the creation time (in local time) of a file or directory.
  2807. </summary>
  2808. <param name="path">The path of the file or directory.</param>
  2809. <param name="newTime">The new time to set.</param>
  2810. </member>
  2811. <member name="M:DiscUtils.NativeFileSystem.GetCreationTimeUtc(System.String)">
  2812. <summary>
  2813. Gets the creation time (in UTC) of a file or directory.
  2814. </summary>
  2815. <param name="path">The path of the file or directory.</param>
  2816. <returns>The creation time.</returns>
  2817. </member>
  2818. <member name="M:DiscUtils.NativeFileSystem.SetCreationTimeUtc(System.String,System.DateTime)">
  2819. <summary>
  2820. Sets the creation time (in UTC) of a file or directory.
  2821. </summary>
  2822. <param name="path">The path of the file or directory.</param>
  2823. <param name="newTime">The new time to set.</param>
  2824. </member>
  2825. <member name="M:DiscUtils.NativeFileSystem.GetLastAccessTime(System.String)">
  2826. <summary>
  2827. Gets the last access time (in local time) of a file or directory.
  2828. </summary>
  2829. <param name="path">The path of the file or directory.</param>
  2830. <returns>The last access time.</returns>
  2831. </member>
  2832. <member name="M:DiscUtils.NativeFileSystem.SetLastAccessTime(System.String,System.DateTime)">
  2833. <summary>
  2834. Sets the last access time (in local time) of a file or directory.
  2835. </summary>
  2836. <param name="path">The path of the file or directory.</param>
  2837. <param name="newTime">The new time to set.</param>
  2838. </member>
  2839. <member name="M:DiscUtils.NativeFileSystem.GetLastAccessTimeUtc(System.String)">
  2840. <summary>
  2841. Gets the last access time (in UTC) of a file or directory.
  2842. </summary>
  2843. <param name="path">The path of the file or directory.</param>
  2844. <returns>The last access time.</returns>
  2845. </member>
  2846. <member name="M:DiscUtils.NativeFileSystem.SetLastAccessTimeUtc(System.String,System.DateTime)">
  2847. <summary>
  2848. Sets the last access time (in UTC) of a file or directory.
  2849. </summary>
  2850. <param name="path">The path of the file or directory.</param>
  2851. <param name="newTime">The new time to set.</param>
  2852. </member>
  2853. <member name="M:DiscUtils.NativeFileSystem.GetLastWriteTime(System.String)">
  2854. <summary>
  2855. Gets the last modification time (in local time) of a file or directory.
  2856. </summary>
  2857. <param name="path">The path of the file or directory.</param>
  2858. <returns>The last write time.</returns>
  2859. </member>
  2860. <member name="M:DiscUtils.NativeFileSystem.SetLastWriteTime(System.String,System.DateTime)">
  2861. <summary>
  2862. Sets the last modification time (in local time) of a file or directory.
  2863. </summary>
  2864. <param name="path">The path of the file or directory.</param>
  2865. <param name="newTime">The new time to set.</param>
  2866. </member>
  2867. <member name="M:DiscUtils.NativeFileSystem.GetLastWriteTimeUtc(System.String)">
  2868. <summary>
  2869. Gets the last modification time (in UTC) of a file or directory.
  2870. </summary>
  2871. <param name="path">The path of the file or directory.</param>
  2872. <returns>The last write time.</returns>
  2873. </member>
  2874. <member name="M:DiscUtils.NativeFileSystem.SetLastWriteTimeUtc(System.String,System.DateTime)">
  2875. <summary>
  2876. Sets the last modification time (in UTC) of a file or directory.
  2877. </summary>
  2878. <param name="path">The path of the file or directory.</param>
  2879. <param name="newTime">The new time to set.</param>
  2880. </member>
  2881. <member name="M:DiscUtils.NativeFileSystem.GetFileLength(System.String)">
  2882. <summary>
  2883. Gets the length of a file.
  2884. </summary>
  2885. <param name="path">The path to the file.</param>
  2886. <returns>The length in bytes.</returns>
  2887. </member>
  2888. <member name="M:DiscUtils.NativeFileSystem.GetFileInfo(System.String)">
  2889. <summary>
  2890. Gets an object representing a possible file.
  2891. </summary>
  2892. <param name="path">The file path.</param>
  2893. <returns>The representing object.</returns>
  2894. <remarks>The file does not need to exist.</remarks>
  2895. </member>
  2896. <member name="M:DiscUtils.NativeFileSystem.GetDirectoryInfo(System.String)">
  2897. <summary>
  2898. Gets an object representing a possible directory.
  2899. </summary>
  2900. <param name="path">The directory path.</param>
  2901. <returns>The representing object.</returns>
  2902. <remarks>The directory does not need to exist.</remarks>
  2903. </member>
  2904. <member name="M:DiscUtils.NativeFileSystem.GetFileSystemInfo(System.String)">
  2905. <summary>
  2906. Gets an object representing a possible file system object (file or directory).
  2907. </summary>
  2908. <param name="path">The file system path.</param>
  2909. <returns>The representing object.</returns>
  2910. <remarks>The file system object does not need to exist.</remarks>
  2911. </member>
  2912. <member name="P:DiscUtils.NativeFileSystem.Size">
  2913. <summary>
  2914. Size of the Filesystem in bytes
  2915. </summary>
  2916. </member>
  2917. <member name="P:DiscUtils.NativeFileSystem.UsedSpace">
  2918. <summary>
  2919. Used space of the Filesystem in bytes
  2920. </summary>
  2921. </member>
  2922. <member name="P:DiscUtils.NativeFileSystem.AvailableSpace">
  2923. <summary>
  2924. Available space of the Filesystem in bytes
  2925. </summary>
  2926. </member>
  2927. <member name="M:DiscUtils.Partitions.BiosExtendedPartitionTable.GetMetadataDiskExtents">
  2928. <summary>
  2929. Gets all of the disk ranges containing partition table data.
  2930. </summary>
  2931. <returns>Set of stream extents, indicated as byte offset from the start of the disk.</returns>
  2932. </member>
  2933. <member name="T:DiscUtils.Partitions.BiosPartitionedDiskBuilder">
  2934. <summary>
  2935. Builds a stream with the contents of a BIOS partitioned disk.
  2936. </summary>
  2937. <remarks>
  2938. This class assembles a disk image dynamically in memory. The
  2939. constructed stream will read data from the partition content
  2940. streams only when a client of this class tries to read from
  2941. that partition.
  2942. </remarks>
  2943. </member>
  2944. <member name="M:DiscUtils.Partitions.BiosPartitionedDiskBuilder.#ctor(System.Int64,DiscUtils.Geometry)">
  2945. <summary>
  2946. Initializes a new instance of the BiosPartitionedDiskBuilder class.
  2947. </summary>
  2948. <param name="capacity">The capacity of the disk (in bytes).</param>
  2949. <param name="biosGeometry">The BIOS geometry of the disk.</param>
  2950. </member>
  2951. <member name="M:DiscUtils.Partitions.BiosPartitionedDiskBuilder.#ctor(System.Int64,System.Byte[],DiscUtils.Geometry)">
  2952. <summary>
  2953. Initializes a new instance of the BiosPartitionedDiskBuilder class.
  2954. </summary>
  2955. <param name="capacity">The capacity of the disk (in bytes).</param>
  2956. <param name="bootSectors">The boot sector(s) of the disk.</param>
  2957. <param name="biosGeometry">The BIOS geometry of the disk.</param>
  2958. </member>
  2959. <member name="M:DiscUtils.Partitions.BiosPartitionedDiskBuilder.#ctor(DiscUtils.VirtualDisk)">
  2960. <summary>
  2961. Initializes a new instance of the BiosPartitionedDiskBuilder class by
  2962. cloning the partition structure of a source disk.
  2963. </summary>
  2964. <param name="sourceDisk">The disk to clone.</param>
  2965. </member>
  2966. <member name="P:DiscUtils.Partitions.BiosPartitionedDiskBuilder.PartitionTable">
  2967. <summary>
  2968. Gets the partition table in the disk.
  2969. </summary>
  2970. </member>
  2971. <member name="M:DiscUtils.Partitions.BiosPartitionedDiskBuilder.SetPartitionContent(System.Int32,DiscUtils.Streams.SparseStream)">
  2972. <summary>
  2973. Sets a stream representing the content of a partition in the partition table.
  2974. </summary>
  2975. <param name="index">The index of the partition.</param>
  2976. <param name="stream">The stream with the contents of the partition.</param>
  2977. </member>
  2978. <member name="M:DiscUtils.Partitions.BiosPartitionedDiskBuilder.UpdateBiosGeometry(DiscUtils.Geometry)">
  2979. <summary>
  2980. Updates the CHS fields in partition records to reflect a new BIOS geometry.
  2981. </summary>
  2982. <param name="geometry">The disk's new BIOS geometry.</param>
  2983. <remarks>The partitions are not relocated to a cylinder boundary, just the CHS fields are updated on the
  2984. assumption the LBA fields are definitive.</remarks>
  2985. </member>
  2986. <member name="T:DiscUtils.Partitions.BiosPartitionInfo">
  2987. <summary>
  2988. Provides access to partition records in a BIOS (MBR) partition table.
  2989. </summary>
  2990. </member>
  2991. <member name="P:DiscUtils.Partitions.BiosPartitionInfo.BiosType">
  2992. <summary>
  2993. Gets the type of the partition.
  2994. </summary>
  2995. </member>
  2996. <member name="P:DiscUtils.Partitions.BiosPartitionInfo.End">
  2997. <summary>
  2998. Gets the end (inclusive) of the partition as a CHS address.
  2999. </summary>
  3000. </member>
  3001. <member name="P:DiscUtils.Partitions.BiosPartitionInfo.FirstSector">
  3002. <summary>
  3003. Gets the first sector of the partion (relative to start of disk) as a Logical Block Address.
  3004. </summary>
  3005. </member>
  3006. <member name="P:DiscUtils.Partitions.BiosPartitionInfo.GuidType">
  3007. <summary>
  3008. Always returns <see cref="T:System.Guid"/>.Empty.
  3009. </summary>
  3010. </member>
  3011. <member name="P:DiscUtils.Partitions.BiosPartitionInfo.IsActive">
  3012. <summary>
  3013. Gets a value indicating whether this partition is active (bootable).
  3014. </summary>
  3015. </member>
  3016. <member name="P:DiscUtils.Partitions.BiosPartitionInfo.IsPrimary">
  3017. <summary>
  3018. Gets a value indicating whether the partition is a primary (rather than extended) partition.
  3019. </summary>
  3020. </member>
  3021. <member name="P:DiscUtils.Partitions.BiosPartitionInfo.LastSector">
  3022. <summary>
  3023. Gets the last sector of the partion (relative to start of disk) as a Logical Block Address (inclusive).
  3024. </summary>
  3025. </member>
  3026. <member name="P:DiscUtils.Partitions.BiosPartitionInfo.PrimaryIndex">
  3027. <summary>
  3028. Gets the index of the partition in the primary partition table, or <c>-1</c> if not a primary partition.
  3029. </summary>
  3030. </member>
  3031. <member name="P:DiscUtils.Partitions.BiosPartitionInfo.Start">
  3032. <summary>
  3033. Gets the start of the partition as a CHS address.
  3034. </summary>
  3035. </member>
  3036. <member name="P:DiscUtils.Partitions.BiosPartitionInfo.TypeAsString">
  3037. <summary>
  3038. Gets the type of the partition as a string.
  3039. </summary>
  3040. </member>
  3041. <member name="M:DiscUtils.Partitions.BiosPartitionInfo.Open">
  3042. <summary>
  3043. Opens a stream to access the content of the partition.
  3044. </summary>
  3045. <returns>The new stream.</returns>
  3046. </member>
  3047. <member name="T:DiscUtils.Partitions.BiosPartitionTable">
  3048. <summary>
  3049. Represents a BIOS (MBR) Partition Table.
  3050. </summary>
  3051. </member>
  3052. <member name="M:DiscUtils.Partitions.BiosPartitionTable.#ctor(DiscUtils.VirtualDisk)">
  3053. <summary>
  3054. Initializes a new instance of the BiosPartitionTable class.
  3055. </summary>
  3056. <param name="disk">The disk containing the partition table.</param>
  3057. </member>
  3058. <member name="M:DiscUtils.Partitions.BiosPartitionTable.#ctor(System.IO.Stream,DiscUtils.Geometry)">
  3059. <summary>
  3060. Initializes a new instance of the BiosPartitionTable class.
  3061. </summary>
  3062. <param name="disk">The stream containing the disk data.</param>
  3063. <param name="diskGeometry">The geometry of the disk.</param>
  3064. </member>
  3065. <member name="P:DiscUtils.Partitions.BiosPartitionTable.BiosUserPartitions">
  3066. <summary>
  3067. Gets a collection of the partitions for storing Operating System file-systems.
  3068. </summary>
  3069. </member>
  3070. <member name="P:DiscUtils.Partitions.BiosPartitionTable.DiskGuid">
  3071. <summary>
  3072. Gets the GUID that uniquely identifies this disk, if supported (else returns <c>null</c>).
  3073. </summary>
  3074. </member>
  3075. <member name="P:DiscUtils.Partitions.BiosPartitionTable.Partitions">
  3076. <summary>
  3077. Gets a collection of the partitions for storing Operating System file-systems.
  3078. </summary>
  3079. </member>
  3080. <member name="M:DiscUtils.Partitions.BiosPartitionTable.DetectGeometry(System.IO.Stream)">
  3081. <summary>
  3082. Makes a best guess at the geometry of a disk.
  3083. </summary>
  3084. <param name="disk">String containing the disk image to detect the geometry from.</param>
  3085. <returns>The detected geometry.</returns>
  3086. </member>
  3087. <member name="M:DiscUtils.Partitions.BiosPartitionTable.IsValid(System.IO.Stream)">
  3088. <summary>
  3089. Indicates if a stream contains a valid partition table.
  3090. </summary>
  3091. <param name="disk">The stream to inspect.</param>
  3092. <returns><c>true</c> if the partition table is valid, else <c>false</c>.</returns>
  3093. </member>
  3094. <member name="M:DiscUtils.Partitions.BiosPartitionTable.Initialize(DiscUtils.VirtualDisk)">
  3095. <summary>
  3096. Creates a new partition table on a disk.
  3097. </summary>
  3098. <param name="disk">The disk to initialize.</param>
  3099. <returns>An object to access the newly created partition table.</returns>
  3100. </member>
  3101. <member name="M:DiscUtils.Partitions.BiosPartitionTable.Initialize(DiscUtils.VirtualDisk,DiscUtils.Partitions.WellKnownPartitionType)">
  3102. <summary>
  3103. Creates a new partition table on a disk containing a single partition.
  3104. </summary>
  3105. <param name="disk">The disk to initialize.</param>
  3106. <param name="type">The partition type for the single partition.</param>
  3107. <returns>An object to access the newly created partition table.</returns>
  3108. </member>
  3109. <member name="M:DiscUtils.Partitions.BiosPartitionTable.Initialize(System.IO.Stream,DiscUtils.Geometry)">
  3110. <summary>
  3111. Creates a new partition table on a disk.
  3112. </summary>
  3113. <param name="disk">The stream containing the disk data.</param>
  3114. <param name="diskGeometry">The geometry of the disk.</param>
  3115. <returns>An object to access the newly created partition table.</returns>
  3116. </member>
  3117. <member name="M:DiscUtils.Partitions.BiosPartitionTable.Create(DiscUtils.Partitions.WellKnownPartitionType,System.Boolean)">
  3118. <summary>
  3119. Creates a new partition that encompasses the entire disk.
  3120. </summary>
  3121. <param name="type">The partition type.</param>
  3122. <param name="active">Whether the partition is active (bootable).</param>
  3123. <returns>The index of the partition.</returns>
  3124. <remarks>The partition table must be empty before this method is called,
  3125. otherwise IOException is thrown.</remarks>
  3126. </member>
  3127. <member name="M:DiscUtils.Partitions.BiosPartitionTable.Create(System.Int64,DiscUtils.Partitions.WellKnownPartitionType,System.Boolean)">
  3128. <summary>
  3129. Creates a new primary partition with a target size.
  3130. </summary>
  3131. <param name="size">The target size (in bytes).</param>
  3132. <param name="type">The partition type.</param>
  3133. <param name="active">Whether the partition is active (bootable).</param>
  3134. <returns>The index of the new partition.</returns>
  3135. </member>
  3136. <member name="M:DiscUtils.Partitions.BiosPartitionTable.CreateAligned(DiscUtils.Partitions.WellKnownPartitionType,System.Boolean,System.Int32)">
  3137. <summary>
  3138. Creates a new aligned partition that encompasses the entire disk.
  3139. </summary>
  3140. <param name="type">The partition type.</param>
  3141. <param name="active">Whether the partition is active (bootable).</param>
  3142. <param name="alignment">The alignment (in bytes).</param>
  3143. <returns>The index of the partition.</returns>
  3144. <remarks>The partition table must be empty before this method is called,
  3145. otherwise IOException is thrown.</remarks>
  3146. <remarks>
  3147. Traditionally partitions were aligned to the physical structure of the underlying disk,
  3148. however with modern storage greater efficiency is acheived by aligning partitions on
  3149. large values that are a power of two.
  3150. </remarks>
  3151. </member>
  3152. <member name="M:DiscUtils.Partitions.BiosPartitionTable.CreateAligned(System.Int64,DiscUtils.Partitions.WellKnownPartitionType,System.Boolean,System.Int32)">
  3153. <summary>
  3154. Creates a new aligned partition with a target size.
  3155. </summary>
  3156. <param name="size">The target size (in bytes).</param>
  3157. <param name="type">The partition type.</param>
  3158. <param name="active">Whether the partition is active (bootable).</param>
  3159. <param name="alignment">The alignment (in bytes).</param>
  3160. <returns>The index of the new partition.</returns>
  3161. <remarks>
  3162. Traditionally partitions were aligned to the physical structure of the underlying disk,
  3163. however with modern storage greater efficiency is achieved by aligning partitions on
  3164. large values that are a power of two.
  3165. </remarks>
  3166. </member>
  3167. <member name="M:DiscUtils.Partitions.BiosPartitionTable.Delete(System.Int32)">
  3168. <summary>
  3169. Deletes a partition at a given index.
  3170. </summary>
  3171. <param name="index">The index of the partition.</param>
  3172. </member>
  3173. <member name="M:DiscUtils.Partitions.BiosPartitionTable.CreatePrimaryByCylinder(System.Int32,System.Int32,System.Byte,System.Boolean)">
  3174. <summary>
  3175. Creates a new Primary Partition that occupies whole cylinders, for best compatibility.
  3176. </summary>
  3177. <param name="first">The first cylinder to include in the partition (inclusive).</param>
  3178. <param name="last">The last cylinder to include in the partition (inclusive).</param>
  3179. <param name="type">The BIOS (MBR) type of the new partition.</param>
  3180. <param name="markActive">Whether to mark the partition active (bootable).</param>
  3181. <returns>The index of the new partition.</returns>
  3182. <remarks>If the cylinder 0 is given, the first track will not be used, to reserve space
  3183. for the meta-data at the start of the disk.</remarks>
  3184. </member>
  3185. <member name="M:DiscUtils.Partitions.BiosPartitionTable.CreatePrimaryBySector(System.Int64,System.Int64,System.Byte,System.Boolean)">
  3186. <summary>
  3187. Creates a new Primary Partition, specified by Logical Block Addresses.
  3188. </summary>
  3189. <param name="first">The LBA address of the first sector (inclusive).</param>
  3190. <param name="last">The LBA address of the last sector (inclusive).</param>
  3191. <param name="type">The BIOS (MBR) type of the new partition.</param>
  3192. <param name="markActive">Whether to mark the partition active (bootable).</param>
  3193. <returns>The index of the new partition.</returns>
  3194. </member>
  3195. <member name="M:DiscUtils.Partitions.BiosPartitionTable.SetActivePartition(System.Int32)">
  3196. <summary>
  3197. Sets the active partition.
  3198. </summary>
  3199. <param name="index">The index of the primary partition to mark bootable, or <c>-1</c> for none.</param>
  3200. <remarks>The supplied index is the index within the primary partition, see <c>PrimaryIndex</c> on <c>BiosPartitionInfo</c>.</remarks>
  3201. </member>
  3202. <member name="M:DiscUtils.Partitions.BiosPartitionTable.GetMetadataDiskExtents">
  3203. <summary>
  3204. Gets all of the disk ranges containing partition table metadata.
  3205. </summary>
  3206. <returns>Set of stream extents, indicated as byte offset from the start of the disk.</returns>
  3207. </member>
  3208. <member name="M:DiscUtils.Partitions.BiosPartitionTable.UpdateBiosGeometry(DiscUtils.Geometry)">
  3209. <summary>
  3210. Updates the CHS fields in partition records to reflect a new BIOS geometry.
  3211. </summary>
  3212. <param name="geometry">The disk's new BIOS geometry.</param>
  3213. <remarks>The partitions are not relocated to a cylinder boundary, just the CHS fields are updated on the
  3214. assumption the LBA fields are definitive.</remarks>
  3215. </member>
  3216. <member name="T:DiscUtils.Partitions.BiosPartitionTypes">
  3217. <summary>
  3218. Convenient access to well-known BIOS (MBR) Partition Types.
  3219. </summary>
  3220. </member>
  3221. <member name="F:DiscUtils.Partitions.BiosPartitionTypes.Fat12">
  3222. <summary>
  3223. Microsoft FAT12 (fewer than 32,680 sectors in the volume).
  3224. </summary>
  3225. </member>
  3226. <member name="F:DiscUtils.Partitions.BiosPartitionTypes.Fat16Small">
  3227. <summary>
  3228. Microsoft FAT16 (32,680–65,535 sectors or 16 MB–33 MB).
  3229. </summary>
  3230. </member>
  3231. <member name="F:DiscUtils.Partitions.BiosPartitionTypes.Extended">
  3232. <summary>
  3233. Extended Partition (contains other partitions).
  3234. </summary>
  3235. </member>
  3236. <member name="F:DiscUtils.Partitions.BiosPartitionTypes.Fat16">
  3237. <summary>
  3238. Microsoft BIGDOS FAT16 (33 MB–4 GB).
  3239. </summary>
  3240. </member>
  3241. <member name="F:DiscUtils.Partitions.BiosPartitionTypes.Ntfs">
  3242. <summary>
  3243. Installable File System (NTFS).
  3244. </summary>
  3245. </member>
  3246. <member name="F:DiscUtils.Partitions.BiosPartitionTypes.Fat32">
  3247. <summary>
  3248. Microsoft FAT32.
  3249. </summary>
  3250. </member>
  3251. <member name="F:DiscUtils.Partitions.BiosPartitionTypes.Fat32Lba">
  3252. <summary>
  3253. Microsoft FAT32, accessed using Int13h BIOS LBA extensions.
  3254. </summary>
  3255. </member>
  3256. <member name="F:DiscUtils.Partitions.BiosPartitionTypes.Fat16Lba">
  3257. <summary>
  3258. Microsoft BIGDOS FAT16, accessed using Int13h BIOS LBA extensions.
  3259. </summary>
  3260. </member>
  3261. <member name="F:DiscUtils.Partitions.BiosPartitionTypes.ExtendedLba">
  3262. <summary>
  3263. Extended Partition (contains other partitions), accessed using Int13h BIOS LBA extensions.
  3264. </summary>
  3265. </member>
  3266. <member name="F:DiscUtils.Partitions.BiosPartitionTypes.WindowsDynamicVolume">
  3267. <summary>
  3268. Windows Logical Disk Manager dynamic volume.
  3269. </summary>
  3270. </member>
  3271. <member name="F:DiscUtils.Partitions.BiosPartitionTypes.LinuxSwap">
  3272. <summary>
  3273. Linux Swap.
  3274. </summary>
  3275. </member>
  3276. <member name="F:DiscUtils.Partitions.BiosPartitionTypes.LinuxNative">
  3277. <summary>
  3278. Linux Native (ext2 and friends).
  3279. </summary>
  3280. </member>
  3281. <member name="F:DiscUtils.Partitions.BiosPartitionTypes.LinuxLvm">
  3282. <summary>
  3283. Linux Logical Volume Manager (LVM).
  3284. </summary>
  3285. </member>
  3286. <member name="F:DiscUtils.Partitions.BiosPartitionTypes.GptProtective">
  3287. <summary>
  3288. GUID Partition Table (GPT) protective partition, fills entire disk.
  3289. </summary>
  3290. </member>
  3291. <member name="F:DiscUtils.Partitions.BiosPartitionTypes.EfiSystem">
  3292. <summary>
  3293. EFI System partition on an MBR disk.
  3294. </summary>
  3295. </member>
  3296. <member name="M:DiscUtils.Partitions.BiosPartitionTypes.ToString(System.Byte)">
  3297. <summary>
  3298. Provides a string representation of some known BIOS partition types.
  3299. </summary>
  3300. <param name="type">The partition type to represent as a string.</param>
  3301. <returns>The string representation.</returns>
  3302. </member>
  3303. <member name="T:DiscUtils.Partitions.GuidPartitionInfo">
  3304. <summary>
  3305. Provides access to partition records in a GUID partition table.
  3306. </summary>
  3307. </member>
  3308. <member name="P:DiscUtils.Partitions.GuidPartitionInfo.Attributes">
  3309. <summary>
  3310. Gets the attributes of the partition.
  3311. </summary>
  3312. </member>
  3313. <member name="P:DiscUtils.Partitions.GuidPartitionInfo.BiosType">
  3314. <summary>
  3315. Always returns Zero.
  3316. </summary>
  3317. </member>
  3318. <member name="P:DiscUtils.Partitions.GuidPartitionInfo.FirstSector">
  3319. <summary>
  3320. Gets the first sector of the partion (relative to start of disk) as a Logical Block Address.
  3321. </summary>
  3322. </member>
  3323. <member name="P:DiscUtils.Partitions.GuidPartitionInfo.GuidType">
  3324. <summary>
  3325. Gets the type of the partition, as a GUID.
  3326. </summary>
  3327. </member>
  3328. <member name="P:DiscUtils.Partitions.GuidPartitionInfo.Identity">
  3329. <summary>
  3330. Gets the unique identity of this specific partition.
  3331. </summary>
  3332. </member>
  3333. <member name="P:DiscUtils.Partitions.GuidPartitionInfo.LastSector">
  3334. <summary>
  3335. Gets the last sector of the partion (relative to start of disk) as a Logical Block Address (inclusive).
  3336. </summary>
  3337. </member>
  3338. <member name="P:DiscUtils.Partitions.GuidPartitionInfo.Name">
  3339. <summary>
  3340. Gets the name of the partition.
  3341. </summary>
  3342. </member>
  3343. <member name="P:DiscUtils.Partitions.GuidPartitionInfo.TypeAsString">
  3344. <summary>
  3345. Gets the type of the partition as a string.
  3346. </summary>
  3347. </member>
  3348. <member name="M:DiscUtils.Partitions.GuidPartitionInfo.Open">
  3349. <summary>
  3350. Opens a stream to access the content of the partition.
  3351. </summary>
  3352. <returns>The new stream.</returns>
  3353. </member>
  3354. <member name="T:DiscUtils.Partitions.GuidPartitionTable">
  3355. <summary>
  3356. Represents a GUID Partition Table.
  3357. </summary>
  3358. </member>
  3359. <member name="M:DiscUtils.Partitions.GuidPartitionTable.#ctor(DiscUtils.VirtualDisk)">
  3360. <summary>
  3361. Initializes a new instance of the GuidPartitionTable class.
  3362. </summary>
  3363. <param name="disk">The disk containing the partition table.</param>
  3364. </member>
  3365. <member name="M:DiscUtils.Partitions.GuidPartitionTable.#ctor(System.IO.Stream,DiscUtils.Geometry)">
  3366. <summary>
  3367. Initializes a new instance of the GuidPartitionTable class.
  3368. </summary>
  3369. <param name="disk">The stream containing the disk data.</param>
  3370. <param name="diskGeometry">The geometry of the disk.</param>
  3371. </member>
  3372. <member name="P:DiscUtils.Partitions.GuidPartitionTable.DiskGuid">
  3373. <summary>
  3374. Gets the unique GPT identifier for this disk.
  3375. </summary>
  3376. </member>
  3377. <member name="P:DiscUtils.Partitions.GuidPartitionTable.FirstUsableSector">
  3378. <summary>
  3379. Gets the first sector of the disk available to hold partitions.
  3380. </summary>
  3381. </member>
  3382. <member name="P:DiscUtils.Partitions.GuidPartitionTable.LastUsableSector">
  3383. <summary>
  3384. Gets the last sector of the disk available to hold partitions.
  3385. </summary>
  3386. </member>
  3387. <member name="P:DiscUtils.Partitions.GuidPartitionTable.Partitions">
  3388. <summary>
  3389. Gets a collection of the partitions for storing Operating System file-systems.
  3390. </summary>
  3391. </member>
  3392. <member name="M:DiscUtils.Partitions.GuidPartitionTable.Initialize(DiscUtils.VirtualDisk)">
  3393. <summary>
  3394. Creates a new partition table on a disk.
  3395. </summary>
  3396. <param name="disk">The disk to initialize.</param>
  3397. <returns>An object to access the newly created partition table.</returns>
  3398. </member>
  3399. <member name="M:DiscUtils.Partitions.GuidPartitionTable.Initialize(System.IO.Stream,DiscUtils.Geometry)">
  3400. <summary>
  3401. Creates a new partition table on a disk.
  3402. </summary>
  3403. <param name="disk">The stream containing the disk data.</param>
  3404. <param name="diskGeometry">The geometry of the disk.</param>
  3405. <returns>An object to access the newly created partition table.</returns>
  3406. </member>
  3407. <member name="M:DiscUtils.Partitions.GuidPartitionTable.Initialize(DiscUtils.VirtualDisk,DiscUtils.Partitions.WellKnownPartitionType)">
  3408. <summary>
  3409. Creates a new partition table on a disk containing a single partition.
  3410. </summary>
  3411. <param name="disk">The disk to initialize.</param>
  3412. <param name="type">The partition type for the single partition.</param>
  3413. <returns>An object to access the newly created partition table.</returns>
  3414. </member>
  3415. <member name="M:DiscUtils.Partitions.GuidPartitionTable.Create(DiscUtils.Partitions.WellKnownPartitionType,System.Boolean)">
  3416. <summary>
  3417. Creates a new partition that encompasses the entire disk.
  3418. </summary>
  3419. <param name="type">The partition type.</param>
  3420. <param name="active">Whether the partition is active (bootable).</param>
  3421. <returns>The index of the partition.</returns>
  3422. <remarks>The partition table must be empty before this method is called,
  3423. otherwise IOException is thrown.</remarks>
  3424. </member>
  3425. <member name="M:DiscUtils.Partitions.GuidPartitionTable.Create(System.Int64,DiscUtils.Partitions.WellKnownPartitionType,System.Boolean)">
  3426. <summary>
  3427. Creates a new primary partition with a target size.
  3428. </summary>
  3429. <param name="size">The target size (in bytes).</param>
  3430. <param name="type">The partition type.</param>
  3431. <param name="active">Whether the partition is active (bootable).</param>
  3432. <returns>The index of the new partition.</returns>
  3433. </member>
  3434. <member name="M:DiscUtils.Partitions.GuidPartitionTable.CreateAligned(DiscUtils.Partitions.WellKnownPartitionType,System.Boolean,System.Int32)">
  3435. <summary>
  3436. Creates a new aligned partition that encompasses the entire disk.
  3437. </summary>
  3438. <param name="type">The partition type.</param>
  3439. <param name="active">Whether the partition is active (bootable).</param>
  3440. <param name="alignment">The alignment (in bytes).</param>
  3441. <returns>The index of the partition.</returns>
  3442. <remarks>The partition table must be empty before this method is called,
  3443. otherwise IOException is thrown.</remarks>
  3444. <remarks>
  3445. Traditionally partitions were aligned to the physical structure of the underlying disk,
  3446. however with modern storage greater efficiency is acheived by aligning partitions on
  3447. large values that are a power of two.
  3448. </remarks>
  3449. </member>
  3450. <member name="M:DiscUtils.Partitions.GuidPartitionTable.CreateAligned(System.Int64,DiscUtils.Partitions.WellKnownPartitionType,System.Boolean,System.Int32)">
  3451. <summary>
  3452. Creates a new aligned partition with a target size.
  3453. </summary>
  3454. <param name="size">The target size (in bytes).</param>
  3455. <param name="type">The partition type.</param>
  3456. <param name="active">Whether the partition is active (bootable).</param>
  3457. <param name="alignment">The alignment (in bytes).</param>
  3458. <returns>The index of the new partition.</returns>
  3459. <remarks>
  3460. Traditionally partitions were aligned to the physical structure of the underlying disk,
  3461. however with modern storage greater efficiency is achieved by aligning partitions on
  3462. large values that are a power of two.
  3463. </remarks>
  3464. </member>
  3465. <member name="M:DiscUtils.Partitions.GuidPartitionTable.Create(System.Int64,System.Int64,System.Guid,System.Int64,System.String)">
  3466. <summary>
  3467. Creates a new GUID partition on the disk.
  3468. </summary>
  3469. <param name="startSector">The first sector of the partition.</param>
  3470. <param name="endSector">The last sector of the partition.</param>
  3471. <param name="type">The partition type.</param>
  3472. <param name="attributes">The partition attributes.</param>
  3473. <param name="name">The name of the partition.</param>
  3474. <returns>The index of the new partition.</returns>
  3475. <remarks>No checking is performed on the parameters, the caller is
  3476. responsible for ensuring that the partition does not overlap other partitions.</remarks>
  3477. </member>
  3478. <member name="M:DiscUtils.Partitions.GuidPartitionTable.Delete(System.Int32)">
  3479. <summary>
  3480. Deletes a partition at a given index.
  3481. </summary>
  3482. <param name="index">The index of the partition.</param>
  3483. </member>
  3484. <member name="T:DiscUtils.Partitions.GuidPartitionTypes">
  3485. <summary>
  3486. Convenient access to well known GPT partition types.
  3487. </summary>
  3488. </member>
  3489. <member name="F:DiscUtils.Partitions.GuidPartitionTypes.EfiSystem">
  3490. <summary>
  3491. EFI system partition.
  3492. </summary>
  3493. </member>
  3494. <member name="F:DiscUtils.Partitions.GuidPartitionTypes.BiosBoot">
  3495. <summary>
  3496. BIOS boot partition.
  3497. </summary>
  3498. </member>
  3499. <member name="F:DiscUtils.Partitions.GuidPartitionTypes.MicrosoftReserved">
  3500. <summary>
  3501. Microsoft reserved partition.
  3502. </summary>
  3503. </member>
  3504. <member name="F:DiscUtils.Partitions.GuidPartitionTypes.WindowsBasicData">
  3505. <summary>
  3506. Windows basic data partition.
  3507. </summary>
  3508. </member>
  3509. <member name="F:DiscUtils.Partitions.GuidPartitionTypes.LinuxLvm">
  3510. <summary>
  3511. Linux LVM partition.
  3512. </summary>
  3513. </member>
  3514. <member name="F:DiscUtils.Partitions.GuidPartitionTypes.LinuxSwap">
  3515. <summary>
  3516. Linux swap partition.
  3517. </summary>
  3518. </member>
  3519. <member name="F:DiscUtils.Partitions.GuidPartitionTypes.WindowsLdmMetadata">
  3520. <summary>
  3521. Windows Logical Disk Manager metadata.
  3522. </summary>
  3523. </member>
  3524. <member name="F:DiscUtils.Partitions.GuidPartitionTypes.WindowsLdmData">
  3525. <summary>
  3526. Windows Logical Disk Manager data.
  3527. </summary>
  3528. </member>
  3529. <member name="M:DiscUtils.Partitions.GuidPartitionTypes.Convert(DiscUtils.Partitions.WellKnownPartitionType)">
  3530. <summary>
  3531. Converts a well known partition type to a Guid.
  3532. </summary>
  3533. <param name="wellKnown">The value to convert.</param>
  3534. <returns>The GUID value.</returns>
  3535. </member>
  3536. <member name="T:DiscUtils.Partitions.PartitionInfo">
  3537. <summary>
  3538. Base class representing a disk partition.
  3539. </summary>
  3540. <remarks>The purpose of this class is to provide a minimal view of a partition,
  3541. such that callers can access existing partitions without specific knowledge of
  3542. the partitioning system.</remarks>
  3543. </member>
  3544. <member name="P:DiscUtils.Partitions.PartitionInfo.BiosType">
  3545. <summary>
  3546. Gets the type of the partition, in legacy BIOS form, when available.
  3547. </summary>
  3548. <remarks>Zero for GUID-style partitions.</remarks>
  3549. </member>
  3550. <member name="P:DiscUtils.Partitions.PartitionInfo.FirstSector">
  3551. <summary>
  3552. Gets the first sector of the partion (relative to start of disk) as a Logical Block Address.
  3553. </summary>
  3554. </member>
  3555. <member name="P:DiscUtils.Partitions.PartitionInfo.GuidType">
  3556. <summary>
  3557. Gets the type of the partition, as a GUID, when available.
  3558. </summary>
  3559. <remarks><see cref="T:System.Guid"/>.Empty for MBR-style partitions.</remarks>
  3560. </member>
  3561. <member name="P:DiscUtils.Partitions.PartitionInfo.LastSector">
  3562. <summary>
  3563. Gets the last sector of the partion (relative to start of disk) as a Logical Block Address (inclusive).
  3564. </summary>
  3565. </member>
  3566. <member name="P:DiscUtils.Partitions.PartitionInfo.SectorCount">
  3567. <summary>
  3568. Gets the length of the partition in sectors.
  3569. </summary>
  3570. </member>
  3571. <member name="P:DiscUtils.Partitions.PartitionInfo.TypeAsString">
  3572. <summary>
  3573. Gets the partition type as a 'friendly' string.
  3574. </summary>
  3575. </member>
  3576. <member name="P:DiscUtils.Partitions.PartitionInfo.VolumeType">
  3577. <summary>
  3578. Gets the physical volume type for this type of partition.
  3579. </summary>
  3580. </member>
  3581. <member name="M:DiscUtils.Partitions.PartitionInfo.Open">
  3582. <summary>
  3583. Opens a stream that accesses the partition's contents.
  3584. </summary>
  3585. <returns>The new stream.</returns>
  3586. </member>
  3587. <member name="M:DiscUtils.Partitions.PartitionInfo.ToString">
  3588. <summary>
  3589. Gets a summary of the partition information as 'first - last (type)'.
  3590. </summary>
  3591. <returns>A string representation of the partition information.</returns>
  3592. </member>
  3593. <member name="T:DiscUtils.Partitions.PartitionTable">
  3594. <summary>
  3595. Base class for classes which represent a disk partitioning scheme.
  3596. </summary>
  3597. <remarks>After modifying the table, by creating or deleting a partition assume that any
  3598. previously stored partition indexes of higher value are no longer valid. Re-enumerate
  3599. the partitions to discover the next index-to-partition mapping.</remarks>
  3600. </member>
  3601. <member name="P:DiscUtils.Partitions.PartitionTable.Count">
  3602. <summary>
  3603. Gets the number of User partitions on the disk.
  3604. </summary>
  3605. </member>
  3606. <member name="P:DiscUtils.Partitions.PartitionTable.DiskGuid">
  3607. <summary>
  3608. Gets the GUID that uniquely identifies this disk, if supported (else returns <c>null</c>).
  3609. </summary>
  3610. </member>
  3611. <member name="P:DiscUtils.Partitions.PartitionTable.Item(System.Int32)">
  3612. <summary>
  3613. Gets information about a particular User partition.
  3614. </summary>
  3615. <param name="index">The index of the partition.</param>
  3616. <returns>Information about the partition.</returns>
  3617. </member>
  3618. <member name="P:DiscUtils.Partitions.PartitionTable.Partitions">
  3619. <summary>
  3620. Gets the list of partitions that contain user data (i.e. non-system / empty).
  3621. </summary>
  3622. </member>
  3623. <member name="M:DiscUtils.Partitions.PartitionTable.IsPartitioned(System.IO.Stream)">
  3624. <summary>
  3625. Determines if a disk is partitioned with a known partitioning scheme.
  3626. </summary>
  3627. <param name="content">The content of the disk to check.</param>
  3628. <returns><c>true</c> if the disk is partitioned, else <c>false</c>.</returns>
  3629. </member>
  3630. <member name="M:DiscUtils.Partitions.PartitionTable.IsPartitioned(DiscUtils.VirtualDisk)">
  3631. <summary>
  3632. Determines if a disk is partitioned with a known partitioning scheme.
  3633. </summary>
  3634. <param name="disk">The disk to check.</param>
  3635. <returns><c>true</c> if the disk is partitioned, else <c>false</c>.</returns>
  3636. </member>
  3637. <member name="M:DiscUtils.Partitions.PartitionTable.GetPartitionTables(DiscUtils.VirtualDisk)">
  3638. <summary>
  3639. Gets all of the partition tables found on a disk.
  3640. </summary>
  3641. <param name="disk">The disk to inspect.</param>
  3642. <returns>It is rare for a disk to have multiple partition tables, but theoretically
  3643. possible.</returns>
  3644. </member>
  3645. <member name="M:DiscUtils.Partitions.PartitionTable.GetPartitionTables(System.IO.Stream)">
  3646. <summary>
  3647. Gets all of the partition tables found on a disk.
  3648. </summary>
  3649. <param name="contentStream">The content of the disk to inspect.</param>
  3650. <returns>It is rare for a disk to have multiple partition tables, but theoretically
  3651. possible.</returns>
  3652. </member>
  3653. <member name="M:DiscUtils.Partitions.PartitionTable.Create(DiscUtils.Partitions.WellKnownPartitionType,System.Boolean)">
  3654. <summary>
  3655. Creates a new partition that encompasses the entire disk.
  3656. </summary>
  3657. <param name="type">The partition type.</param>
  3658. <param name="active">Whether the partition is active (bootable).</param>
  3659. <returns>The index of the partition.</returns>
  3660. <remarks>The partition table must be empty before this method is called,
  3661. otherwise IOException is thrown.</remarks>
  3662. </member>
  3663. <member name="M:DiscUtils.Partitions.PartitionTable.Create(System.Int64,DiscUtils.Partitions.WellKnownPartitionType,System.Boolean)">
  3664. <summary>
  3665. Creates a new partition with a target size.
  3666. </summary>
  3667. <param name="size">The target size (in bytes).</param>
  3668. <param name="type">The partition type.</param>
  3669. <param name="active">Whether the partition is active (bootable).</param>
  3670. <returns>The index of the new partition.</returns>
  3671. </member>
  3672. <member name="M:DiscUtils.Partitions.PartitionTable.CreateAligned(DiscUtils.Partitions.WellKnownPartitionType,System.Boolean,System.Int32)">
  3673. <summary>
  3674. Creates a new aligned partition that encompasses the entire disk.
  3675. </summary>
  3676. <param name="type">The partition type.</param>
  3677. <param name="active">Whether the partition is active (bootable).</param>
  3678. <param name="alignment">The alignment (in byte).</param>
  3679. <returns>The index of the partition.</returns>
  3680. <remarks>The partition table must be empty before this method is called,
  3681. otherwise IOException is thrown.</remarks>
  3682. <remarks>
  3683. Traditionally partitions were aligned to the physical structure of the underlying disk,
  3684. however with modern storage greater efficiency is acheived by aligning partitions on
  3685. large values that are a power of two.
  3686. </remarks>
  3687. </member>
  3688. <member name="M:DiscUtils.Partitions.PartitionTable.CreateAligned(System.Int64,DiscUtils.Partitions.WellKnownPartitionType,System.Boolean,System.Int32)">
  3689. <summary>
  3690. Creates a new aligned partition with a target size.
  3691. </summary>
  3692. <param name="size">The target size (in bytes).</param>
  3693. <param name="type">The partition type.</param>
  3694. <param name="active">Whether the partition is active (bootable).</param>
  3695. <param name="alignment">The alignment (in byte).</param>
  3696. <returns>The index of the new partition.</returns>
  3697. <remarks>
  3698. Traditionally partitions were aligned to the physical structure of the underlying disk,
  3699. however with modern storage greater efficiency is achieved by aligning partitions on
  3700. large values that are a power of two.
  3701. </remarks>
  3702. </member>
  3703. <member name="M:DiscUtils.Partitions.PartitionTable.Delete(System.Int32)">
  3704. <summary>
  3705. Deletes a partition at a given index.
  3706. </summary>
  3707. <param name="index">The index of the partition.</param>
  3708. </member>
  3709. <member name="T:DiscUtils.Partitions.WellKnownPartitionType">
  3710. <summary>
  3711. Enumeration of partition-table technology neutral partition types.
  3712. </summary>
  3713. </member>
  3714. <member name="F:DiscUtils.Partitions.WellKnownPartitionType.WindowsFat">
  3715. <summary>
  3716. Windows FAT-based partition.
  3717. </summary>
  3718. </member>
  3719. <member name="F:DiscUtils.Partitions.WellKnownPartitionType.WindowsNtfs">
  3720. <summary>
  3721. Windows NTFS-based partition.
  3722. </summary>
  3723. </member>
  3724. <member name="F:DiscUtils.Partitions.WellKnownPartitionType.Linux">
  3725. <summary>
  3726. Linux native file system.
  3727. </summary>
  3728. </member>
  3729. <member name="F:DiscUtils.Partitions.WellKnownPartitionType.LinuxSwap">
  3730. <summary>
  3731. Linux swap.
  3732. </summary>
  3733. </member>
  3734. <member name="F:DiscUtils.Partitions.WellKnownPartitionType.LinuxLvm">
  3735. <summary>
  3736. Linux Logical Volume Manager (LVM).
  3737. </summary>
  3738. </member>
  3739. <member name="T:DiscUtils.PhysicalVolumeInfo">
  3740. <summary>
  3741. Information about a physical disk volume, which may be a partition or an entire disk.
  3742. </summary>
  3743. </member>
  3744. <member name="M:DiscUtils.PhysicalVolumeInfo.#ctor(System.String,DiscUtils.VirtualDisk,DiscUtils.Partitions.PartitionInfo)">
  3745. <summary>
  3746. Initializes a new instance of the PhysicalVolumeInfo class.
  3747. </summary>
  3748. <param name="diskId">The containing disk's identity.</param>
  3749. <param name="disk">The disk containing the partition.</param>
  3750. <param name="partitionInfo">Information about the partition.</param>
  3751. <remarks>Use this constructor to represent a (BIOS or GPT) partition.</remarks>
  3752. </member>
  3753. <member name="M:DiscUtils.PhysicalVolumeInfo.#ctor(System.String,DiscUtils.VirtualDisk)">
  3754. <summary>
  3755. Initializes a new instance of the PhysicalVolumeInfo class.
  3756. </summary>
  3757. <param name="diskId">The identity of the disk.</param>
  3758. <param name="disk">The disk itself.</param>
  3759. <remarks>Use this constructor to represent an entire disk as a single volume.</remarks>
  3760. </member>
  3761. <member name="P:DiscUtils.PhysicalVolumeInfo.BiosGeometry">
  3762. <summary>
  3763. Gets the disk geometry of the underlying storage medium (as used in BIOS calls), may be null.
  3764. </summary>
  3765. </member>
  3766. <member name="P:DiscUtils.PhysicalVolumeInfo.BiosType">
  3767. <summary>
  3768. Gets the one-byte BIOS type for this volume, which indicates the content.
  3769. </summary>
  3770. </member>
  3771. <member name="P:DiscUtils.PhysicalVolumeInfo.DiskIdentity">
  3772. <summary>
  3773. Gets the unique identity of the disk containing the volume, if known.
  3774. </summary>
  3775. </member>
  3776. <member name="P:DiscUtils.PhysicalVolumeInfo.DiskSignature">
  3777. <summary>
  3778. Gets the signature of the disk containing the volume (only valid for partition-type volumes).
  3779. </summary>
  3780. </member>
  3781. <member name="P:DiscUtils.PhysicalVolumeInfo.Identity">
  3782. <summary>
  3783. Gets the stable identity for this physical volume.
  3784. </summary>
  3785. <remarks>The stability of the identity depends the disk structure.
  3786. In some cases the identity may include a simple index, when no other information
  3787. is available. Best practice is to add disks to the Volume Manager in a stable
  3788. order, if the stability of this identity is paramount.</remarks>
  3789. </member>
  3790. <member name="P:DiscUtils.PhysicalVolumeInfo.Length">
  3791. <summary>
  3792. Gets the size of the volume, in bytes.
  3793. </summary>
  3794. </member>
  3795. <member name="P:DiscUtils.PhysicalVolumeInfo.Partition">
  3796. <summary>
  3797. Gets the underlying partition (if any).
  3798. </summary>
  3799. </member>
  3800. <member name="P:DiscUtils.PhysicalVolumeInfo.PartitionIdentity">
  3801. <summary>
  3802. Gets the unique identity of the physical partition, if known.
  3803. </summary>
  3804. </member>
  3805. <member name="P:DiscUtils.PhysicalVolumeInfo.PhysicalGeometry">
  3806. <summary>
  3807. Gets the disk geometry of the underlying storage medium, if any (may be null).
  3808. </summary>
  3809. </member>
  3810. <member name="P:DiscUtils.PhysicalVolumeInfo.PhysicalStartSector">
  3811. <summary>
  3812. Gets the offset of this volume in the underlying storage medium, if any (may be Zero).
  3813. </summary>
  3814. </member>
  3815. <member name="P:DiscUtils.PhysicalVolumeInfo.VolumeType">
  3816. <summary>
  3817. Gets the type of the volume.
  3818. </summary>
  3819. </member>
  3820. <member name="M:DiscUtils.PhysicalVolumeInfo.Open">
  3821. <summary>
  3822. Opens the volume, providing access to its contents.
  3823. </summary>
  3824. <returns>A stream that can be used to access the volume.</returns>
  3825. </member>
  3826. <member name="T:DiscUtils.PhysicalVolumeType">
  3827. <summary>
  3828. Enumeration of possible types of physical volume.
  3829. </summary>
  3830. </member>
  3831. <member name="F:DiscUtils.PhysicalVolumeType.None">
  3832. <summary>
  3833. Unknown type.
  3834. </summary>
  3835. </member>
  3836. <member name="F:DiscUtils.PhysicalVolumeType.EntireDisk">
  3837. <summary>
  3838. Physical volume encompasses the entire disk.
  3839. </summary>
  3840. </member>
  3841. <member name="F:DiscUtils.PhysicalVolumeType.BiosPartition">
  3842. <summary>
  3843. Physical volume is defined by a BIOS-style partition table.
  3844. </summary>
  3845. </member>
  3846. <member name="F:DiscUtils.PhysicalVolumeType.GptPartition">
  3847. <summary>
  3848. Physical volume is defined by a GUID partition table.
  3849. </summary>
  3850. </member>
  3851. <member name="F:DiscUtils.PhysicalVolumeType.ApplePartition">
  3852. <summary>
  3853. Physical volume is defined by an Apple partition map.
  3854. </summary>
  3855. </member>
  3856. <member name="T:DiscUtils.Raw.Disk">
  3857. <summary>
  3858. Represents a raw disk image.
  3859. </summary>
  3860. <remarks>This disk format is simply an uncompressed capture of all blocks on a disk.</remarks>
  3861. </member>
  3862. <member name="M:DiscUtils.Raw.Disk.#ctor(System.IO.Stream,DiscUtils.Streams.Ownership)">
  3863. <summary>
  3864. Initializes a new instance of the Disk class.
  3865. </summary>
  3866. <param name="stream">The stream to read.</param>
  3867. <param name="ownsStream">Indicates if the new instance should control the lifetime of the stream.</param>
  3868. </member>
  3869. <member name="M:DiscUtils.Raw.Disk.#ctor(System.IO.Stream,DiscUtils.Streams.Ownership,DiscUtils.Geometry)">
  3870. <summary>
  3871. Initializes a new instance of the Disk class.
  3872. </summary>
  3873. <param name="stream">The stream to read.</param>
  3874. <param name="ownsStream">Indicates if the new instance should control the lifetime of the stream.</param>
  3875. <param name="geometry">The emulated geometry of the disk.</param>
  3876. </member>
  3877. <member name="M:DiscUtils.Raw.Disk.#ctor(System.String)">
  3878. <summary>
  3879. Initializes a new instance of the Disk class.
  3880. </summary>
  3881. <param name="path">The path to the disk image.</param>
  3882. </member>
  3883. <member name="M:DiscUtils.Raw.Disk.#ctor(System.String,System.IO.FileAccess)">
  3884. <summary>
  3885. Initializes a new instance of the Disk class.
  3886. </summary>
  3887. <param name="path">The path to the disk image.</param>
  3888. <param name="access">The access requested to the disk.</param>
  3889. </member>
  3890. <member name="M:DiscUtils.Raw.Disk.#ctor(DiscUtils.Raw.DiskImageFile)">
  3891. <summary>
  3892. Initializes a new instance of the Disk class.
  3893. </summary>
  3894. <param name="file">The contents of the disk.</param>
  3895. </member>
  3896. <member name="P:DiscUtils.Raw.Disk.Capacity">
  3897. <summary>
  3898. Gets the capacity of the disk (in bytes).
  3899. </summary>
  3900. </member>
  3901. <member name="P:DiscUtils.Raw.Disk.Content">
  3902. <summary>
  3903. Gets the content of the disk as a stream.
  3904. </summary>
  3905. <remarks>Note the returned stream is not guaranteed to be at any particular position. The actual position
  3906. will depend on the last partition table/file system activity, since all access to the disk contents pass
  3907. through a single stream instance. Set the stream position before accessing the stream.</remarks>
  3908. </member>
  3909. <member name="P:DiscUtils.Raw.Disk.DiskClass">
  3910. <summary>
  3911. Gets the type of disk represented by this object.
  3912. </summary>
  3913. </member>
  3914. <member name="P:DiscUtils.Raw.Disk.DiskTypeInfo">
  3915. <summary>
  3916. Gets information about the type of disk.
  3917. </summary>
  3918. <remarks>This property provides access to meta-data about the disk format, for example whether the
  3919. BIOS geometry is preserved in the disk file.</remarks>
  3920. </member>
  3921. <member name="P:DiscUtils.Raw.Disk.Geometry">
  3922. <summary>
  3923. Gets the geometry of the disk.
  3924. </summary>
  3925. </member>
  3926. <member name="P:DiscUtils.Raw.Disk.Layers">
  3927. <summary>
  3928. Gets the layers that make up the disk.
  3929. </summary>
  3930. </member>
  3931. <member name="M:DiscUtils.Raw.Disk.Initialize(System.IO.Stream,DiscUtils.Streams.Ownership,System.Int64)">
  3932. <summary>
  3933. Initializes a stream as an unformatted disk.
  3934. </summary>
  3935. <param name="stream">The stream to initialize.</param>
  3936. <param name="ownsStream">Indicates if the new instance controls the lifetime of the stream.</param>
  3937. <param name="capacity">The desired capacity of the new disk.</param>
  3938. <returns>An object that accesses the stream as a disk.</returns>
  3939. </member>
  3940. <member name="M:DiscUtils.Raw.Disk.Initialize(System.IO.Stream,DiscUtils.Streams.Ownership,System.Int64,DiscUtils.Geometry)">
  3941. <summary>
  3942. Initializes a stream as an unformatted disk.
  3943. </summary>
  3944. <param name="stream">The stream to initialize.</param>
  3945. <param name="ownsStream">Indicates if the new instance controls the lifetime of the stream.</param>
  3946. <param name="capacity">The desired capacity of the new disk.</param>
  3947. <param name="geometry">The desired geometry of the new disk, or <c>null</c> for default.</param>
  3948. <returns>An object that accesses the stream as a disk.</returns>
  3949. </member>
  3950. <member name="M:DiscUtils.Raw.Disk.Initialize(System.IO.Stream,DiscUtils.Streams.Ownership,DiscUtils.FloppyDiskType)">
  3951. <summary>
  3952. Initializes a stream as an unformatted floppy disk.
  3953. </summary>
  3954. <param name="stream">The stream to initialize.</param>
  3955. <param name="ownsStream">Indicates if the new instance controls the lifetime of the stream.</param>
  3956. <param name="type">The type of floppy disk image to create.</param>
  3957. <returns>An object that accesses the stream as a disk.</returns>
  3958. </member>
  3959. <member name="M:DiscUtils.Raw.Disk.CreateDifferencingDisk(DiscUtils.DiscFileSystem,System.String)">
  3960. <summary>
  3961. Create a new differencing disk, possibly within an existing disk.
  3962. </summary>
  3963. <param name="fileSystem">The file system to create the disk on.</param>
  3964. <param name="path">The path (or URI) for the disk to create.</param>
  3965. <returns>The newly created disk.</returns>
  3966. </member>
  3967. <member name="M:DiscUtils.Raw.Disk.CreateDifferencingDisk(System.String)">
  3968. <summary>
  3969. Create a new differencing disk.
  3970. </summary>
  3971. <param name="path">The path (or URI) for the disk to create.</param>
  3972. <returns>The newly created disk.</returns>
  3973. </member>
  3974. <member name="M:DiscUtils.Raw.Disk.Dispose(System.Boolean)">
  3975. <summary>
  3976. Disposes of underlying resources.
  3977. </summary>
  3978. <param name="disposing">Set to <c>true</c> if called within Dispose(),
  3979. else <c>false</c>.</param>
  3980. </member>
  3981. <member name="T:DiscUtils.Raw.DiskImageFile">
  3982. <summary>
  3983. Represents a single raw disk image file.
  3984. </summary>
  3985. </member>
  3986. <member name="M:DiscUtils.Raw.DiskImageFile.#ctor(System.IO.Stream)">
  3987. <summary>
  3988. Initializes a new instance of the DiskImageFile class.
  3989. </summary>
  3990. <param name="stream">The stream to interpret.</param>
  3991. </member>
  3992. <member name="M:DiscUtils.Raw.DiskImageFile.#ctor(System.IO.Stream,DiscUtils.Streams.Ownership,DiscUtils.Geometry)">
  3993. <summary>
  3994. Initializes a new instance of the DiskImageFile class.
  3995. </summary>
  3996. <param name="stream">The stream to interpret.</param>
  3997. <param name="ownsStream">Indicates if the new instance should control the lifetime of the stream.</param>
  3998. <param name="geometry">The emulated geometry of the disk.</param>
  3999. </member>
  4000. <member name="P:DiscUtils.Raw.DiskImageFile.DiskType">
  4001. <summary>
  4002. Gets the type of disk represented by this object.
  4003. </summary>
  4004. </member>
  4005. <member name="P:DiscUtils.Raw.DiskImageFile.Geometry">
  4006. <summary>
  4007. Gets the geometry of the file.
  4008. </summary>
  4009. </member>
  4010. <member name="P:DiscUtils.Raw.DiskImageFile.IsSparse">
  4011. <summary>
  4012. Gets a value indicating if the layer only stores meaningful sectors.
  4013. </summary>
  4014. </member>
  4015. <member name="P:DiscUtils.Raw.DiskImageFile.NeedsParent">
  4016. <summary>
  4017. Gets a value indicating whether the file is a differencing disk.
  4018. </summary>
  4019. </member>
  4020. <member name="M:DiscUtils.Raw.DiskImageFile.Initialize(System.IO.Stream,DiscUtils.Streams.Ownership,System.Int64,DiscUtils.Geometry)">
  4021. <summary>
  4022. Initializes a stream as a raw disk image.
  4023. </summary>
  4024. <param name="stream">The stream to initialize.</param>
  4025. <param name="ownsStream">Indicates if the new instance controls the lifetime of the stream.</param>
  4026. <param name="capacity">The desired capacity of the new disk.</param>
  4027. <param name="geometry">The geometry of the new disk.</param>
  4028. <returns>An object that accesses the stream as a raw disk image.</returns>
  4029. </member>
  4030. <member name="M:DiscUtils.Raw.DiskImageFile.Initialize(System.IO.Stream,DiscUtils.Streams.Ownership,DiscUtils.FloppyDiskType)">
  4031. <summary>
  4032. Initializes a stream as an unformatted floppy disk.
  4033. </summary>
  4034. <param name="stream">The stream to initialize.</param>
  4035. <param name="ownsStream">Indicates if the new instance controls the lifetime of the stream.</param>
  4036. <param name="type">The type of floppy disk image to create.</param>
  4037. <returns>An object that accesses the stream as a disk.</returns>
  4038. </member>
  4039. <member name="M:DiscUtils.Raw.DiskImageFile.OpenContent(DiscUtils.Streams.SparseStream,DiscUtils.Streams.Ownership)">
  4040. <summary>
  4041. Gets the content of this layer.
  4042. </summary>
  4043. <param name="parent">The parent stream (if any).</param>
  4044. <param name="ownsParent">Controls ownership of the parent stream.</param>
  4045. <returns>The content as a stream.</returns>
  4046. </member>
  4047. <member name="M:DiscUtils.Raw.DiskImageFile.GetParentLocations">
  4048. <summary>
  4049. Gets the possible locations of the parent file (if any).
  4050. </summary>
  4051. <returns>Array of strings, empty if no parent.</returns>
  4052. </member>
  4053. <member name="M:DiscUtils.Raw.DiskImageFile.Dispose(System.Boolean)">
  4054. <summary>
  4055. Disposes of underlying resources.
  4056. </summary>
  4057. <param name="disposing">Set to <c>true</c> if called within Dispose(),
  4058. else <c>false</c>.</param>
  4059. </member>
  4060. <member name="M:DiscUtils.Raw.DiskImageFile.DetectGeometry(System.IO.Stream)">
  4061. <summary>
  4062. Calculates the best guess geometry of a disk.
  4063. </summary>
  4064. <param name="disk">The disk to detect the geometry of.</param>
  4065. <returns>The geometry of the disk.</returns>
  4066. </member>
  4067. <member name="M:DiscUtils.Raw.DiskImageFile.DetectDiskType(System.Int64)">
  4068. <summary>
  4069. Calculates the best guess disk type (i.e. floppy or hard disk).
  4070. </summary>
  4071. <param name="capacity">The capacity of the disk.</param>
  4072. <returns>The disk type.</returns>
  4073. </member>
  4074. <member name="T:DiscUtils.ReadOnlyDiscFileSystem">
  4075. <summary>
  4076. Base class for file systems that are by their nature read-only, causes NotSupportedException to be thrown
  4077. from all methods that are always invalid.
  4078. </summary>
  4079. </member>
  4080. <member name="M:DiscUtils.ReadOnlyDiscFileSystem.#ctor">
  4081. <summary>
  4082. Initializes a new instance of the ReadOnlyDiscFileSystem class.
  4083. </summary>
  4084. </member>
  4085. <member name="M:DiscUtils.ReadOnlyDiscFileSystem.#ctor(DiscUtils.DiscFileSystemOptions)">
  4086. <summary>
  4087. Initializes a new instance of the ReadOnlyDiscFileSystem class.
  4088. </summary>
  4089. <param name="defaultOptions">The options instance to use for this file system instance.</param>
  4090. </member>
  4091. <member name="P:DiscUtils.ReadOnlyDiscFileSystem.CanWrite">
  4092. <summary>
  4093. Indicates whether the file system is read-only or read-write.
  4094. </summary>
  4095. <returns>Always false.</returns>
  4096. </member>
  4097. <member name="M:DiscUtils.ReadOnlyDiscFileSystem.CopyFile(System.String,System.String,System.Boolean)">
  4098. <summary>
  4099. Copies a file - not supported on read-only file systems.
  4100. </summary>
  4101. <param name="sourceFile">The source file.</param>
  4102. <param name="destinationFile">The destination file.</param>
  4103. <param name="overwrite">Whether to permit over-writing of an existing file.</param>
  4104. </member>
  4105. <member name="M:DiscUtils.ReadOnlyDiscFileSystem.CreateDirectory(System.String)">
  4106. <summary>
  4107. Creates a directory - not supported on read-only file systems.
  4108. </summary>
  4109. <param name="path">The path of the new directory.</param>
  4110. </member>
  4111. <member name="M:DiscUtils.ReadOnlyDiscFileSystem.DeleteDirectory(System.String)">
  4112. <summary>
  4113. Deletes a directory - not supported on read-only file systems.
  4114. </summary>
  4115. <param name="path">The path of the directory to delete.</param>
  4116. </member>
  4117. <member name="M:DiscUtils.ReadOnlyDiscFileSystem.DeleteFile(System.String)">
  4118. <summary>
  4119. Deletes a file - not supported on read-only file systems.
  4120. </summary>
  4121. <param name="path">The path of the file to delete.</param>
  4122. </member>
  4123. <member name="M:DiscUtils.ReadOnlyDiscFileSystem.MoveDirectory(System.String,System.String)">
  4124. <summary>
  4125. Moves a directory - not supported on read-only file systems.
  4126. </summary>
  4127. <param name="sourceDirectoryName">The directory to move.</param>
  4128. <param name="destinationDirectoryName">The target directory name.</param>
  4129. </member>
  4130. <member name="M:DiscUtils.ReadOnlyDiscFileSystem.MoveFile(System.String,System.String,System.Boolean)">
  4131. <summary>
  4132. Moves a file - not supported on read-only file systems.
  4133. </summary>
  4134. <param name="sourceName">The file to move.</param>
  4135. <param name="destinationName">The target file name.</param>
  4136. <param name="overwrite">Whether to allow an existing file to be overwritten.</param>
  4137. </member>
  4138. <member name="M:DiscUtils.ReadOnlyDiscFileSystem.OpenFile(System.String,System.IO.FileMode)">
  4139. <summary>
  4140. Opens the specified file.
  4141. </summary>
  4142. <param name="path">The full path of the file to open.</param>
  4143. <param name="mode">The file mode for the created stream.</param>
  4144. <returns>The new stream.</returns>
  4145. </member>
  4146. <member name="M:DiscUtils.ReadOnlyDiscFileSystem.SetAttributes(System.String,System.IO.FileAttributes)">
  4147. <summary>
  4148. Sets the attributes of a file or directory - not supported on read-only file systems.
  4149. </summary>
  4150. <param name="path">The file or directory to change.</param>
  4151. <param name="newValue">The new attributes of the file or directory.</param>
  4152. </member>
  4153. <member name="M:DiscUtils.ReadOnlyDiscFileSystem.SetCreationTimeUtc(System.String,System.DateTime)">
  4154. <summary>
  4155. Sets the creation time (in UTC) of a file or directory - not supported on read-only file systems.
  4156. </summary>
  4157. <param name="path">The path of the file or directory.</param>
  4158. <param name="newTime">The new time to set.</param>
  4159. </member>
  4160. <member name="M:DiscUtils.ReadOnlyDiscFileSystem.SetLastAccessTimeUtc(System.String,System.DateTime)">
  4161. <summary>
  4162. Sets the last access time (in UTC) of a file or directory - not supported on read-only file systems.
  4163. </summary>
  4164. <param name="path">The path of the file or directory.</param>
  4165. <param name="newTime">The new time to set.</param>
  4166. </member>
  4167. <member name="M:DiscUtils.ReadOnlyDiscFileSystem.SetLastWriteTimeUtc(System.String,System.DateTime)">
  4168. <summary>
  4169. Sets the last modification time (in UTC) of a file or directory - not supported on read-only file systems.
  4170. </summary>
  4171. <param name="path">The path of the file or directory.</param>
  4172. <param name="newTime">The new time to set.</param>
  4173. </member>
  4174. <member name="T:DiscUtils.ReparsePoint">
  4175. <summary>
  4176. Represents a Reparse Point, which can be associated with a file or directory.
  4177. </summary>
  4178. </member>
  4179. <member name="M:DiscUtils.ReparsePoint.#ctor(System.Int32,System.Byte[])">
  4180. <summary>
  4181. Initializes a new instance of the ReparsePoint class.
  4182. </summary>
  4183. <param name="tag">The defined reparse point tag.</param>
  4184. <param name="content">The reparse point's content.</param>
  4185. </member>
  4186. <member name="P:DiscUtils.ReparsePoint.Content">
  4187. <summary>
  4188. Gets or sets the reparse point's content.
  4189. </summary>
  4190. </member>
  4191. <member name="P:DiscUtils.ReparsePoint.Tag">
  4192. <summary>
  4193. Gets or sets the defined reparse point tag.
  4194. </summary>
  4195. </member>
  4196. <member name="T:DiscUtils.ReportLevels">
  4197. <summary>
  4198. Flags for the amount of detail to include in a report.
  4199. </summary>
  4200. </member>
  4201. <member name="F:DiscUtils.ReportLevels.None">
  4202. <summary>
  4203. Report no information.
  4204. </summary>
  4205. </member>
  4206. <member name="F:DiscUtils.ReportLevels.Information">
  4207. <summary>
  4208. Report informational level items.
  4209. </summary>
  4210. </member>
  4211. <member name="F:DiscUtils.ReportLevels.Warnings">
  4212. <summary>
  4213. Report warning level items.
  4214. </summary>
  4215. </member>
  4216. <member name="F:DiscUtils.ReportLevels.Errors">
  4217. <summary>
  4218. Report error level items.
  4219. </summary>
  4220. </member>
  4221. <member name="F:DiscUtils.ReportLevels.All">
  4222. <summary>
  4223. Report all items.
  4224. </summary>
  4225. </member>
  4226. <member name="T:DiscUtils.Setup.FileOpenEventArgs">
  4227. <summary>
  4228. Event arguments for opening a file
  4229. </summary>
  4230. </member>
  4231. <member name="P:DiscUtils.Setup.FileOpenEventArgs.FileName">
  4232. <summary>
  4233. Gets or sets the filename to open
  4234. </summary>
  4235. </member>
  4236. <member name="P:DiscUtils.Setup.FileOpenEventArgs.FileMode">
  4237. <summary>
  4238. Gets or sets the <see cref="P:DiscUtils.Setup.FileOpenEventArgs.FileMode"/>
  4239. </summary>
  4240. </member>
  4241. <member name="P:DiscUtils.Setup.FileOpenEventArgs.FileAccess">
  4242. <summary>
  4243. Gets or sets the <see cref="P:DiscUtils.Setup.FileOpenEventArgs.FileAccess"/>
  4244. </summary>
  4245. </member>
  4246. <member name="P:DiscUtils.Setup.FileOpenEventArgs.FileShare">
  4247. <summary>
  4248. Gets or sets the <see cref="P:DiscUtils.Setup.FileOpenEventArgs.FileShare"/>
  4249. </summary>
  4250. </member>
  4251. <member name="P:DiscUtils.Setup.FileOpenEventArgs.Result">
  4252. <summary>
  4253. The resulting stream.
  4254. </summary>
  4255. <remarks>
  4256. If this is set to a non null value, this stream is used instead of opening the supplied <see cref="P:DiscUtils.Setup.FileOpenEventArgs.FileName"/>
  4257. </remarks>
  4258. </member>
  4259. <member name="M:DiscUtils.Setup.FileOpenEventArgs.GetFileStream">
  4260. <summary>
  4261. returns the result from the builtin FileLocator
  4262. </summary>
  4263. <returns></returns>
  4264. </member>
  4265. <member name="T:DiscUtils.Setup.SetupHelper">
  4266. <summary>
  4267. Helps setup new DiscUtils dependencies, when loaded into target programs
  4268. </summary>
  4269. </member>
  4270. <member name="M:DiscUtils.Setup.SetupHelper.RegisterAssembly(System.Reflection.Assembly)">
  4271. <summary>
  4272. Registers the types provided by an assembly to all relevant DiscUtils managers
  4273. </summary>
  4274. <param name="assembly"></param>
  4275. </member>
  4276. <member name="E:DiscUtils.Setup.SetupHelper.OpeningFile">
  4277. <summary>
  4278. Allows intercepting any file open operation
  4279. </summary>
  4280. <remarks>
  4281. Can be used to wrap the opened file for special use cases,
  4282. modify the parameters for opening files, validate file names
  4283. and many more.
  4284. </remarks>
  4285. </member>
  4286. <member name="T:DiscUtils.TimeConverter">
  4287. <summary>
  4288. Converts a time to/from UTC.
  4289. </summary>
  4290. <param name="time">The time to convert.</param>
  4291. <param name="toUtc"><c>true</c> to convert FAT time to UTC, <c>false</c> to convert UTC to FAT time.</param>
  4292. <returns>The converted time.</returns>
  4293. </member>
  4294. <member name="T:DiscUtils.UnixFilePermissions">
  4295. <summary>
  4296. Standard Unix-style file system permissions.
  4297. </summary>
  4298. </member>
  4299. <member name="F:DiscUtils.UnixFilePermissions.None">
  4300. <summary>
  4301. No permissions.
  4302. </summary>
  4303. </member>
  4304. <member name="F:DiscUtils.UnixFilePermissions.OthersExecute">
  4305. <summary>
  4306. Any user execute permission.
  4307. </summary>
  4308. </member>
  4309. <member name="F:DiscUtils.UnixFilePermissions.OthersWrite">
  4310. <summary>
  4311. Any user write permission.
  4312. </summary>
  4313. </member>
  4314. <member name="F:DiscUtils.UnixFilePermissions.OthersRead">
  4315. <summary>
  4316. Any user read permission.
  4317. </summary>
  4318. </member>
  4319. <member name="F:DiscUtils.UnixFilePermissions.OthersAll">
  4320. <summary>
  4321. Any user all permissions.
  4322. </summary>
  4323. </member>
  4324. <member name="F:DiscUtils.UnixFilePermissions.GroupExecute">
  4325. <summary>
  4326. Group execute permission.
  4327. </summary>
  4328. </member>
  4329. <member name="F:DiscUtils.UnixFilePermissions.GroupWrite">
  4330. <summary>
  4331. Group write permission.
  4332. </summary>
  4333. </member>
  4334. <member name="F:DiscUtils.UnixFilePermissions.GroupRead">
  4335. <summary>
  4336. Group read permission.
  4337. </summary>
  4338. </member>
  4339. <member name="F:DiscUtils.UnixFilePermissions.GroupAll">
  4340. <summary>
  4341. Group all permissions.
  4342. </summary>
  4343. </member>
  4344. <member name="F:DiscUtils.UnixFilePermissions.OwnerExecute">
  4345. <summary>
  4346. Owner execute permission.
  4347. </summary>
  4348. </member>
  4349. <member name="F:DiscUtils.UnixFilePermissions.OwnerWrite">
  4350. <summary>
  4351. Owner write permission.
  4352. </summary>
  4353. </member>
  4354. <member name="F:DiscUtils.UnixFilePermissions.OwnerRead">
  4355. <summary>
  4356. Owner read permission.
  4357. </summary>
  4358. </member>
  4359. <member name="F:DiscUtils.UnixFilePermissions.OwnerAll">
  4360. <summary>
  4361. Owner all permissions.
  4362. </summary>
  4363. </member>
  4364. <member name="F:DiscUtils.UnixFilePermissions.Sticky">
  4365. <summary>
  4366. Sticky bit (meaning ill-defined).
  4367. </summary>
  4368. </member>
  4369. <member name="F:DiscUtils.UnixFilePermissions.SetGroupId">
  4370. <summary>
  4371. Set GUID on execute.
  4372. </summary>
  4373. </member>
  4374. <member name="F:DiscUtils.UnixFilePermissions.SetUserId">
  4375. <summary>
  4376. Set UID on execute.
  4377. </summary>
  4378. </member>
  4379. <member name="T:DiscUtils.UnixFileSystemInfo">
  4380. <summary>
  4381. Information about a file or directory common to most Unix systems.
  4382. </summary>
  4383. </member>
  4384. <member name="P:DiscUtils.UnixFileSystemInfo.DeviceId">
  4385. <summary>
  4386. Gets or sets the device id of the referenced device (for character and block devices).
  4387. </summary>
  4388. </member>
  4389. <member name="P:DiscUtils.UnixFileSystemInfo.FileType">
  4390. <summary>
  4391. Gets or sets the file's type.
  4392. </summary>
  4393. </member>
  4394. <member name="P:DiscUtils.UnixFileSystemInfo.GroupId">
  4395. <summary>
  4396. Gets or sets the group that owns this file or directory.
  4397. </summary>
  4398. </member>
  4399. <member name="P:DiscUtils.UnixFileSystemInfo.Inode">
  4400. <summary>
  4401. Gets or sets the file's serial number (unique within file system).
  4402. </summary>
  4403. </member>
  4404. <member name="P:DiscUtils.UnixFileSystemInfo.LinkCount">
  4405. <summary>
  4406. Gets or sets the number of hard links to this file.
  4407. </summary>
  4408. </member>
  4409. <member name="P:DiscUtils.UnixFileSystemInfo.Permissions">
  4410. <summary>
  4411. Gets or sets the file permissions (aka flags) for this file or directory.
  4412. </summary>
  4413. </member>
  4414. <member name="P:DiscUtils.UnixFileSystemInfo.UserId">
  4415. <summary>
  4416. Gets or sets the user that owns this file or directory.
  4417. </summary>
  4418. </member>
  4419. <member name="T:DiscUtils.UnixFileType">
  4420. <summary>
  4421. Standard Unix-style file type.
  4422. </summary>
  4423. </member>
  4424. <member name="F:DiscUtils.UnixFileType.None">
  4425. <summary>
  4426. No type specified.
  4427. </summary>
  4428. </member>
  4429. <member name="F:DiscUtils.UnixFileType.Fifo">
  4430. <summary>
  4431. A FIFO / Named Pipe.
  4432. </summary>
  4433. </member>
  4434. <member name="F:DiscUtils.UnixFileType.Character">
  4435. <summary>
  4436. A character device.
  4437. </summary>
  4438. </member>
  4439. <member name="F:DiscUtils.UnixFileType.Directory">
  4440. <summary>
  4441. A normal directory.
  4442. </summary>
  4443. </member>
  4444. <member name="F:DiscUtils.UnixFileType.Block">
  4445. <summary>
  4446. A block device.
  4447. </summary>
  4448. </member>
  4449. <member name="F:DiscUtils.UnixFileType.Regular">
  4450. <summary>
  4451. A regular file.
  4452. </summary>
  4453. </member>
  4454. <member name="F:DiscUtils.UnixFileType.Link">
  4455. <summary>
  4456. A soft link.
  4457. </summary>
  4458. </member>
  4459. <member name="F:DiscUtils.UnixFileType.Socket">
  4460. <summary>
  4461. A unix socket.
  4462. </summary>
  4463. </member>
  4464. <member name="T:DiscUtils.Vfs.IVfsDirectory`2">
  4465. <summary>
  4466. Interface implemented by classes representing a directory.
  4467. </summary>
  4468. <typeparam name="TDirEntry">Concrete type representing directory entries.</typeparam>
  4469. <typeparam name="TFile">Concrete type representing files.</typeparam>
  4470. </member>
  4471. <member name="P:DiscUtils.Vfs.IVfsDirectory`2.AllEntries">
  4472. <summary>
  4473. Gets all of the directory entries.
  4474. </summary>
  4475. </member>
  4476. <member name="P:DiscUtils.Vfs.IVfsDirectory`2.Self">
  4477. <summary>
  4478. Gets a self-reference, if available.
  4479. </summary>
  4480. </member>
  4481. <member name="M:DiscUtils.Vfs.IVfsDirectory`2.GetEntryByName(System.String)">
  4482. <summary>
  4483. Gets a specific directory entry, by name.
  4484. </summary>
  4485. <param name="name">The name of the directory entry.</param>
  4486. <returns>The directory entry, or <c>null</c> if not found.</returns>
  4487. </member>
  4488. <member name="M:DiscUtils.Vfs.IVfsDirectory`2.CreateNewFile(System.String)">
  4489. <summary>
  4490. Creates a new file.
  4491. </summary>
  4492. <param name="name">The name of the file (relative to this directory).</param>
  4493. <returns>The newly created file.</returns>
  4494. </member>
  4495. <member name="T:DiscUtils.Vfs.IVfsFile">
  4496. <summary>
  4497. Interface implemented by a class representing a file.
  4498. </summary>
  4499. <remarks>
  4500. File system implementations should have a class that implements this
  4501. interface. If the file system implementation is read-only, it is
  4502. acceptable to throw <c>NotImplementedException</c> from setters.
  4503. </remarks>
  4504. </member>
  4505. <member name="P:DiscUtils.Vfs.IVfsFile.CreationTimeUtc">
  4506. <summary>
  4507. Gets or sets the last creation time in UTC.
  4508. </summary>
  4509. </member>
  4510. <member name="P:DiscUtils.Vfs.IVfsFile.FileAttributes">
  4511. <summary>
  4512. Gets or sets the file's attributes.
  4513. </summary>
  4514. </member>
  4515. <member name="P:DiscUtils.Vfs.IVfsFile.FileContent">
  4516. <summary>
  4517. Gets a buffer to access the file's contents.
  4518. </summary>
  4519. </member>
  4520. <member name="P:DiscUtils.Vfs.IVfsFile.FileLength">
  4521. <summary>
  4522. Gets the length of the file.
  4523. </summary>
  4524. </member>
  4525. <member name="P:DiscUtils.Vfs.IVfsFile.LastAccessTimeUtc">
  4526. <summary>
  4527. Gets or sets the last access time in UTC.
  4528. </summary>
  4529. </member>
  4530. <member name="P:DiscUtils.Vfs.IVfsFile.LastWriteTimeUtc">
  4531. <summary>
  4532. Gets or sets the last write time in UTC.
  4533. </summary>
  4534. </member>
  4535. <member name="T:DiscUtils.Vfs.IVfsFileWithStreams">
  4536. <summary>
  4537. Interface implemented by classes representing files, in file systems that support multi-stream files.
  4538. </summary>
  4539. </member>
  4540. <member name="M:DiscUtils.Vfs.IVfsFileWithStreams.CreateStream(System.String)">
  4541. <summary>
  4542. Creates a new stream.
  4543. </summary>
  4544. <param name="name">The name of the stream.</param>
  4545. <returns>An object representing the stream.</returns>
  4546. </member>
  4547. <member name="M:DiscUtils.Vfs.IVfsFileWithStreams.OpenExistingStream(System.String)">
  4548. <summary>
  4549. Opens an existing stream.
  4550. </summary>
  4551. <param name="name">The name of the stream.</param>
  4552. <returns>An object representing the stream.</returns>
  4553. <remarks>The implementation must not implicitly create the stream if it doesn't already
  4554. exist.</remarks>
  4555. </member>
  4556. <member name="T:DiscUtils.Vfs.IVfsSymlink`2">
  4557. <summary>
  4558. Interface implemented by classes representing a directory.
  4559. </summary>
  4560. <typeparam name="TDirEntry">Concrete type representing directory entries.</typeparam>
  4561. <typeparam name="TFile">Concrete type representing files.</typeparam>
  4562. </member>
  4563. <member name="P:DiscUtils.Vfs.IVfsSymlink`2.TargetPath">
  4564. <summary>
  4565. Gets the target path for this symlink.
  4566. </summary>
  4567. </member>
  4568. <member name="T:DiscUtils.Vfs.VfsContext">
  4569. <summary>
  4570. Base class for a context object that holds global state for file system implementations.
  4571. </summary>
  4572. </member>
  4573. <member name="T:DiscUtils.Vfs.VfsDirEntry">
  4574. <summary>
  4575. Base class for directory entries in a file system.
  4576. </summary>
  4577. <remarks>
  4578. File system implementations should have a class that derives from
  4579. this abstract class. If the file system implementation is read-only,
  4580. it is acceptable to throw <c>NotImplementedException</c> from methods
  4581. that attempt to modify the file system.
  4582. </remarks>
  4583. </member>
  4584. <member name="P:DiscUtils.Vfs.VfsDirEntry.CreationTimeUtc">
  4585. <summary>
  4586. Gets the creation time of the file or directory.
  4587. </summary>
  4588. <remarks>
  4589. May throw <c>NotSupportedException</c> if <c>HasVfsTimeInfo</c> is <c>false</c>.
  4590. </remarks>
  4591. </member>
  4592. <member name="P:DiscUtils.Vfs.VfsDirEntry.FileAttributes">
  4593. <summary>
  4594. Gets the file attributes from the directory entry.
  4595. </summary>
  4596. <remarks>
  4597. May throw <c>NotSupportedException</c> if <c>HasVfsFileAttributes</c> is <c>false</c>.
  4598. </remarks>
  4599. </member>
  4600. <member name="P:DiscUtils.Vfs.VfsDirEntry.FileName">
  4601. <summary>
  4602. Gets the name of this directory entry.
  4603. </summary>
  4604. </member>
  4605. <member name="P:DiscUtils.Vfs.VfsDirEntry.HasVfsFileAttributes">
  4606. <summary>
  4607. Gets a value indicating whether this directory entry contains file attribute information.
  4608. </summary>
  4609. <remarks>
  4610. <para>Typically either always returns <c>true</c> or <c>false</c>.</para>
  4611. </remarks>
  4612. </member>
  4613. <member name="P:DiscUtils.Vfs.VfsDirEntry.HasVfsTimeInfo">
  4614. <summary>
  4615. Gets a value indicating whether this directory entry contains time information.
  4616. </summary>
  4617. <remarks>
  4618. <para>Typically either always returns <c>true</c> or <c>false</c>.</para>
  4619. </remarks>
  4620. </member>
  4621. <member name="P:DiscUtils.Vfs.VfsDirEntry.IsDirectory">
  4622. <summary>
  4623. Gets a value indicating whether this directory entry represents a directory (rather than a file).
  4624. </summary>
  4625. </member>
  4626. <member name="P:DiscUtils.Vfs.VfsDirEntry.IsSymlink">
  4627. <summary>
  4628. Gets a value indicating whether this directory entry represents a symlink (rather than a file or directory).
  4629. </summary>
  4630. </member>
  4631. <member name="P:DiscUtils.Vfs.VfsDirEntry.LastAccessTimeUtc">
  4632. <summary>
  4633. Gets the last access time of the file or directory.
  4634. </summary>
  4635. <remarks>
  4636. May throw <c>NotSupportedException</c> if <c>HasVfsTimeInfo</c> is <c>false</c>.
  4637. </remarks>
  4638. </member>
  4639. <member name="P:DiscUtils.Vfs.VfsDirEntry.LastWriteTimeUtc">
  4640. <summary>
  4641. Gets the last write time of the file or directory.
  4642. </summary>
  4643. <remarks>
  4644. May throw <c>NotSupportedException</c> if <c>HasVfsTimeInfo</c> is <c>false</c>.
  4645. </remarks>
  4646. </member>
  4647. <member name="P:DiscUtils.Vfs.VfsDirEntry.SearchName">
  4648. <summary>
  4649. Gets a version of FileName that can be used in wildcard matches.
  4650. </summary>
  4651. <remarks>
  4652. The returned name, must have an extension separator '.', and not have any optional version
  4653. information found in some files. The returned name is matched against a wildcard patterns
  4654. such as "*.*".
  4655. </remarks>
  4656. </member>
  4657. <member name="P:DiscUtils.Vfs.VfsDirEntry.UniqueCacheId">
  4658. <summary>
  4659. Gets a unique id for the file or directory represented by this directory entry.
  4660. </summary>
  4661. </member>
  4662. <member name="T:DiscUtils.Vfs.VfsFileSystem`4">
  4663. <summary>
  4664. Base class for VFS file systems.
  4665. </summary>
  4666. <typeparam name="TDirEntry">The concrete type representing directory entries.</typeparam>
  4667. <typeparam name="TFile">The concrete type representing files.</typeparam>
  4668. <typeparam name="TDirectory">The concrete type representing directories.</typeparam>
  4669. <typeparam name="TContext">The concrete type holding global state.</typeparam>
  4670. </member>
  4671. <member name="M:DiscUtils.Vfs.VfsFileSystem`4.#ctor(DiscUtils.DiscFileSystemOptions)">
  4672. <summary>
  4673. Initializes a new instance of the VfsFileSystem class.
  4674. </summary>
  4675. <param name="defaultOptions">The default file system options.</param>
  4676. </member>
  4677. <member name="P:DiscUtils.Vfs.VfsFileSystem`4.Context">
  4678. <summary>
  4679. Gets or sets the global shared state.
  4680. </summary>
  4681. </member>
  4682. <member name="P:DiscUtils.Vfs.VfsFileSystem`4.RootDirectory">
  4683. <summary>
  4684. Gets or sets the object representing the root directory.
  4685. </summary>
  4686. </member>
  4687. <member name="P:DiscUtils.Vfs.VfsFileSystem`4.VolumeLabel">
  4688. <summary>
  4689. Gets the volume label.
  4690. </summary>
  4691. </member>
  4692. <member name="M:DiscUtils.Vfs.VfsFileSystem`4.CopyFile(System.String,System.String,System.Boolean)">
  4693. <summary>
  4694. Copies a file - not supported on read-only file systems.
  4695. </summary>
  4696. <param name="sourceFile">The source file.</param>
  4697. <param name="destinationFile">The destination file.</param>
  4698. <param name="overwrite">Whether to permit over-writing of an existing file.</param>
  4699. </member>
  4700. <member name="M:DiscUtils.Vfs.VfsFileSystem`4.CreateDirectory(System.String)">
  4701. <summary>
  4702. Creates a directory - not supported on read-only file systems.
  4703. </summary>
  4704. <param name="path">The path of the new directory.</param>
  4705. </member>
  4706. <member name="M:DiscUtils.Vfs.VfsFileSystem`4.DeleteDirectory(System.String)">
  4707. <summary>
  4708. Deletes a directory - not supported on read-only file systems.
  4709. </summary>
  4710. <param name="path">The path of the directory to delete.</param>
  4711. </member>
  4712. <member name="M:DiscUtils.Vfs.VfsFileSystem`4.DeleteFile(System.String)">
  4713. <summary>
  4714. Deletes a file - not supported on read-only file systems.
  4715. </summary>
  4716. <param name="path">The path of the file to delete.</param>
  4717. </member>
  4718. <member name="M:DiscUtils.Vfs.VfsFileSystem`4.DirectoryExists(System.String)">
  4719. <summary>
  4720. Indicates if a directory exists.
  4721. </summary>
  4722. <param name="path">The path to test.</param>
  4723. <returns>true if the directory exists.</returns>
  4724. </member>
  4725. <member name="M:DiscUtils.Vfs.VfsFileSystem`4.FileExists(System.String)">
  4726. <summary>
  4727. Indicates if a file exists.
  4728. </summary>
  4729. <param name="path">The path to test.</param>
  4730. <returns>true if the file exists.</returns>
  4731. </member>
  4732. <member name="M:DiscUtils.Vfs.VfsFileSystem`4.GetDirectories(System.String,System.String,System.IO.SearchOption)">
  4733. <summary>
  4734. Gets the names of subdirectories in a specified directory matching a specified
  4735. search pattern, using a value to determine whether to search subdirectories.
  4736. </summary>
  4737. <param name="path">The path to search.</param>
  4738. <param name="searchPattern">The search string to match against.</param>
  4739. <param name="searchOption">Indicates whether to search subdirectories.</param>
  4740. <returns>Array of directories matching the search pattern.</returns>
  4741. </member>
  4742. <member name="M:DiscUtils.Vfs.VfsFileSystem`4.GetFiles(System.String,System.String,System.IO.SearchOption)">
  4743. <summary>
  4744. Gets the names of files in a specified directory matching a specified
  4745. search pattern, using a value to determine whether to search subdirectories.
  4746. </summary>
  4747. <param name="path">The path to search.</param>
  4748. <param name="searchPattern">The search string to match against.</param>
  4749. <param name="searchOption">Indicates whether to search subdirectories.</param>
  4750. <returns>Array of files matching the search pattern.</returns>
  4751. </member>
  4752. <member name="M:DiscUtils.Vfs.VfsFileSystem`4.GetFileSystemEntries(System.String)">
  4753. <summary>
  4754. Gets the names of all files and subdirectories in a specified directory.
  4755. </summary>
  4756. <param name="path">The path to search.</param>
  4757. <returns>Array of files and subdirectories matching the search pattern.</returns>
  4758. </member>
  4759. <member name="M:DiscUtils.Vfs.VfsFileSystem`4.GetFileSystemEntries(System.String,System.String)">
  4760. <summary>
  4761. Gets the names of files and subdirectories in a specified directory matching a specified
  4762. search pattern.
  4763. </summary>
  4764. <param name="path">The path to search.</param>
  4765. <param name="searchPattern">The search string to match against.</param>
  4766. <returns>Array of files and subdirectories matching the search pattern.</returns>
  4767. </member>
  4768. <member name="M:DiscUtils.Vfs.VfsFileSystem`4.MoveDirectory(System.String,System.String)">
  4769. <summary>
  4770. Moves a directory.
  4771. </summary>
  4772. <param name="sourceDirectoryName">The directory to move.</param>
  4773. <param name="destinationDirectoryName">The target directory name.</param>
  4774. </member>
  4775. <member name="M:DiscUtils.Vfs.VfsFileSystem`4.MoveFile(System.String,System.String,System.Boolean)">
  4776. <summary>
  4777. Moves a file.
  4778. </summary>
  4779. <param name="sourceName">The file to move.</param>
  4780. <param name="destinationName">The target file name.</param>
  4781. <param name="overwrite">Overwrite any existing file.</param>
  4782. </member>
  4783. <member name="M:DiscUtils.Vfs.VfsFileSystem`4.OpenFile(System.String,System.IO.FileMode,System.IO.FileAccess)">
  4784. <summary>
  4785. Opens the specified file.
  4786. </summary>
  4787. <param name="path">The full path of the file to open.</param>
  4788. <param name="mode">The file mode for the created stream.</param>
  4789. <param name="access">The access permissions for the created stream.</param>
  4790. <returns>The new stream.</returns>
  4791. </member>
  4792. <member name="M:DiscUtils.Vfs.VfsFileSystem`4.GetAttributes(System.String)">
  4793. <summary>
  4794. Gets the attributes of a file or directory.
  4795. </summary>
  4796. <param name="path">The file or directory to inspect.</param>
  4797. <returns>The attributes of the file or directory.</returns>
  4798. </member>
  4799. <member name="M:DiscUtils.Vfs.VfsFileSystem`4.SetAttributes(System.String,System.IO.FileAttributes)">
  4800. <summary>
  4801. Sets the attributes of a file or directory.
  4802. </summary>
  4803. <param name="path">The file or directory to change.</param>
  4804. <param name="newValue">The new attributes of the file or directory.</param>
  4805. </member>
  4806. <member name="M:DiscUtils.Vfs.VfsFileSystem`4.GetCreationTimeUtc(System.String)">
  4807. <summary>
  4808. Gets the creation time (in UTC) of a file or directory.
  4809. </summary>
  4810. <param name="path">The path of the file or directory.</param>
  4811. <returns>The creation time.</returns>
  4812. </member>
  4813. <member name="M:DiscUtils.Vfs.VfsFileSystem`4.SetCreationTimeUtc(System.String,System.DateTime)">
  4814. <summary>
  4815. Sets the creation time (in UTC) of a file or directory.
  4816. </summary>
  4817. <param name="path">The path of the file or directory.</param>
  4818. <param name="newTime">The new time to set.</param>
  4819. </member>
  4820. <member name="M:DiscUtils.Vfs.VfsFileSystem`4.GetLastAccessTimeUtc(System.String)">
  4821. <summary>
  4822. Gets the last access time (in UTC) of a file or directory.
  4823. </summary>
  4824. <param name="path">The path of the file or directory.</param>
  4825. <returns>The last access time.</returns>
  4826. </member>
  4827. <member name="M:DiscUtils.Vfs.VfsFileSystem`4.SetLastAccessTimeUtc(System.String,System.DateTime)">
  4828. <summary>
  4829. Sets the last access time (in UTC) of a file or directory.
  4830. </summary>
  4831. <param name="path">The path of the file or directory.</param>
  4832. <param name="newTime">The new time to set.</param>
  4833. </member>
  4834. <member name="M:DiscUtils.Vfs.VfsFileSystem`4.GetLastWriteTimeUtc(System.String)">
  4835. <summary>
  4836. Gets the last modification time (in UTC) of a file or directory.
  4837. </summary>
  4838. <param name="path">The path of the file or directory.</param>
  4839. <returns>The last write time.</returns>
  4840. </member>
  4841. <member name="M:DiscUtils.Vfs.VfsFileSystem`4.SetLastWriteTimeUtc(System.String,System.DateTime)">
  4842. <summary>
  4843. Sets the last modification time (in UTC) of a file or directory.
  4844. </summary>
  4845. <param name="path">The path of the file or directory.</param>
  4846. <param name="newTime">The new time to set.</param>
  4847. </member>
  4848. <member name="M:DiscUtils.Vfs.VfsFileSystem`4.GetFileLength(System.String)">
  4849. <summary>
  4850. Gets the length of a file.
  4851. </summary>
  4852. <param name="path">The path to the file.</param>
  4853. <returns>The length in bytes.</returns>
  4854. </member>
  4855. <member name="M:DiscUtils.Vfs.VfsFileSystem`4.ForAllDirEntries(System.String,DiscUtils.Vfs.VfsFileSystem{`0,`1,`2,`3}.DirEntryHandler)">
  4856. <summary>
  4857. Gets all directory entries in the specified directory and sub-directories.
  4858. </summary>
  4859. <param name="path">The path to inspect.</param>
  4860. <param name="handler">Delegate invoked for each directory entry.</param>
  4861. </member>
  4862. <member name="M:DiscUtils.Vfs.VfsFileSystem`4.GetFile(System.String)">
  4863. <summary>
  4864. Gets the file object for a given path.
  4865. </summary>
  4866. <param name="path">The path to query.</param>
  4867. <returns>The file object corresponding to the path.</returns>
  4868. </member>
  4869. <member name="M:DiscUtils.Vfs.VfsFileSystem`4.ConvertDirEntryToFile(`0)">
  4870. <summary>
  4871. Converts a directory entry to an object representing a file.
  4872. </summary>
  4873. <param name="dirEntry">The directory entry to convert.</param>
  4874. <returns>The corresponding file object.</returns>
  4875. </member>
  4876. <member name="M:DiscUtils.Vfs.VfsFileSystem`4.FormatFileName(System.String)">
  4877. <summary>
  4878. Converts an internal directory entry name into an external one.
  4879. </summary>
  4880. <param name="name">The name to convert.</param>
  4881. <returns>The external name.</returns>
  4882. <remarks>
  4883. This method is called on a single path element (i.e. name contains no path
  4884. separators).
  4885. </remarks>
  4886. </member>
  4887. <member name="T:DiscUtils.Vfs.VfsFileSystem`4.DirEntryHandler">
  4888. <summary>
  4889. Delegate for processing directory entries.
  4890. </summary>
  4891. <param name="path">Full path to the directory entry.</param>
  4892. <param name="dirEntry">The directory entry itself.</param>
  4893. </member>
  4894. <member name="T:DiscUtils.Vfs.VfsFileSystemFacade">
  4895. <summary>
  4896. Base class for the public facade on a file system.
  4897. </summary>
  4898. <remarks>
  4899. The derived class can extend the functionality available from a file system
  4900. beyond that defined by DiscFileSystem.
  4901. </remarks>
  4902. </member>
  4903. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.#ctor(DiscUtils.DiscFileSystem)">
  4904. <summary>
  4905. Initializes a new instance of the VfsFileSystemFacade class.
  4906. </summary>
  4907. <param name="toWrap">The actual file system instance.</param>
  4908. </member>
  4909. <member name="P:DiscUtils.Vfs.VfsFileSystemFacade.CanWrite">
  4910. <summary>
  4911. Indicates whether the file system is read-only or read-write.
  4912. </summary>
  4913. <returns>true if the file system is read-write.</returns>
  4914. </member>
  4915. <member name="P:DiscUtils.Vfs.VfsFileSystemFacade.FriendlyName">
  4916. <summary>
  4917. Gets a friendly name for the file system.
  4918. </summary>
  4919. </member>
  4920. <member name="P:DiscUtils.Vfs.VfsFileSystemFacade.IsThreadSafe">
  4921. <summary>
  4922. Gets a value indicating whether the file system is thread-safe.
  4923. </summary>
  4924. </member>
  4925. <member name="P:DiscUtils.Vfs.VfsFileSystemFacade.Options">
  4926. <summary>
  4927. Gets the file system options, which can be modified.
  4928. </summary>
  4929. </member>
  4930. <member name="P:DiscUtils.Vfs.VfsFileSystemFacade.Root">
  4931. <summary>
  4932. Gets the root directory of the file system.
  4933. </summary>
  4934. </member>
  4935. <member name="P:DiscUtils.Vfs.VfsFileSystemFacade.VolumeLabel">
  4936. <summary>
  4937. Gets the volume label.
  4938. </summary>
  4939. </member>
  4940. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.CopyFile(System.String,System.String)">
  4941. <summary>
  4942. Copies an existing file to a new file.
  4943. </summary>
  4944. <param name="sourceFile">The source file.</param>
  4945. <param name="destinationFile">The destination file.</param>
  4946. </member>
  4947. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.CopyFile(System.String,System.String,System.Boolean)">
  4948. <summary>
  4949. Copies an existing file to a new file.
  4950. </summary>
  4951. <param name="sourceFile">The source file.</param>
  4952. <param name="destinationFile">The destination file.</param>
  4953. <param name="overwrite">Overwrite any existing file.</param>
  4954. </member>
  4955. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.CreateDirectory(System.String)">
  4956. <summary>
  4957. Creates a directory.
  4958. </summary>
  4959. <param name="path">The path of the new directory.</param>
  4960. </member>
  4961. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.DeleteDirectory(System.String)">
  4962. <summary>
  4963. Deletes a directory.
  4964. </summary>
  4965. <param name="path">The path of the directory to delete.</param>
  4966. </member>
  4967. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.DeleteDirectory(System.String,System.Boolean)">
  4968. <summary>
  4969. Deletes a directory, optionally with all descendants.
  4970. </summary>
  4971. <param name="path">The path of the directory to delete.</param>
  4972. <param name="recursive">Determines if the all descendants should be deleted.</param>
  4973. </member>
  4974. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.DeleteFile(System.String)">
  4975. <summary>
  4976. Deletes a file.
  4977. </summary>
  4978. <param name="path">The path of the file to delete.</param>
  4979. </member>
  4980. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.DirectoryExists(System.String)">
  4981. <summary>
  4982. Indicates if a directory exists.
  4983. </summary>
  4984. <param name="path">The path to test.</param>
  4985. <returns>true if the directory exists.</returns>
  4986. </member>
  4987. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.FileExists(System.String)">
  4988. <summary>
  4989. Indicates if a file exists.
  4990. </summary>
  4991. <param name="path">The path to test.</param>
  4992. <returns>true if the file exists.</returns>
  4993. </member>
  4994. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.Exists(System.String)">
  4995. <summary>
  4996. Indicates if a file or directory exists.
  4997. </summary>
  4998. <param name="path">The path to test.</param>
  4999. <returns>true if the file or directory exists.</returns>
  5000. </member>
  5001. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.GetDirectories(System.String)">
  5002. <summary>
  5003. Gets the names of subdirectories in a specified directory.
  5004. </summary>
  5005. <param name="path">The path to search.</param>
  5006. <returns>Array of directories.</returns>
  5007. </member>
  5008. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.GetDirectories(System.String,System.String)">
  5009. <summary>
  5010. Gets the names of subdirectories in a specified directory matching a specified
  5011. search pattern.
  5012. </summary>
  5013. <param name="path">The path to search.</param>
  5014. <param name="searchPattern">The search string to match against.</param>
  5015. <returns>Array of directories matching the search pattern.</returns>
  5016. </member>
  5017. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.GetDirectories(System.String,System.String,System.IO.SearchOption)">
  5018. <summary>
  5019. Gets the names of subdirectories in a specified directory matching a specified
  5020. search pattern, using a value to determine whether to search subdirectories.
  5021. </summary>
  5022. <param name="path">The path to search.</param>
  5023. <param name="searchPattern">The search string to match against.</param>
  5024. <param name="searchOption">Indicates whether to search subdirectories.</param>
  5025. <returns>Array of directories matching the search pattern.</returns>
  5026. </member>
  5027. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.GetFiles(System.String)">
  5028. <summary>
  5029. Gets the names of files in a specified directory.
  5030. </summary>
  5031. <param name="path">The path to search.</param>
  5032. <returns>Array of files.</returns>
  5033. </member>
  5034. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.GetFiles(System.String,System.String)">
  5035. <summary>
  5036. Gets the names of files in a specified directory.
  5037. </summary>
  5038. <param name="path">The path to search.</param>
  5039. <param name="searchPattern">The search string to match against.</param>
  5040. <returns>Array of files matching the search pattern.</returns>
  5041. </member>
  5042. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.GetFiles(System.String,System.String,System.IO.SearchOption)">
  5043. <summary>
  5044. Gets the names of files in a specified directory matching a specified
  5045. search pattern, using a value to determine whether to search subdirectories.
  5046. </summary>
  5047. <param name="path">The path to search.</param>
  5048. <param name="searchPattern">The search string to match against.</param>
  5049. <param name="searchOption">Indicates whether to search subdirectories.</param>
  5050. <returns>Array of files matching the search pattern.</returns>
  5051. </member>
  5052. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.GetFileSystemEntries(System.String)">
  5053. <summary>
  5054. Gets the names of all files and subdirectories in a specified directory.
  5055. </summary>
  5056. <param name="path">The path to search.</param>
  5057. <returns>Array of files and subdirectories matching the search pattern.</returns>
  5058. </member>
  5059. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.GetFileSystemEntries(System.String,System.String)">
  5060. <summary>
  5061. Gets the names of files and subdirectories in a specified directory matching a specified
  5062. search pattern.
  5063. </summary>
  5064. <param name="path">The path to search.</param>
  5065. <param name="searchPattern">The search string to match against.</param>
  5066. <returns>Array of files and subdirectories matching the search pattern.</returns>
  5067. </member>
  5068. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.MoveDirectory(System.String,System.String)">
  5069. <summary>
  5070. Moves a directory.
  5071. </summary>
  5072. <param name="sourceDirectoryName">The directory to move.</param>
  5073. <param name="destinationDirectoryName">The target directory name.</param>
  5074. </member>
  5075. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.MoveFile(System.String,System.String)">
  5076. <summary>
  5077. Moves a file.
  5078. </summary>
  5079. <param name="sourceName">The file to move.</param>
  5080. <param name="destinationName">The target file name.</param>
  5081. </member>
  5082. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.MoveFile(System.String,System.String,System.Boolean)">
  5083. <summary>
  5084. Moves a file, allowing an existing file to be overwritten.
  5085. </summary>
  5086. <param name="sourceName">The file to move.</param>
  5087. <param name="destinationName">The target file name.</param>
  5088. <param name="overwrite">Whether to permit a destination file to be overwritten.</param>
  5089. </member>
  5090. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.OpenFile(System.String,System.IO.FileMode)">
  5091. <summary>
  5092. Opens the specified file.
  5093. </summary>
  5094. <param name="path">The full path of the file to open.</param>
  5095. <param name="mode">The file mode for the created stream.</param>
  5096. <returns>The new stream.</returns>
  5097. </member>
  5098. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.OpenFile(System.String,System.IO.FileMode,System.IO.FileAccess)">
  5099. <summary>
  5100. Opens the specified file.
  5101. </summary>
  5102. <param name="path">The full path of the file to open.</param>
  5103. <param name="mode">The file mode for the created stream.</param>
  5104. <param name="access">The access permissions for the created stream.</param>
  5105. <returns>The new stream.</returns>
  5106. </member>
  5107. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.GetAttributes(System.String)">
  5108. <summary>
  5109. Gets the attributes of a file or directory.
  5110. </summary>
  5111. <param name="path">The file or directory to inspect.</param>
  5112. <returns>The attributes of the file or directory.</returns>
  5113. </member>
  5114. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.SetAttributes(System.String,System.IO.FileAttributes)">
  5115. <summary>
  5116. Sets the attributes of a file or directory.
  5117. </summary>
  5118. <param name="path">The file or directory to change.</param>
  5119. <param name="newValue">The new attributes of the file or directory.</param>
  5120. </member>
  5121. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.GetCreationTime(System.String)">
  5122. <summary>
  5123. Gets the creation time (in local time) of a file or directory.
  5124. </summary>
  5125. <param name="path">The path of the file or directory.</param>
  5126. <returns>The creation time.</returns>
  5127. </member>
  5128. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.SetCreationTime(System.String,System.DateTime)">
  5129. <summary>
  5130. Sets the creation time (in local time) of a file or directory.
  5131. </summary>
  5132. <param name="path">The path of the file or directory.</param>
  5133. <param name="newTime">The new time to set.</param>
  5134. </member>
  5135. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.GetCreationTimeUtc(System.String)">
  5136. <summary>
  5137. Gets the creation time (in UTC) of a file or directory.
  5138. </summary>
  5139. <param name="path">The path of the file or directory.</param>
  5140. <returns>The creation time.</returns>
  5141. </member>
  5142. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.SetCreationTimeUtc(System.String,System.DateTime)">
  5143. <summary>
  5144. Sets the creation time (in UTC) of a file or directory.
  5145. </summary>
  5146. <param name="path">The path of the file or directory.</param>
  5147. <param name="newTime">The new time to set.</param>
  5148. </member>
  5149. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.GetLastAccessTime(System.String)">
  5150. <summary>
  5151. Gets the last access time (in local time) of a file or directory.
  5152. </summary>
  5153. <param name="path">The path of the file or directory.</param>
  5154. <returns>The last access time.</returns>
  5155. </member>
  5156. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.SetLastAccessTime(System.String,System.DateTime)">
  5157. <summary>
  5158. Sets the last access time (in local time) of a file or directory.
  5159. </summary>
  5160. <param name="path">The path of the file or directory.</param>
  5161. <param name="newTime">The new time to set.</param>
  5162. </member>
  5163. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.GetLastAccessTimeUtc(System.String)">
  5164. <summary>
  5165. Gets the last access time (in UTC) of a file or directory.
  5166. </summary>
  5167. <param name="path">The path of the file or directory.</param>
  5168. <returns>The last access time.</returns>
  5169. </member>
  5170. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.SetLastAccessTimeUtc(System.String,System.DateTime)">
  5171. <summary>
  5172. Sets the last access time (in UTC) of a file or directory.
  5173. </summary>
  5174. <param name="path">The path of the file or directory.</param>
  5175. <param name="newTime">The new time to set.</param>
  5176. </member>
  5177. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.GetLastWriteTime(System.String)">
  5178. <summary>
  5179. Gets the last modification time (in local time) of a file or directory.
  5180. </summary>
  5181. <param name="path">The path of the file or directory.</param>
  5182. <returns>The last write time.</returns>
  5183. </member>
  5184. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.SetLastWriteTime(System.String,System.DateTime)">
  5185. <summary>
  5186. Sets the last modification time (in local time) of a file or directory.
  5187. </summary>
  5188. <param name="path">The path of the file or directory.</param>
  5189. <param name="newTime">The new time to set.</param>
  5190. </member>
  5191. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.GetLastWriteTimeUtc(System.String)">
  5192. <summary>
  5193. Gets the last modification time (in UTC) of a file or directory.
  5194. </summary>
  5195. <param name="path">The path of the file or directory.</param>
  5196. <returns>The last write time.</returns>
  5197. </member>
  5198. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.SetLastWriteTimeUtc(System.String,System.DateTime)">
  5199. <summary>
  5200. Sets the last modification time (in UTC) of a file or directory.
  5201. </summary>
  5202. <param name="path">The path of the file or directory.</param>
  5203. <param name="newTime">The new time to set.</param>
  5204. </member>
  5205. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.GetFileLength(System.String)">
  5206. <summary>
  5207. Gets the length of a file.
  5208. </summary>
  5209. <param name="path">The path to the file.</param>
  5210. <returns>The length in bytes.</returns>
  5211. </member>
  5212. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.GetFileInfo(System.String)">
  5213. <summary>
  5214. Gets an object representing a possible file.
  5215. </summary>
  5216. <param name="path">The file path.</param>
  5217. <returns>The representing object.</returns>
  5218. <remarks>The file does not need to exist.</remarks>
  5219. </member>
  5220. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.GetDirectoryInfo(System.String)">
  5221. <summary>
  5222. Gets an object representing a possible directory.
  5223. </summary>
  5224. <param name="path">The directory path.</param>
  5225. <returns>The representing object.</returns>
  5226. <remarks>The directory does not need to exist.</remarks>
  5227. </member>
  5228. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.GetFileSystemInfo(System.String)">
  5229. <summary>
  5230. Gets an object representing a possible file system object (file or directory).
  5231. </summary>
  5232. <param name="path">The file system path.</param>
  5233. <returns>The representing object.</returns>
  5234. <remarks>The file system object does not need to exist.</remarks>
  5235. </member>
  5236. <member name="P:DiscUtils.Vfs.VfsFileSystemFacade.Size">
  5237. <summary>
  5238. Size of the Filesystem in bytes
  5239. </summary>
  5240. </member>
  5241. <member name="P:DiscUtils.Vfs.VfsFileSystemFacade.UsedSpace">
  5242. <summary>
  5243. Used space of the Filesystem in bytes
  5244. </summary>
  5245. </member>
  5246. <member name="P:DiscUtils.Vfs.VfsFileSystemFacade.AvailableSpace">
  5247. <summary>
  5248. Available space of the Filesystem in bytes
  5249. </summary>
  5250. </member>
  5251. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.GetRealFileSystem``4">
  5252. <summary>
  5253. Provides access to the actual file system implementation.
  5254. </summary>
  5255. <typeparam name="TDirEntry">The concrete type representing directory entries.</typeparam>
  5256. <typeparam name="TFile">The concrete type representing files.</typeparam>
  5257. <typeparam name="TDirectory">The concrete type representing directories.</typeparam>
  5258. <typeparam name="TContext">The concrete type holding global state.</typeparam>
  5259. <returns>The actual file system instance.</returns>
  5260. </member>
  5261. <member name="M:DiscUtils.Vfs.VfsFileSystemFacade.GetRealFileSystem``1">
  5262. <summary>
  5263. Provides access to the actual file system implementation.
  5264. </summary>
  5265. <typeparam name="T">The concrete type of the actual file system.</typeparam>
  5266. <returns>The actual file system instance.</returns>
  5267. </member>
  5268. <member name="T:DiscUtils.Vfs.VfsFileSystemFactory">
  5269. <summary>
  5270. Base class for logic to detect file systems.
  5271. </summary>
  5272. </member>
  5273. <member name="M:DiscUtils.Vfs.VfsFileSystemFactory.Detect(System.IO.Stream)">
  5274. <summary>
  5275. Detects if a stream contains any known file systems.
  5276. </summary>
  5277. <param name="stream">The stream to inspect.</param>
  5278. <returns>A list of file systems (may be empty).</returns>
  5279. </member>
  5280. <member name="M:DiscUtils.Vfs.VfsFileSystemFactory.Detect(DiscUtils.VolumeInfo)">
  5281. <summary>
  5282. Detects if a volume contains any known file systems.
  5283. </summary>
  5284. <param name="volume">The volume to inspect.</param>
  5285. <returns>A list of file systems (may be empty).</returns>
  5286. </member>
  5287. <member name="M:DiscUtils.Vfs.VfsFileSystemFactory.Detect(System.IO.Stream,DiscUtils.VolumeInfo)">
  5288. <summary>
  5289. The logic for detecting file systems.
  5290. </summary>
  5291. <param name="stream">The stream to inspect.</param>
  5292. <param name="volumeInfo">Optionally, information about the volume.</param>
  5293. <returns>A list of file systems detected (may be empty).</returns>
  5294. </member>
  5295. <member name="T:DiscUtils.Vfs.VfsFileSystemFactoryAttribute">
  5296. <summary>
  5297. Attribute identifying file system factory classes.
  5298. </summary>
  5299. </member>
  5300. <member name="T:DiscUtils.Vfs.VfsFileSystemInfo">
  5301. <summary>
  5302. Class holding information about a file system.
  5303. </summary>
  5304. </member>
  5305. <member name="M:DiscUtils.Vfs.VfsFileSystemInfo.#ctor(System.String,System.String,DiscUtils.Vfs.VfsFileSystemOpener)">
  5306. <summary>
  5307. Initializes a new instance of the VfsFileSystemInfo class.
  5308. </summary>
  5309. <param name="name">The name of the file system.</param>
  5310. <param name="description">A one-line description of the file system.</param>
  5311. <param name="openDelegate">A delegate that can open streams as the indicated file system.</param>
  5312. </member>
  5313. <member name="P:DiscUtils.Vfs.VfsFileSystemInfo.Description">
  5314. <summary>
  5315. Gets a one-line description of the file system.
  5316. </summary>
  5317. </member>
  5318. <member name="P:DiscUtils.Vfs.VfsFileSystemInfo.Name">
  5319. <summary>
  5320. Gets the name of the file system.
  5321. </summary>
  5322. </member>
  5323. <member name="M:DiscUtils.Vfs.VfsFileSystemInfo.Open(DiscUtils.VolumeInfo,DiscUtils.FileSystemParameters)">
  5324. <summary>
  5325. Opens a volume using the file system.
  5326. </summary>
  5327. <param name="volume">The volume to access.</param>
  5328. <param name="parameters">Parameters for the file system.</param>
  5329. <returns>A file system instance.</returns>
  5330. </member>
  5331. <member name="M:DiscUtils.Vfs.VfsFileSystemInfo.Open(System.IO.Stream,DiscUtils.FileSystemParameters)">
  5332. <summary>
  5333. Opens a stream using the file system.
  5334. </summary>
  5335. <param name="stream">The stream to access.</param>
  5336. <param name="parameters">Parameters for the file system.</param>
  5337. <returns>A file system instance.</returns>
  5338. </member>
  5339. <member name="T:DiscUtils.Vfs.VfsFileSystemOpener">
  5340. <summary>
  5341. Delegate for instantiating a file system.
  5342. </summary>
  5343. <param name="stream">The stream containing the file system.</param>
  5344. <param name="volumeInfo">Optional, information about the volume the file system is on.</param>
  5345. <param name="parameters">Parameters for the file system.</param>
  5346. <returns>A file system implementation.</returns>
  5347. </member>
  5348. <member name="T:DiscUtils.Vfs.VfsReadOnlyFileSystem`4">
  5349. <summary>
  5350. Base class for read-only file system implementations.
  5351. </summary>
  5352. <typeparam name="TDirEntry">The concrete type representing directory entries.</typeparam>
  5353. <typeparam name="TFile">The concrete type representing files.</typeparam>
  5354. <typeparam name="TDirectory">The concrete type representing directories.</typeparam>
  5355. <typeparam name="TContext">The concrete type holding global state.</typeparam>
  5356. </member>
  5357. <member name="M:DiscUtils.Vfs.VfsReadOnlyFileSystem`4.#ctor(DiscUtils.DiscFileSystemOptions)">
  5358. <summary>
  5359. Initializes a new instance of the VfsReadOnlyFileSystem class.
  5360. </summary>
  5361. <param name="defaultOptions">The default file system options.</param>
  5362. </member>
  5363. <member name="P:DiscUtils.Vfs.VfsReadOnlyFileSystem`4.CanWrite">
  5364. <summary>
  5365. Indicates whether the file system is read-only or read-write.
  5366. </summary>
  5367. <returns>Always false.</returns>
  5368. </member>
  5369. <member name="M:DiscUtils.Vfs.VfsReadOnlyFileSystem`4.CopyFile(System.String,System.String,System.Boolean)">
  5370. <summary>
  5371. Copies a file - not supported on read-only file systems.
  5372. </summary>
  5373. <param name="sourceFile">The source file.</param>
  5374. <param name="destinationFile">The destination file.</param>
  5375. <param name="overwrite">Whether to permit over-writing of an existing file.</param>
  5376. </member>
  5377. <member name="M:DiscUtils.Vfs.VfsReadOnlyFileSystem`4.CreateDirectory(System.String)">
  5378. <summary>
  5379. Creates a directory - not supported on read-only file systems.
  5380. </summary>
  5381. <param name="path">The path of the new directory.</param>
  5382. </member>
  5383. <member name="M:DiscUtils.Vfs.VfsReadOnlyFileSystem`4.DeleteDirectory(System.String)">
  5384. <summary>
  5385. Deletes a directory - not supported on read-only file systems.
  5386. </summary>
  5387. <param name="path">The path of the directory to delete.</param>
  5388. </member>
  5389. <member name="M:DiscUtils.Vfs.VfsReadOnlyFileSystem`4.DeleteFile(System.String)">
  5390. <summary>
  5391. Deletes a file - not supported on read-only file systems.
  5392. </summary>
  5393. <param name="path">The path of the file to delete.</param>
  5394. </member>
  5395. <member name="M:DiscUtils.Vfs.VfsReadOnlyFileSystem`4.MoveDirectory(System.String,System.String)">
  5396. <summary>
  5397. Moves a directory - not supported on read-only file systems.
  5398. </summary>
  5399. <param name="sourceDirectoryName">The directory to move.</param>
  5400. <param name="destinationDirectoryName">The target directory name.</param>
  5401. </member>
  5402. <member name="M:DiscUtils.Vfs.VfsReadOnlyFileSystem`4.MoveFile(System.String,System.String,System.Boolean)">
  5403. <summary>
  5404. Moves a file - not supported on read-only file systems.
  5405. </summary>
  5406. <param name="sourceName">The file to move.</param>
  5407. <param name="destinationName">The target file name.</param>
  5408. <param name="overwrite">Whether to allow an existing file to be overwritten.</param>
  5409. </member>
  5410. <member name="M:DiscUtils.Vfs.VfsReadOnlyFileSystem`4.OpenFile(System.String,System.IO.FileMode)">
  5411. <summary>
  5412. Opens the specified file.
  5413. </summary>
  5414. <param name="path">The full path of the file to open.</param>
  5415. <param name="mode">The file mode for the created stream.</param>
  5416. <returns>The new stream.</returns>
  5417. </member>
  5418. <member name="M:DiscUtils.Vfs.VfsReadOnlyFileSystem`4.SetAttributes(System.String,System.IO.FileAttributes)">
  5419. <summary>
  5420. Sets the attributes of a file or directory - not supported on read-only file systems.
  5421. </summary>
  5422. <param name="path">The file or directory to change.</param>
  5423. <param name="newValue">The new attributes of the file or directory.</param>
  5424. </member>
  5425. <member name="M:DiscUtils.Vfs.VfsReadOnlyFileSystem`4.SetCreationTimeUtc(System.String,System.DateTime)">
  5426. <summary>
  5427. Sets the creation time (in UTC) of a file or directory - not supported on read-only file systems.
  5428. </summary>
  5429. <param name="path">The path of the file or directory.</param>
  5430. <param name="newTime">The new time to set.</param>
  5431. </member>
  5432. <member name="M:DiscUtils.Vfs.VfsReadOnlyFileSystem`4.SetLastAccessTimeUtc(System.String,System.DateTime)">
  5433. <summary>
  5434. Sets the last access time (in UTC) of a file or directory - not supported on read-only file systems.
  5435. </summary>
  5436. <param name="path">The path of the file or directory.</param>
  5437. <param name="newTime">The new time to set.</param>
  5438. </member>
  5439. <member name="M:DiscUtils.Vfs.VfsReadOnlyFileSystem`4.SetLastWriteTimeUtc(System.String,System.DateTime)">
  5440. <summary>
  5441. Sets the last modification time (in UTC) of a file or directory - not supported on read-only file systems.
  5442. </summary>
  5443. <param name="path">The path of the file or directory.</param>
  5444. <param name="newTime">The new time to set.</param>
  5445. </member>
  5446. <member name="T:DiscUtils.VirtualDisk">
  5447. <summary>
  5448. Base class representing virtual hard disks.
  5449. </summary>
  5450. </member>
  5451. <member name="M:DiscUtils.VirtualDisk.Finalize">
  5452. <summary>
  5453. Finalizes an instance of the VirtualDisk class.
  5454. </summary>
  5455. </member>
  5456. <member name="P:DiscUtils.VirtualDisk.SupportedDiskFormats">
  5457. <summary>
  5458. Gets the set of disk formats supported as an array of file extensions.
  5459. </summary>
  5460. </member>
  5461. <member name="P:DiscUtils.VirtualDisk.SupportedDiskTypes">
  5462. <summary>
  5463. Gets the set of disk types supported, as an array of identifiers.
  5464. </summary>
  5465. </member>
  5466. <member name="P:DiscUtils.VirtualDisk.Geometry">
  5467. <summary>
  5468. Gets the geometry of the disk.
  5469. </summary>
  5470. </member>
  5471. <member name="P:DiscUtils.VirtualDisk.BiosGeometry">
  5472. <summary>
  5473. Gets the geometry of the disk as it is anticipated a hypervisor BIOS will represent it.
  5474. </summary>
  5475. </member>
  5476. <member name="P:DiscUtils.VirtualDisk.DiskClass">
  5477. <summary>
  5478. Gets the type of disk represented by this object.
  5479. </summary>
  5480. </member>
  5481. <member name="P:DiscUtils.VirtualDisk.Capacity">
  5482. <summary>
  5483. Gets the capacity of the disk (in bytes).
  5484. </summary>
  5485. </member>
  5486. <member name="P:DiscUtils.VirtualDisk.BlockSize">
  5487. <summary>
  5488. Gets the size of the disk's logical blocks (aka sector size), in bytes.
  5489. </summary>
  5490. </member>
  5491. <member name="P:DiscUtils.VirtualDisk.SectorSize">
  5492. <summary>
  5493. Gets the logical sector size of the disk, in bytes.
  5494. </summary>
  5495. <remarks>This is an alias for the <c>BlockSize</c> property.</remarks>
  5496. </member>
  5497. <member name="P:DiscUtils.VirtualDisk.Content">
  5498. <summary>
  5499. Gets the content of the disk as a stream.
  5500. </summary>
  5501. <remarks>Note the returned stream is not guaranteed to be at any particular position. The actual position
  5502. will depend on the last partition table/file system activity, since all access to the disk contents pass
  5503. through a single stream instance. Set the stream position before accessing the stream.</remarks>
  5504. </member>
  5505. <member name="P:DiscUtils.VirtualDisk.Layers">
  5506. <summary>
  5507. Gets the layers that make up the disk.
  5508. </summary>
  5509. </member>
  5510. <member name="P:DiscUtils.VirtualDisk.Signature">
  5511. <summary>
  5512. Gets or sets the Windows disk signature of the disk, which uniquely identifies the disk.
  5513. </summary>
  5514. </member>
  5515. <member name="P:DiscUtils.VirtualDisk.IsPartitioned">
  5516. <summary>
  5517. Gets a value indicating whether the disk appears to have a valid partition table.
  5518. </summary>
  5519. <remarks>There is no reliable way to determine whether a disk has a valid partition
  5520. table. The 'guess' consists of checking for basic indicators and looking for obviously
  5521. invalid data, such as overlapping partitions.</remarks>
  5522. </member>
  5523. <member name="P:DiscUtils.VirtualDisk.Partitions">
  5524. <summary>
  5525. Gets the object that interprets the partition structure.
  5526. </summary>
  5527. <remarks>It is theoretically possible for a disk to contain two independent partition structures - a
  5528. BIOS/GPT one and an Apple one, for example. This method will return in order of preference,
  5529. a GUID partition table, a BIOS partition table, then in undefined preference one of any other partition
  5530. tables found. See PartitionTable.GetPartitionTables to gain access to all the discovered partition
  5531. tables on a disk.</remarks>
  5532. </member>
  5533. <member name="P:DiscUtils.VirtualDisk.Parameters">
  5534. <summary>
  5535. Gets the parameters of the disk.
  5536. </summary>
  5537. <remarks>Most of the parameters are also available individually, such as DiskType and Capacity.</remarks>
  5538. </member>
  5539. <member name="P:DiscUtils.VirtualDisk.DiskTypeInfo">
  5540. <summary>
  5541. Gets information about the type of disk.
  5542. </summary>
  5543. <remarks>This property provides access to meta-data about the disk format, for example whether the
  5544. BIOS geometry is preserved in the disk file.</remarks>
  5545. </member>
  5546. <member name="M:DiscUtils.VirtualDisk.GetSupportedDiskVariants(System.String)">
  5547. <summary>
  5548. Gets the set of supported variants of a type of virtual disk.
  5549. </summary>
  5550. <param name="type">A type, as returned by <see cref="P:DiscUtils.VirtualDisk.SupportedDiskTypes"/>.</param>
  5551. <returns>A collection of identifiers, or empty if there is no variant concept for this type of disk.</returns>
  5552. </member>
  5553. <member name="M:DiscUtils.VirtualDisk.GetDiskType(System.String,System.String)">
  5554. <summary>
  5555. Gets information about disk type.
  5556. </summary>
  5557. <param name="type">The disk type, as returned by <see cref="P:DiscUtils.VirtualDisk.SupportedDiskTypes"/>.</param>
  5558. <param name="variant">The variant of the disk type.</param>
  5559. <returns>Information about the disk type.</returns>
  5560. </member>
  5561. <member name="M:DiscUtils.VirtualDisk.CreateDisk(DiscUtils.DiscFileSystem,System.String,System.String,System.String,System.Int64,DiscUtils.Geometry,System.Collections.Generic.Dictionary{System.String,System.String})">
  5562. <summary>
  5563. Create a new virtual disk, possibly within an existing disk.
  5564. </summary>
  5565. <param name="fileSystem">The file system to create the disk on.</param>
  5566. <param name="type">The type of disk to create (see <see cref="P:DiscUtils.VirtualDisk.SupportedDiskTypes"/>).</param>
  5567. <param name="variant">The variant of the type to create (see <see cref="M:DiscUtils.VirtualDisk.GetSupportedDiskVariants(System.String)"/>).</param>
  5568. <param name="path">The path (or URI) for the disk to create.</param>
  5569. <param name="capacity">The capacity of the new disk.</param>
  5570. <param name="geometry">The geometry of the new disk (or null).</param>
  5571. <param name="parameters">Untyped parameters controlling the creation process (TBD).</param>
  5572. <returns>The newly created disk.</returns>
  5573. </member>
  5574. <member name="M:DiscUtils.VirtualDisk.CreateDisk(System.String,System.String,System.String,System.Int64,DiscUtils.Geometry,System.Collections.Generic.Dictionary{System.String,System.String})">
  5575. <summary>
  5576. Create a new virtual disk.
  5577. </summary>
  5578. <param name="type">The type of disk to create (see <see cref="P:DiscUtils.VirtualDisk.SupportedDiskTypes"/>).</param>
  5579. <param name="variant">The variant of the type to create (see <see cref="M:DiscUtils.VirtualDisk.GetSupportedDiskVariants(System.String)"/>).</param>
  5580. <param name="path">The path (or URI) for the disk to create.</param>
  5581. <param name="capacity">The capacity of the new disk.</param>
  5582. <param name="geometry">The geometry of the new disk (or null).</param>
  5583. <param name="parameters">Untyped parameters controlling the creation process (TBD).</param>
  5584. <returns>The newly created disk.</returns>
  5585. </member>
  5586. <member name="M:DiscUtils.VirtualDisk.CreateDisk(System.String,System.String,System.String,System.Int64,DiscUtils.Geometry,System.String,System.String,System.Collections.Generic.Dictionary{System.String,System.String})">
  5587. <summary>
  5588. Create a new virtual disk.
  5589. </summary>
  5590. <param name="type">The type of disk to create (see <see cref="P:DiscUtils.VirtualDisk.SupportedDiskTypes"/>).</param>
  5591. <param name="variant">The variant of the type to create (see <see cref="M:DiscUtils.VirtualDisk.GetSupportedDiskVariants(System.String)"/>).</param>
  5592. <param name="path">The path (or URI) for the disk to create.</param>
  5593. <param name="capacity">The capacity of the new disk.</param>
  5594. <param name="geometry">The geometry of the new disk (or null).</param>
  5595. <param name="user">The user identity to use when accessing the <c>path</c> (or null).</param>
  5596. <param name="password">The password to use when accessing the <c>path</c> (or null).</param>
  5597. <param name="parameters">Untyped parameters controlling the creation process (TBD).</param>
  5598. <returns>The newly created disk.</returns>
  5599. </member>
  5600. <member name="M:DiscUtils.VirtualDisk.CreateDisk(System.String,System.String,System.String,DiscUtils.VirtualDiskParameters,System.String,System.String)">
  5601. <summary>
  5602. Create a new virtual disk.
  5603. </summary>
  5604. <param name="type">The type of disk to create (see <see cref="P:DiscUtils.VirtualDisk.SupportedDiskTypes"/>).</param>
  5605. <param name="variant">The variant of the type to create (see <see cref="M:DiscUtils.VirtualDisk.GetSupportedDiskVariants(System.String)"/>).</param>
  5606. <param name="path">The path (or URI) for the disk to create.</param>
  5607. <param name="diskParameters">Parameters controlling the capacity, geometry, etc of the new disk.</param>
  5608. <param name="user">The user identity to use when accessing the <c>path</c> (or null).</param>
  5609. <param name="password">The password to use when accessing the <c>path</c> (or null).</param>
  5610. <returns>The newly created disk.</returns>
  5611. </member>
  5612. <member name="M:DiscUtils.VirtualDisk.OpenDisk(System.String,System.IO.FileAccess)">
  5613. <summary>
  5614. Opens an existing virtual disk.
  5615. </summary>
  5616. <param name="path">The path of the virtual disk to open, can be a URI.</param>
  5617. <param name="access">The desired access to the disk.</param>
  5618. <returns>The Virtual Disk, or <c>null</c> if an unknown disk format.</returns>
  5619. </member>
  5620. <member name="M:DiscUtils.VirtualDisk.OpenDisk(System.String,System.IO.FileAccess,System.String,System.String)">
  5621. <summary>
  5622. Opens an existing virtual disk.
  5623. </summary>
  5624. <param name="path">The path of the virtual disk to open, can be a URI.</param>
  5625. <param name="access">The desired access to the disk.</param>
  5626. <param name="user">The user name to use for authentication (if necessary).</param>
  5627. <param name="password">The password to use for authentication (if necessary).</param>
  5628. <returns>The Virtual Disk, or <c>null</c> if an unknown disk format.</returns>
  5629. </member>
  5630. <member name="M:DiscUtils.VirtualDisk.OpenDisk(System.String,System.String,System.IO.FileAccess,System.String,System.String)">
  5631. <summary>
  5632. Opens an existing virtual disk.
  5633. </summary>
  5634. <param name="path">The path of the virtual disk to open, can be a URI.</param>
  5635. <param name="forceType">Force the detected disk type (<c>null</c> to detect).</param>
  5636. <param name="access">The desired access to the disk.</param>
  5637. <param name="user">The user name to use for authentication (if necessary).</param>
  5638. <param name="password">The password to use for authentication (if necessary).</param>
  5639. <returns>The Virtual Disk, or <c>null</c> if an unknown disk format.</returns>
  5640. <remarks>
  5641. The detected disk type can be forced by specifying a known disk type:
  5642. RAW, VHD, VMDK, etc.
  5643. </remarks>
  5644. </member>
  5645. <member name="M:DiscUtils.VirtualDisk.OpenDisk(DiscUtils.DiscFileSystem,System.String,System.IO.FileAccess)">
  5646. <summary>
  5647. Opens an existing virtual disk, possibly from within an existing disk.
  5648. </summary>
  5649. <param name="fs">The file system to open the disk on.</param>
  5650. <param name="path">The path of the virtual disk to open.</param>
  5651. <param name="access">The desired access to the disk.</param>
  5652. <returns>The Virtual Disk, or <c>null</c> if an unknown disk format.</returns>
  5653. </member>
  5654. <member name="M:DiscUtils.VirtualDisk.Dispose">
  5655. <summary>
  5656. Disposes of this instance, freeing underlying resources.
  5657. </summary>
  5658. </member>
  5659. <member name="M:DiscUtils.VirtualDisk.GetMasterBootRecord">
  5660. <summary>
  5661. Reads the first sector of the disk, known as the Master Boot Record.
  5662. </summary>
  5663. <returns>The MBR as a byte array.</returns>
  5664. </member>
  5665. <member name="M:DiscUtils.VirtualDisk.SetMasterBootRecord(System.Byte[])">
  5666. <summary>
  5667. Overwrites the first sector of the disk, known as the Master Boot Record.
  5668. </summary>
  5669. <param name="data">The master boot record, must be 512 bytes in length.</param>
  5670. </member>
  5671. <member name="M:DiscUtils.VirtualDisk.CreateDifferencingDisk(DiscUtils.DiscFileSystem,System.String)">
  5672. <summary>
  5673. Create a new differencing disk, possibly within an existing disk.
  5674. </summary>
  5675. <param name="fileSystem">The file system to create the disk on.</param>
  5676. <param name="path">The path (or URI) for the disk to create.</param>
  5677. <returns>The newly created disk.</returns>
  5678. </member>
  5679. <member name="M:DiscUtils.VirtualDisk.CreateDifferencingDisk(System.String)">
  5680. <summary>
  5681. Create a new differencing disk.
  5682. </summary>
  5683. <param name="path">The path (or URI) for the disk to create.</param>
  5684. <returns>The newly created disk.</returns>
  5685. </member>
  5686. <member name="M:DiscUtils.VirtualDisk.Dispose(System.Boolean)">
  5687. <summary>
  5688. Disposes of underlying resources.
  5689. </summary>
  5690. <param name="disposing"><c>true</c> if running inside Dispose(), indicating
  5691. graceful cleanup of all managed objects should be performed, or <c>false</c>
  5692. if running inside destructor.</param>
  5693. </member>
  5694. <member name="T:DiscUtils.VirtualDiskClass">
  5695. <summary>
  5696. Enumeration of different classes of disk.
  5697. </summary>
  5698. </member>
  5699. <member name="F:DiscUtils.VirtualDiskClass.None">
  5700. <summary>
  5701. Unknown (or unspecified) type.
  5702. </summary>
  5703. </member>
  5704. <member name="F:DiscUtils.VirtualDiskClass.HardDisk">
  5705. <summary>
  5706. Hard disk.
  5707. </summary>
  5708. </member>
  5709. <member name="F:DiscUtils.VirtualDiskClass.OpticalDisk">
  5710. <summary>
  5711. Optical disk, such as CD or DVD.
  5712. </summary>
  5713. </member>
  5714. <member name="F:DiscUtils.VirtualDiskClass.FloppyDisk">
  5715. <summary>
  5716. Floppy disk.
  5717. </summary>
  5718. </member>
  5719. <member name="T:DiscUtils.VirtualDiskExtent">
  5720. <summary>
  5721. Base class represented a stored extent of a virtual disk.
  5722. </summary>
  5723. <remarks>
  5724. Some file formats can divide a logical disk layer into multiple extents, stored in
  5725. different files. This class represents those extents. Normally, all virtual disks
  5726. have at least one extent.
  5727. </remarks>
  5728. </member>
  5729. <member name="P:DiscUtils.VirtualDiskExtent.Capacity">
  5730. <summary>
  5731. Gets the capacity of the extent (in bytes).
  5732. </summary>
  5733. </member>
  5734. <member name="P:DiscUtils.VirtualDiskExtent.IsSparse">
  5735. <summary>
  5736. Gets a value indicating whether the extent only stores meaningful sectors.
  5737. </summary>
  5738. </member>
  5739. <member name="P:DiscUtils.VirtualDiskExtent.StoredSize">
  5740. <summary>
  5741. Gets the size of the extent (in bytes) on underlying storage.
  5742. </summary>
  5743. </member>
  5744. <member name="M:DiscUtils.VirtualDiskExtent.Dispose">
  5745. <summary>
  5746. Disposes of this instance, freeing underlying resources.
  5747. </summary>
  5748. </member>
  5749. <member name="M:DiscUtils.VirtualDiskExtent.OpenContent(DiscUtils.Streams.SparseStream,DiscUtils.Streams.Ownership)">
  5750. <summary>
  5751. Gets the content of this extent.
  5752. </summary>
  5753. <param name="parent">The parent stream (if any).</param>
  5754. <param name="ownsParent">Controls ownership of the parent stream.</param>
  5755. <returns>The content as a stream.</returns>
  5756. </member>
  5757. <member name="M:DiscUtils.VirtualDiskExtent.Dispose(System.Boolean)">
  5758. <summary>
  5759. Disposes of underlying resources.
  5760. </summary>
  5761. <param name="disposing"><c>true</c> if running inside Dispose(), indicating
  5762. graceful cleanup of all managed objects should be performed, or <c>false</c>
  5763. if running inside destructor.</param>
  5764. </member>
  5765. <member name="T:DiscUtils.VirtualDiskLayer">
  5766. <summary>
  5767. Represents the base layer, or a differencing layer of a VirtualDisk.
  5768. </summary>
  5769. <remarks>
  5770. <para>VirtualDisks are composed of one or more layers - a base layer
  5771. which represents the entire disk (even if not all bytes are actually stored),
  5772. and a number of differencing layers that store the disk sectors that are
  5773. logically different to the base layer.</para>
  5774. <para>Disk Layers may not store all sectors. Any sectors that are not stored
  5775. are logically zero's (for base layers), or holes through to the layer underneath
  5776. (all other layers).</para>
  5777. </remarks>
  5778. </member>
  5779. <member name="P:DiscUtils.VirtualDiskLayer.Capacity">
  5780. <summary>
  5781. Gets the capacity of the disk (in bytes).
  5782. </summary>
  5783. </member>
  5784. <member name="P:DiscUtils.VirtualDiskLayer.Extents">
  5785. <summary>
  5786. Gets and sets the logical extents that make up this layer.
  5787. </summary>
  5788. </member>
  5789. <member name="P:DiscUtils.VirtualDiskLayer.FullPath">
  5790. <summary>
  5791. Gets the full path to this disk layer, or empty string.
  5792. </summary>
  5793. </member>
  5794. <member name="P:DiscUtils.VirtualDiskLayer.Geometry">
  5795. <summary>
  5796. Gets the geometry of the virtual disk layer.
  5797. </summary>
  5798. </member>
  5799. <member name="P:DiscUtils.VirtualDiskLayer.IsSparse">
  5800. <summary>
  5801. Gets a value indicating whether the layer only stores meaningful sectors.
  5802. </summary>
  5803. </member>
  5804. <member name="P:DiscUtils.VirtualDiskLayer.NeedsParent">
  5805. <summary>
  5806. Gets a value indicating whether this is a differential disk.
  5807. </summary>
  5808. </member>
  5809. <member name="P:DiscUtils.VirtualDiskLayer.RelativeFileLocator">
  5810. <summary>
  5811. Gets a <c>FileLocator</c> that can resolve relative paths, or <c>null</c>.
  5812. </summary>
  5813. <remarks>
  5814. Typically used to locate parent disks.
  5815. </remarks>
  5816. </member>
  5817. <member name="M:DiscUtils.VirtualDiskLayer.Dispose">
  5818. <summary>
  5819. Disposes of this instance, freeing underlying resources.
  5820. </summary>
  5821. </member>
  5822. <member name="M:DiscUtils.VirtualDiskLayer.Finalize">
  5823. <summary>
  5824. Finalizes an instance of the VirtualDiskLayer class.
  5825. </summary>
  5826. </member>
  5827. <member name="M:DiscUtils.VirtualDiskLayer.OpenContent(DiscUtils.Streams.SparseStream,DiscUtils.Streams.Ownership)">
  5828. <summary>
  5829. Gets the content of this layer.
  5830. </summary>
  5831. <param name="parent">The parent stream (if any).</param>
  5832. <param name="ownsParent">Controls ownership of the parent stream.</param>
  5833. <returns>The content as a stream.</returns>
  5834. </member>
  5835. <member name="M:DiscUtils.VirtualDiskLayer.GetParentLocations">
  5836. <summary>
  5837. Gets the possible locations of the parent file (if any).
  5838. </summary>
  5839. <returns>Array of strings, empty if no parent.</returns>
  5840. </member>
  5841. <member name="M:DiscUtils.VirtualDiskLayer.Dispose(System.Boolean)">
  5842. <summary>
  5843. Disposes of underlying resources.
  5844. </summary>
  5845. <param name="disposing"><c>true</c> if running inside Dispose(), indicating
  5846. graceful cleanup of all managed objects should be performed, or <c>false</c>
  5847. if running inside destructor.</param>
  5848. </member>
  5849. <member name="T:DiscUtils.VirtualDiskManager">
  5850. <summary>
  5851. Helps discover and use VirtualDiskFactory's
  5852. </summary>
  5853. </member>
  5854. <member name="P:DiscUtils.VirtualDiskManager.SupportedDiskFormats">
  5855. <summary>
  5856. Gets the set of disk formats supported as an array of file extensions.
  5857. </summary>
  5858. </member>
  5859. <member name="P:DiscUtils.VirtualDiskManager.SupportedDiskTypes">
  5860. <summary>
  5861. Gets the set of disk types supported, as an array of identifiers.
  5862. </summary>
  5863. </member>
  5864. <member name="M:DiscUtils.VirtualDiskManager.RegisterVirtualDiskTypes(System.Reflection.Assembly)">
  5865. <summary>
  5866. Locates VirtualDiskFactory factories attributed with VirtualDiskFactoryAttribute, and types marked with VirtualDiskTransportAttribute, that are able to work with Virtual Disk types.
  5867. </summary>
  5868. <param name="assembly">An assembly to scan</param>
  5869. </member>
  5870. <member name="T:DiscUtils.VirtualDiskParameters">
  5871. <summary>
  5872. Common parameters for virtual disks.
  5873. </summary>
  5874. <remarks>Not all attributes make sense for all kinds of disks, so some
  5875. may be null. Modifying instances of this class does not modify the
  5876. disk itself.</remarks>
  5877. </member>
  5878. <member name="P:DiscUtils.VirtualDiskParameters.AdapterType">
  5879. <summary>
  5880. Gets or sets the type of disk adapter.
  5881. </summary>
  5882. </member>
  5883. <member name="P:DiscUtils.VirtualDiskParameters.BiosGeometry">
  5884. <summary>
  5885. Gets or sets the logical (aka BIOS) geometry of the disk.
  5886. </summary>
  5887. </member>
  5888. <member name="P:DiscUtils.VirtualDiskParameters.Capacity">
  5889. <summary>
  5890. Gets or sets the disk capacity.
  5891. </summary>
  5892. </member>
  5893. <member name="P:DiscUtils.VirtualDiskParameters.DiskType">
  5894. <summary>
  5895. Gets or sets the type of disk (optical, hard disk, etc).
  5896. </summary>
  5897. </member>
  5898. <member name="P:DiscUtils.VirtualDiskParameters.ExtendedParameters">
  5899. <summary>
  5900. Gets a dictionary of extended parameters, that varies by disk type.
  5901. </summary>
  5902. </member>
  5903. <member name="P:DiscUtils.VirtualDiskParameters.Geometry">
  5904. <summary>
  5905. Gets or sets the physical (aka IDE) geometry of the disk.
  5906. </summary>
  5907. </member>
  5908. <member name="T:DiscUtils.VirtualDiskTypeInfo">
  5909. <summary>
  5910. Information about a type of virtual disk.
  5911. </summary>
  5912. </member>
  5913. <member name="P:DiscUtils.VirtualDiskTypeInfo.CalcGeometry">
  5914. <summary>
  5915. Gets or sets the algorithm for determining the geometry for a given disk capacity.
  5916. </summary>
  5917. </member>
  5918. <member name="P:DiscUtils.VirtualDiskTypeInfo.CanBeHardDisk">
  5919. <summary>
  5920. Gets or sets a value indicating whether this disk type can represent hard disks.
  5921. </summary>
  5922. </member>
  5923. <member name="P:DiscUtils.VirtualDiskTypeInfo.DeterministicGeometry">
  5924. <summary>
  5925. Gets or sets a value indicating whether this disk type requires a specific geometry for any given disk capacity.
  5926. </summary>
  5927. </member>
  5928. <member name="P:DiscUtils.VirtualDiskTypeInfo.Name">
  5929. <summary>
  5930. Gets or sets the name of the virtual disk type.
  5931. </summary>
  5932. </member>
  5933. <member name="P:DiscUtils.VirtualDiskTypeInfo.PreservesBiosGeometry">
  5934. <summary>
  5935. Gets or sets a value indicating whether this disk type persists the BIOS geometry.
  5936. </summary>
  5937. </member>
  5938. <member name="P:DiscUtils.VirtualDiskTypeInfo.Variant">
  5939. <summary>
  5940. Gets or sets the variant of the virtual disk type.
  5941. </summary>
  5942. </member>
  5943. <member name="T:DiscUtils.VolumeInfo">
  5944. <summary>
  5945. Base class that holds information about a disk volume.
  5946. </summary>
  5947. </member>
  5948. <member name="P:DiscUtils.VolumeInfo.BiosType">
  5949. <summary>
  5950. Gets the one-byte BIOS type for this volume, which indicates the content.
  5951. </summary>
  5952. </member>
  5953. <member name="P:DiscUtils.VolumeInfo.Length">
  5954. <summary>
  5955. Gets the size of the volume, in bytes.
  5956. </summary>
  5957. </member>
  5958. <member name="P:DiscUtils.VolumeInfo.Identity">
  5959. <summary>
  5960. Gets the stable volume identity.
  5961. </summary>
  5962. <remarks>The stability of the identity depends the disk structure.
  5963. In some cases the identity may include a simple index, when no other information
  5964. is available. Best practice is to add disks to the Volume Manager in a stable
  5965. order, if the stability of this identity is paramount.</remarks>
  5966. </member>
  5967. <member name="P:DiscUtils.VolumeInfo.PhysicalGeometry">
  5968. <summary>
  5969. Gets the disk geometry of the underlying storage medium, if any (may be null).
  5970. </summary>
  5971. </member>
  5972. <member name="P:DiscUtils.VolumeInfo.BiosGeometry">
  5973. <summary>
  5974. Gets the disk geometry of the underlying storage medium (as used in BIOS calls), may be null.
  5975. </summary>
  5976. </member>
  5977. <member name="P:DiscUtils.VolumeInfo.PhysicalStartSector">
  5978. <summary>
  5979. Gets the offset of this volume in the underlying storage medium, if any (may be Zero).
  5980. </summary>
  5981. </member>
  5982. <member name="M:DiscUtils.VolumeInfo.Open">
  5983. <summary>
  5984. Opens the volume, providing access to it's contents.
  5985. </summary>
  5986. <returns>Stream that can access the volume's contents.</returns>
  5987. </member>
  5988. <member name="T:DiscUtils.VolumeManager">
  5989. <summary>
  5990. VolumeManager interprets partitions and other on-disk structures (possibly combining multiple disks).
  5991. </summary>
  5992. <remarks>
  5993. <para>Although file systems commonly are placed directly within partitions on a disk, in some
  5994. cases a logical volume manager / logical disk manager may be used, to combine disk regions in multiple
  5995. ways for data redundancy or other purposes.</para>
  5996. </remarks>
  5997. </member>
  5998. <member name="M:DiscUtils.VolumeManager.#ctor">
  5999. <summary>
  6000. Initializes a new instance of the VolumeManager class.
  6001. </summary>
  6002. </member>
  6003. <member name="M:DiscUtils.VolumeManager.#ctor(DiscUtils.VirtualDisk)">
  6004. <summary>
  6005. Initializes a new instance of the VolumeManager class.
  6006. </summary>
  6007. <param name="initialDisk">The initial disk to add.</param>
  6008. </member>
  6009. <member name="M:DiscUtils.VolumeManager.#ctor(System.IO.Stream)">
  6010. <summary>
  6011. Initializes a new instance of the VolumeManager class.
  6012. </summary>
  6013. <param name="initialDiskContent">Content of the initial disk to add.</param>
  6014. </member>
  6015. <member name="M:DiscUtils.VolumeManager.RegisterLogicalVolumeFactory(System.Reflection.Assembly)">
  6016. <summary>
  6017. Register new LogicalVolumeFactories detected in an assembly
  6018. </summary>
  6019. <param name="assembly">The assembly to inspect</param>
  6020. </member>
  6021. <member name="M:DiscUtils.VolumeManager.GetPhysicalVolumes(System.IO.Stream)">
  6022. <summary>
  6023. Gets the physical volumes held on a disk.
  6024. </summary>
  6025. <param name="diskContent">The contents of the disk to inspect.</param>
  6026. <returns>An array of volumes.</returns>
  6027. <remarks>
  6028. <para>By preference, use the form of this method that takes a disk parameter.</para>
  6029. <para>If the disk isn't partitioned, this method returns the entire disk contents
  6030. as a single volume.</para>
  6031. </remarks>
  6032. </member>
  6033. <member name="M:DiscUtils.VolumeManager.GetPhysicalVolumes(DiscUtils.VirtualDisk)">
  6034. <summary>
  6035. Gets the physical volumes held on a disk.
  6036. </summary>
  6037. <param name="disk">The disk to inspect.</param>
  6038. <returns>An array of volumes.</returns>
  6039. <remarks>If the disk isn't partitioned, this method returns the entire disk contents
  6040. as a single volume.</remarks>
  6041. </member>
  6042. <member name="M:DiscUtils.VolumeManager.AddDisk(DiscUtils.VirtualDisk)">
  6043. <summary>
  6044. Adds a disk to the volume manager.
  6045. </summary>
  6046. <param name="disk">The disk to add.</param>
  6047. <returns>The GUID the volume manager will use to identify the disk.</returns>
  6048. </member>
  6049. <member name="M:DiscUtils.VolumeManager.AddDisk(System.IO.Stream)">
  6050. <summary>
  6051. Adds a disk to the volume manager.
  6052. </summary>
  6053. <param name="content">The contents of the disk to add.</param>
  6054. <returns>The GUID the volume manager will use to identify the disk.</returns>
  6055. </member>
  6056. <member name="M:DiscUtils.VolumeManager.GetPhysicalVolumes">
  6057. <summary>
  6058. Gets the physical volumes from all disks added to this volume manager.
  6059. </summary>
  6060. <returns>An array of physical volumes.</returns>
  6061. </member>
  6062. <member name="M:DiscUtils.VolumeManager.GetLogicalVolumes">
  6063. <summary>
  6064. Gets the logical volumes from all disks added to this volume manager.
  6065. </summary>
  6066. <returns>An array of logical volumes.</returns>
  6067. </member>
  6068. <member name="M:DiscUtils.VolumeManager.GetVolume(System.String)">
  6069. <summary>
  6070. Gets a particular volume, based on it's identity.
  6071. </summary>
  6072. <param name="identity">The volume's identity.</param>
  6073. <returns>The volume information for the volume, or returns <c>null</c>.</returns>
  6074. </member>
  6075. <member name="M:DiscUtils.VolumeManager.Scan">
  6076. <summary>
  6077. Scans all of the disks for their physical and logical volumes.
  6078. </summary>
  6079. </member>
  6080. <member name="T:DiscUtils.WindowsFileInformation">
  6081. <summary>
  6082. Common information for Windows files.
  6083. </summary>
  6084. </member>
  6085. <member name="P:DiscUtils.WindowsFileInformation.ChangeTime">
  6086. <summary>
  6087. Gets or sets the last time the file was changed.
  6088. </summary>
  6089. </member>
  6090. <member name="P:DiscUtils.WindowsFileInformation.CreationTime">
  6091. <summary>
  6092. Gets or sets the creation time of the file.
  6093. </summary>
  6094. </member>
  6095. <member name="P:DiscUtils.WindowsFileInformation.FileAttributes">
  6096. <summary>
  6097. Gets or sets the file attributes.
  6098. </summary>
  6099. </member>
  6100. <member name="P:DiscUtils.WindowsFileInformation.LastAccessTime">
  6101. <summary>
  6102. Gets or sets the last access time of the file.
  6103. </summary>
  6104. </member>
  6105. <member name="P:DiscUtils.WindowsFileInformation.LastWriteTime">
  6106. <summary>
  6107. Gets or sets the modification time of the file.
  6108. </summary>
  6109. </member>
  6110. <member name="T:System.DateTimeOffsetExtensions">
  6111. <summary>
  6112. DateTimeOffset extension methods.
  6113. </summary>
  6114. </member>
  6115. <member name="F:System.DateTimeOffsetExtensions.UnixEpoch">
  6116. <summary>
  6117. The Epoch common to most (all?) Unix systems.
  6118. </summary>
  6119. </member>
  6120. <member name="M:System.DateTimeOffsetExtensions.FromUnixTimeSeconds(System.Int64)">
  6121. <summary>
  6122. Converts the current Unix time to a DateTimeOffset.
  6123. </summary>
  6124. <param name="seconds">Seconds since UnixEpoch.</param>
  6125. <returns>DateTimeOffset.</returns>
  6126. </member>
  6127. <member name="M:System.DateTimeOffsetExtensions.ToUnixTimeSeconds(System.DateTimeOffset)">
  6128. <summary>
  6129. Converts the current DateTimeOffset to Unix time.
  6130. </summary>
  6131. <param name="dateTimeOffset">DateTimeOffset.</param>
  6132. <returns>Seconds since UnixEpoch.</returns>
  6133. </member>
  6134. </members>
  6135. </doc>