// // Copyright (c) 2008-2011, Kenneth Bell // // Permission is hereby granted, free of charge, to any person obtaining a // copy of this software and associated documentation files (the "Software"), // to deal in the Software without restriction, including without limitation // the rights to use, copy, modify, merge, publish, distribute, sublicense, // and/or sell copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following conditions: // // The above copyright notice and this permission notice shall be included in // all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER // DEALINGS IN THE SOFTWARE. // namespace DiscUtils { /// /// Delegate for calculating a disk geometry from a capacity. /// /// The disk capacity to convert. /// The appropriate geometry for the disk. public delegate Geometry GeometryCalculation(long capacity); /// /// Information about a type of virtual disk. /// public sealed class VirtualDiskTypeInfo { /// /// Gets or sets the name of the virtual disk type. /// public string Name { get; set; } /// /// Gets or sets the variant of the virtual disk type. /// public string Variant { get; set; } /// /// Gets or sets a value indicating whether this disk type can represent hard disks. /// public bool CanBeHardDisk { get; set; } /// /// Gets or sets a value indicating whether this disk type requires a specific geometry for any given disk capacity. /// public bool DeterministicGeometry { get; set; } /// /// Gets or sets a value indicating whether this disk type persists the BIOS geometry. /// public bool PreservesBiosGeometry { get; set; } /// /// Gets or sets the algorithm for determining the geometry for a given disk capacity. /// public GeometryCalculation CalcGeometry { get; set; } } }