LibraryFeature.cs 3.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. namespace SevenZip
  2. {
  3. using System;
  4. /// <summary>
  5. /// The set of features supported by the library.
  6. /// </summary>
  7. [Flags]
  8. [CLSCompliant(false)]
  9. public enum LibraryFeature : uint
  10. {
  11. /// <summary>
  12. /// Default feature.
  13. /// </summary>
  14. None = 0,
  15. /// <summary>
  16. /// The library can extract 7zip archives compressed with LZMA method.
  17. /// </summary>
  18. Extract7z = 0x1,
  19. /// <summary>
  20. /// The library can extract 7zip archives compressed with LZMA2 method.
  21. /// </summary>
  22. Extract7zLZMA2 = 0x2,
  23. /// <summary>
  24. /// The library can extract 7z archives compressed with all known methods.
  25. /// </summary>
  26. Extract7zAll = Extract7z|Extract7zLZMA2|0x4,
  27. /// <summary>
  28. /// The library can extract zip archives.
  29. /// </summary>
  30. ExtractZip = 0x8,
  31. /// <summary>
  32. /// The library can extract rar archives.
  33. /// </summary>
  34. ExtractRar = 0x10,
  35. /// <summary>
  36. /// The library can extract gzip archives.
  37. /// </summary>
  38. ExtractGzip = 0x20,
  39. /// <summary>
  40. /// The library can extract bzip2 archives.
  41. /// </summary>
  42. ExtractBzip2 = 0x40,
  43. /// <summary>
  44. /// The library can extract tar archives.
  45. /// </summary>
  46. ExtractTar = 0x80,
  47. /// <summary>
  48. /// The library can extract xz archives.
  49. /// </summary>
  50. ExtractXz = 0x100,
  51. /// <summary>
  52. /// The library can extract all types of archives supported.
  53. /// </summary>
  54. ExtractAll = Extract7zAll|ExtractZip|ExtractRar|ExtractGzip|ExtractBzip2|ExtractTar|ExtractXz,
  55. /// <summary>
  56. /// The library can compress data to 7zip archives with LZMA method.
  57. /// </summary>
  58. Compress7z = 0x200,
  59. /// <summary>
  60. /// The library can compress data to 7zip archives with LZMA2 method.
  61. /// </summary>
  62. Compress7zLZMA2 = 0x400,
  63. /// <summary>
  64. /// The library can compress data to 7zip archives with all methods known.
  65. /// </summary>
  66. Compress7zAll = Compress7z|Compress7zLZMA2|0x800,
  67. /// <summary>
  68. /// The library can compress data to tar archives.
  69. /// </summary>
  70. CompressTar = 0x1000,
  71. /// <summary>
  72. /// The library can compress data to gzip archives.
  73. /// </summary>
  74. CompressGzip = 0x2000,
  75. /// <summary>
  76. /// The library can compress data to bzip2 archives.
  77. /// </summary>
  78. CompressBzip2 = 0x4000,
  79. /// <summary>
  80. /// The library can compress data to xz archives.
  81. /// </summary>
  82. CompressXz = 0x8000,
  83. /// <summary>
  84. /// The library can compress data to zip archives.
  85. /// </summary>
  86. CompressZip = 0x10000,
  87. /// <summary>
  88. /// The library can compress data to all types of archives supported.
  89. /// </summary>
  90. CompressAll = Compress7zAll|CompressTar|CompressGzip|CompressBzip2|CompressXz|CompressZip,
  91. /// <summary>
  92. /// The library can modify archives.
  93. /// </summary>
  94. Modify = 0x20000
  95. }
  96. }