1 #![allow(non_snake_case, non_camel_case_types, non_upper_case_globals, clashing_extern_declarations, clippy::all)]
2 #[link(name = "windows")]
4 pub const ASSERT_ALTERNATE
: u32 = 9u32;
5 pub const ASSERT_PRIMARY
: u32 = 8u32;
7 pub struct ASYNC_DUPLICATE_EXTENTS_STATUS
{
9 pub State
: DUPLICATE_EXTENTS_STATE
,
10 pub SourceFileOffset
: u64,
11 pub TargetFileOffset
: u64,
13 pub BytesDuplicated
: u64,
15 impl ::core
::marker
::Copy
for ASYNC_DUPLICATE_EXTENTS_STATUS {}
16 impl ::core
::clone
::Clone
for ASYNC_DUPLICATE_EXTENTS_STATUS
{
17 fn clone(&self) -> Self {
21 pub const ATAPI_ID_CMD
: u32 = 161u32;
23 pub struct BIN_COUNT
{
24 pub BinRange
: BIN_RANGE
,
27 impl ::core
::marker
::Copy
for BIN_COUNT {}
28 impl ::core
::clone
::Clone
for BIN_COUNT
{
29 fn clone(&self) -> Self {
34 pub struct BIN_RANGE
{
38 impl ::core
::marker
::Copy
for BIN_RANGE {}
39 impl ::core
::clone
::Clone
for BIN_RANGE
{
40 fn clone(&self) -> Self {
45 pub struct BIN_RESULTS
{
46 pub NumberOfBins
: u32,
47 pub BinCounts
: [BIN_COUNT
; 1],
49 impl ::core
::marker
::Copy
for BIN_RESULTS {}
50 impl ::core
::clone
::Clone
for BIN_RESULTS
{
51 fn clone(&self) -> Self {
55 pub type BIN_TYPES
= i32;
56 pub const RequestSize
: BIN_TYPES
= 0i32;
57 pub const RequestLocation
: BIN_TYPES
= 1i32;
59 pub struct BOOT_AREA_INFO
{
60 pub BootSectorCount
: u32,
61 pub BootSectors
: [BOOT_AREA_INFO_0
; 2],
63 impl ::core
::marker
::Copy
for BOOT_AREA_INFO {}
64 impl ::core
::clone
::Clone
for BOOT_AREA_INFO
{
65 fn clone(&self) -> Self {
70 pub struct BOOT_AREA_INFO_0
{
73 impl ::core
::marker
::Copy
for BOOT_AREA_INFO_0 {}
74 impl ::core
::clone
::Clone
for BOOT_AREA_INFO_0
{
75 fn clone(&self) -> Self {
80 pub struct BULK_SECURITY_TEST_DATA
{
81 pub DesiredAccess
: u32,
82 pub SecurityIds
: [u32; 1],
84 impl ::core
::marker
::Copy
for BULK_SECURITY_TEST_DATA {}
85 impl ::core
::clone
::Clone
for BULK_SECURITY_TEST_DATA
{
86 fn clone(&self) -> Self {
90 pub const CAP_ATAPI_ID_CMD
: u32 = 2u32;
91 pub const CAP_ATA_ID_CMD
: u32 = 1u32;
92 pub const CAP_SMART_CMD
: u32 = 4u32;
93 pub const CDB_SIZE
: u32 = 16u32;
94 pub type CHANGER_DEVICE_PROBLEM_TYPE
= i32;
95 pub const DeviceProblemNone
: CHANGER_DEVICE_PROBLEM_TYPE
= 0i32;
96 pub const DeviceProblemHardware
: CHANGER_DEVICE_PROBLEM_TYPE
= 1i32;
97 pub const DeviceProblemCHMError
: CHANGER_DEVICE_PROBLEM_TYPE
= 2i32;
98 pub const DeviceProblemDoorOpen
: CHANGER_DEVICE_PROBLEM_TYPE
= 3i32;
99 pub const DeviceProblemCalibrationError
: CHANGER_DEVICE_PROBLEM_TYPE
= 4i32;
100 pub const DeviceProblemTargetFailure
: CHANGER_DEVICE_PROBLEM_TYPE
= 5i32;
101 pub const DeviceProblemCHMMoveError
: CHANGER_DEVICE_PROBLEM_TYPE
= 6i32;
102 pub const DeviceProblemCHMZeroError
: CHANGER_DEVICE_PROBLEM_TYPE
= 7i32;
103 pub const DeviceProblemCartridgeInsertError
: CHANGER_DEVICE_PROBLEM_TYPE
= 8i32;
104 pub const DeviceProblemPositionError
: CHANGER_DEVICE_PROBLEM_TYPE
= 9i32;
105 pub const DeviceProblemSensorError
: CHANGER_DEVICE_PROBLEM_TYPE
= 10i32;
106 pub const DeviceProblemCartridgeEjectError
: CHANGER_DEVICE_PROBLEM_TYPE
= 11i32;
107 pub const DeviceProblemGripperError
: CHANGER_DEVICE_PROBLEM_TYPE
= 12i32;
108 pub const DeviceProblemDriveError
: CHANGER_DEVICE_PROBLEM_TYPE
= 13i32;
110 pub struct CHANGER_ELEMENT
{
111 pub ElementType
: ELEMENT_TYPE
,
112 pub ElementAddress
: u32,
114 impl ::core
::marker
::Copy
for CHANGER_ELEMENT {}
115 impl ::core
::clone
::Clone
for CHANGER_ELEMENT
{
116 fn clone(&self) -> Self {
121 pub struct CHANGER_ELEMENT_LIST
{
122 pub Element
: CHANGER_ELEMENT
,
123 pub NumberOfElements
: u32,
125 impl ::core
::marker
::Copy
for CHANGER_ELEMENT_LIST {}
126 impl ::core
::clone
::Clone
for CHANGER_ELEMENT_LIST
{
127 fn clone(&self) -> Self {
132 pub struct CHANGER_ELEMENT_STATUS
{
133 pub Element
: CHANGER_ELEMENT
,
134 pub SrcElementAddress
: CHANGER_ELEMENT
,
135 pub Flags
: CHANGER_ELEMENT_STATUS_FLAGS
,
136 pub ExceptionCode
: u32,
140 pub PrimaryVolumeID
: [u8; 36],
141 pub AlternateVolumeID
: [u8; 36],
143 impl ::core
::marker
::Copy
for CHANGER_ELEMENT_STATUS {}
144 impl ::core
::clone
::Clone
for CHANGER_ELEMENT_STATUS
{
145 fn clone(&self) -> Self {
150 pub struct CHANGER_ELEMENT_STATUS_EX
{
151 pub Element
: CHANGER_ELEMENT
,
152 pub SrcElementAddress
: CHANGER_ELEMENT
,
153 pub Flags
: CHANGER_ELEMENT_STATUS_FLAGS
,
154 pub ExceptionCode
: u32,
158 pub PrimaryVolumeID
: [u8; 36],
159 pub AlternateVolumeID
: [u8; 36],
160 pub VendorIdentification
: [u8; 8],
161 pub ProductIdentification
: [u8; 16],
162 pub SerialNumber
: [u8; 32],
164 impl ::core
::marker
::Copy
for CHANGER_ELEMENT_STATUS_EX {}
165 impl ::core
::clone
::Clone
for CHANGER_ELEMENT_STATUS_EX
{
166 fn clone(&self) -> Self {
170 pub type CHANGER_ELEMENT_STATUS_FLAGS
= u32;
171 pub const ELEMENT_STATUS_ACCESS
: CHANGER_ELEMENT_STATUS_FLAGS
= 8u32;
172 pub const ELEMENT_STATUS_AVOLTAG
: CHANGER_ELEMENT_STATUS_FLAGS
= 536870912u32;
173 pub const ELEMENT_STATUS_EXCEPT
: CHANGER_ELEMENT_STATUS_FLAGS
= 4u32;
174 pub const ELEMENT_STATUS_EXENAB
: CHANGER_ELEMENT_STATUS_FLAGS
= 16u32;
175 pub const ELEMENT_STATUS_FULL
: CHANGER_ELEMENT_STATUS_FLAGS
= 1u32;
176 pub const ELEMENT_STATUS_ID_VALID
: CHANGER_ELEMENT_STATUS_FLAGS
= 8192u32;
177 pub const ELEMENT_STATUS_IMPEXP
: CHANGER_ELEMENT_STATUS_FLAGS
= 2u32;
178 pub const ELEMENT_STATUS_INENAB
: CHANGER_ELEMENT_STATUS_FLAGS
= 32u32;
179 pub const ELEMENT_STATUS_INVERT
: CHANGER_ELEMENT_STATUS_FLAGS
= 4194304u32;
180 pub const ELEMENT_STATUS_LUN_VALID
: CHANGER_ELEMENT_STATUS_FLAGS
= 4096u32;
181 pub const ELEMENT_STATUS_NOT_BUS
: CHANGER_ELEMENT_STATUS_FLAGS
= 32768u32;
182 pub const ELEMENT_STATUS_PVOLTAG
: CHANGER_ELEMENT_STATUS_FLAGS
= 268435456u32;
183 pub const ELEMENT_STATUS_SVALID
: CHANGER_ELEMENT_STATUS_FLAGS
= 8388608u32;
184 pub const ELEMENT_STATUS_PRODUCT_DATA
: CHANGER_ELEMENT_STATUS_FLAGS
= 64u32;
186 #[cfg(feature = "Win32_Foundation")]
187 pub struct CHANGER_EXCHANGE_MEDIUM
{
188 pub Transport
: CHANGER_ELEMENT
,
189 pub Source
: CHANGER_ELEMENT
,
190 pub Destination1
: CHANGER_ELEMENT
,
191 pub Destination2
: CHANGER_ELEMENT
,
192 pub Flip1
: super::super::Foundation
::BOOLEAN
,
193 pub Flip2
: super::super::Foundation
::BOOLEAN
,
195 #[cfg(feature = "Win32_Foundation")]
196 impl ::core
::marker
::Copy
for CHANGER_EXCHANGE_MEDIUM {}
197 #[cfg(feature = "Win32_Foundation")]
198 impl ::core
::clone
::Clone
for CHANGER_EXCHANGE_MEDIUM
{
199 fn clone(&self) -> Self {
203 pub type CHANGER_FEATURES
= u32;
204 pub const CHANGER_BAR_CODE_SCANNER_INSTALLED
: CHANGER_FEATURES
= 1u32;
205 pub const CHANGER_CARTRIDGE_MAGAZINE
: CHANGER_FEATURES
= 256u32;
206 pub const CHANGER_CLEANER_ACCESS_NOT_VALID
: CHANGER_FEATURES
= 262144u32;
207 pub const CHANGER_CLEANER_SLOT
: CHANGER_FEATURES
= 64u32;
208 pub const CHANGER_CLOSE_IEPORT
: CHANGER_FEATURES
= 4u32;
209 pub const CHANGER_DEVICE_REINITIALIZE_CAPABLE
: CHANGER_FEATURES
= 134217728u32;
210 pub const CHANGER_DRIVE_CLEANING_REQUIRED
: CHANGER_FEATURES
= 65536u32;
211 pub const CHANGER_DRIVE_EMPTY_ON_DOOR_ACCESS
: CHANGER_FEATURES
= 536870912u32;
212 pub const CHANGER_EXCHANGE_MEDIA
: CHANGER_FEATURES
= 32u32;
213 pub const CHANGER_INIT_ELEM_STAT_WITH_RANGE
: CHANGER_FEATURES
= 2u32;
214 pub const CHANGER_KEYPAD_ENABLE_DISABLE
: CHANGER_FEATURES
= 268435456u32;
215 pub const CHANGER_LOCK_UNLOCK
: CHANGER_FEATURES
= 128u32;
216 pub const CHANGER_MEDIUM_FLIP
: CHANGER_FEATURES
= 512u32;
217 pub const CHANGER_OPEN_IEPORT
: CHANGER_FEATURES
= 8u32;
218 pub const CHANGER_POSITION_TO_ELEMENT
: CHANGER_FEATURES
= 1024u32;
219 pub const CHANGER_PREDISMOUNT_EJECT_REQUIRED
: CHANGER_FEATURES
= 131072u32;
220 pub const CHANGER_PREMOUNT_EJECT_REQUIRED
: CHANGER_FEATURES
= 524288u32;
221 pub const CHANGER_REPORT_IEPORT_STATE
: CHANGER_FEATURES
= 2048u32;
222 pub const CHANGER_SERIAL_NUMBER_VALID
: CHANGER_FEATURES
= 67108864u32;
223 pub const CHANGER_STATUS_NON_VOLATILE
: CHANGER_FEATURES
= 16u32;
224 pub const CHANGER_STORAGE_DRIVE
: CHANGER_FEATURES
= 4096u32;
225 pub const CHANGER_STORAGE_IEPORT
: CHANGER_FEATURES
= 8192u32;
226 pub const CHANGER_STORAGE_SLOT
: CHANGER_FEATURES
= 16384u32;
227 pub const CHANGER_STORAGE_TRANSPORT
: CHANGER_FEATURES
= 32768u32;
228 pub const CHANGER_VOLUME_ASSERT
: CHANGER_FEATURES
= 4194304u32;
229 pub const CHANGER_VOLUME_IDENTIFICATION
: CHANGER_FEATURES
= 1048576u32;
230 pub const CHANGER_VOLUME_REPLACE
: CHANGER_FEATURES
= 8388608u32;
231 pub const CHANGER_VOLUME_SEARCH
: CHANGER_FEATURES
= 2097152u32;
232 pub const CHANGER_VOLUME_UNDEFINE
: CHANGER_FEATURES
= 16777216u32;
234 #[cfg(feature = "Win32_Foundation")]
235 pub struct CHANGER_INITIALIZE_ELEMENT_STATUS
{
236 pub ElementList
: CHANGER_ELEMENT_LIST
,
237 pub BarCodeScan
: super::super::Foundation
::BOOLEAN
,
239 #[cfg(feature = "Win32_Foundation")]
240 impl ::core
::marker
::Copy
for CHANGER_INITIALIZE_ELEMENT_STATUS {}
241 #[cfg(feature = "Win32_Foundation")]
242 impl ::core
::clone
::Clone
for CHANGER_INITIALIZE_ELEMENT_STATUS
{
243 fn clone(&self) -> Self {
248 #[cfg(feature = "Win32_Foundation")]
249 pub struct CHANGER_MOVE_MEDIUM
{
250 pub Transport
: CHANGER_ELEMENT
,
251 pub Source
: CHANGER_ELEMENT
,
252 pub Destination
: CHANGER_ELEMENT
,
253 pub Flip
: super::super::Foundation
::BOOLEAN
,
255 #[cfg(feature = "Win32_Foundation")]
256 impl ::core
::marker
::Copy
for CHANGER_MOVE_MEDIUM {}
257 #[cfg(feature = "Win32_Foundation")]
258 impl ::core
::clone
::Clone
for CHANGER_MOVE_MEDIUM
{
259 fn clone(&self) -> Self {
264 pub struct CHANGER_PRODUCT_DATA
{
265 pub VendorId
: [u8; 8],
266 pub ProductId
: [u8; 16],
267 pub Revision
: [u8; 4],
268 pub SerialNumber
: [u8; 32],
271 impl ::core
::marker
::Copy
for CHANGER_PRODUCT_DATA {}
272 impl ::core
::clone
::Clone
for CHANGER_PRODUCT_DATA
{
273 fn clone(&self) -> Self {
278 #[cfg(feature = "Win32_Foundation")]
279 pub struct CHANGER_READ_ELEMENT_STATUS
{
280 pub ElementList
: CHANGER_ELEMENT_LIST
,
281 pub VolumeTagInfo
: super::super::Foundation
::BOOLEAN
,
283 #[cfg(feature = "Win32_Foundation")]
284 impl ::core
::marker
::Copy
for CHANGER_READ_ELEMENT_STATUS {}
285 #[cfg(feature = "Win32_Foundation")]
286 impl ::core
::clone
::Clone
for CHANGER_READ_ELEMENT_STATUS
{
287 fn clone(&self) -> Self {
291 pub const CHANGER_RESERVED_BIT
: u32 = 2147483648u32;
293 pub struct CHANGER_SEND_VOLUME_TAG_INFORMATION
{
294 pub StartingElement
: CHANGER_ELEMENT
,
296 pub VolumeIDTemplate
: [u8; 40],
298 impl ::core
::marker
::Copy
for CHANGER_SEND_VOLUME_TAG_INFORMATION {}
299 impl ::core
::clone
::Clone
for CHANGER_SEND_VOLUME_TAG_INFORMATION
{
300 fn clone(&self) -> Self {
305 pub struct CHANGER_SET_ACCESS
{
306 pub Element
: CHANGER_ELEMENT
,
309 impl ::core
::marker
::Copy
for CHANGER_SET_ACCESS {}
310 impl ::core
::clone
::Clone
for CHANGER_SET_ACCESS
{
311 fn clone(&self) -> Self {
316 #[cfg(feature = "Win32_Foundation")]
317 pub struct CHANGER_SET_POSITION
{
318 pub Transport
: CHANGER_ELEMENT
,
319 pub Destination
: CHANGER_ELEMENT
,
320 pub Flip
: super::super::Foundation
::BOOLEAN
,
322 #[cfg(feature = "Win32_Foundation")]
323 impl ::core
::marker
::Copy
for CHANGER_SET_POSITION {}
324 #[cfg(feature = "Win32_Foundation")]
325 impl ::core
::clone
::Clone
for CHANGER_SET_POSITION
{
326 fn clone(&self) -> Self {
330 pub const CHANGER_TO_DRIVE
: u32 = 8u32;
331 pub const CHANGER_TO_IEPORT
: u32 = 4u32;
332 pub const CHANGER_TO_SLOT
: u32 = 2u32;
333 pub const CHANGER_TO_TRANSPORT
: u32 = 1u32;
334 pub const CHECKSUM_TYPE_CRC32
: u32 = 1u32;
335 pub const CHECKSUM_TYPE_CRC64
: u32 = 2u32;
336 pub const CHECKSUM_TYPE_ECC
: u32 = 3u32;
337 pub const CHECKSUM_TYPE_FIRST_UNUSED_TYPE
: u32 = 4u32;
338 pub const CHECKSUM_TYPE_NONE
: u32 = 0u32;
339 pub const CHECKSUM_TYPE_UNCHANGED
: i32 = -1i32;
341 pub struct CLASS_MEDIA_CHANGE_CONTEXT
{
342 pub MediaChangeCount
: u32,
345 impl ::core
::marker
::Copy
for CLASS_MEDIA_CHANGE_CONTEXT {}
346 impl ::core
::clone
::Clone
for CLASS_MEDIA_CHANGE_CONTEXT
{
347 fn clone(&self) -> Self {
352 pub struct CLUSTER_RANGE
{
353 pub StartingCluster
: i64,
354 pub ClusterCount
: i64,
356 impl ::core
::marker
::Copy
for CLUSTER_RANGE {}
357 impl ::core
::clone
::Clone
for CLUSTER_RANGE
{
358 fn clone(&self) -> Self {
362 pub const CONTAINER_ROOT_INFO_FLAG_BIND_DO_NOT_MAP_NAME
: u32 = 256u32;
363 pub const CONTAINER_ROOT_INFO_FLAG_BIND_EXCEPTION_ROOT
: u32 = 128u32;
364 pub const CONTAINER_ROOT_INFO_FLAG_BIND_ROOT
: u32 = 32u32;
365 pub const CONTAINER_ROOT_INFO_FLAG_BIND_TARGET_ROOT
: u32 = 64u32;
366 pub const CONTAINER_ROOT_INFO_FLAG_LAYER_ROOT
: u32 = 2u32;
367 pub const CONTAINER_ROOT_INFO_FLAG_SCRATCH_ROOT
: u32 = 1u32;
368 pub const CONTAINER_ROOT_INFO_FLAG_UNION_LAYER_ROOT
: u32 = 512u32;
369 pub const CONTAINER_ROOT_INFO_FLAG_VIRTUALIZATION_EXCEPTION_ROOT
: u32 = 16u32;
370 pub const CONTAINER_ROOT_INFO_FLAG_VIRTUALIZATION_ROOT
: u32 = 4u32;
371 pub const CONTAINER_ROOT_INFO_FLAG_VIRTUALIZATION_TARGET_ROOT
: u32 = 8u32;
373 pub struct CONTAINER_ROOT_INFO_INPUT
{
376 impl ::core
::marker
::Copy
for CONTAINER_ROOT_INFO_INPUT {}
377 impl ::core
::clone
::Clone
for CONTAINER_ROOT_INFO_INPUT
{
378 fn clone(&self) -> Self {
383 pub struct CONTAINER_ROOT_INFO_OUTPUT
{
384 pub ContainerRootIdLength
: u16,
385 pub ContainerRootId
: [u8; 1],
387 impl ::core
::marker
::Copy
for CONTAINER_ROOT_INFO_OUTPUT {}
388 impl ::core
::clone
::Clone
for CONTAINER_ROOT_INFO_OUTPUT
{
389 fn clone(&self) -> Self {
393 pub const CONTAINER_ROOT_INFO_VALID_FLAGS
: u32 = 1023u32;
395 pub struct CONTAINER_VOLUME_STATE
{
398 impl ::core
::marker
::Copy
for CONTAINER_VOLUME_STATE {}
399 impl ::core
::clone
::Clone
for CONTAINER_VOLUME_STATE
{
400 fn clone(&self) -> Self {
404 pub const CONTAINER_VOLUME_STATE_HOSTING_CONTAINER
: u32 = 1u32;
405 pub const COPYFILE_SIS_FLAGS
: u32 = 3u32;
406 pub const COPYFILE_SIS_LINK
: u32 = 1u32;
407 pub const COPYFILE_SIS_REPLACE
: u32 = 2u32;
409 pub struct CREATE_DISK
{
410 pub PartitionStyle
: PARTITION_STYLE
,
411 pub Anonymous
: CREATE_DISK_0
,
413 impl ::core
::marker
::Copy
for CREATE_DISK {}
414 impl ::core
::clone
::Clone
for CREATE_DISK
{
415 fn clone(&self) -> Self {
420 pub union CREATE_DISK_0
{
421 pub Mbr
: CREATE_DISK_MBR
,
422 pub Gpt
: CREATE_DISK_GPT
,
424 impl ::core
::marker
::Copy
for CREATE_DISK_0 {}
425 impl ::core
::clone
::Clone
for CREATE_DISK_0
{
426 fn clone(&self) -> Self {
431 pub struct CREATE_DISK_GPT
{
432 pub DiskId
: ::windows_sys
::core
::GUID
,
433 pub MaxPartitionCount
: u32,
435 impl ::core
::marker
::Copy
for CREATE_DISK_GPT {}
436 impl ::core
::clone
::Clone
for CREATE_DISK_GPT
{
437 fn clone(&self) -> Self {
442 pub struct CREATE_DISK_MBR
{
445 impl ::core
::marker
::Copy
for CREATE_DISK_MBR {}
446 impl ::core
::clone
::Clone
for CREATE_DISK_MBR
{
447 fn clone(&self) -> Self {
452 pub struct CREATE_USN_JOURNAL_DATA
{
453 pub MaximumSize
: u64,
454 pub AllocationDelta
: u64,
456 impl ::core
::marker
::Copy
for CREATE_USN_JOURNAL_DATA {}
457 impl ::core
::clone
::Clone
for CREATE_USN_JOURNAL_DATA
{
458 fn clone(&self) -> Self {
462 pub type CSVFS_DISK_CONNECTIVITY
= i32;
463 pub const CsvFsDiskConnectivityNone
: CSVFS_DISK_CONNECTIVITY
= 0i32;
464 pub const CsvFsDiskConnectivityMdsNodeOnly
: CSVFS_DISK_CONNECTIVITY
= 1i32;
465 pub const CsvFsDiskConnectivitySubsetOfNodes
: CSVFS_DISK_CONNECTIVITY
= 2i32;
466 pub const CsvFsDiskConnectivityAllNodes
: CSVFS_DISK_CONNECTIVITY
= 3i32;
467 pub type CSV_CONTROL_OP
= i32;
468 pub const CsvControlStartRedirectFile
: CSV_CONTROL_OP
= 2i32;
469 pub const CsvControlStopRedirectFile
: CSV_CONTROL_OP
= 3i32;
470 pub const CsvControlQueryRedirectState
: CSV_CONTROL_OP
= 4i32;
471 pub const CsvControlQueryFileRevision
: CSV_CONTROL_OP
= 6i32;
472 pub const CsvControlQueryMdsPath
: CSV_CONTROL_OP
= 8i32;
473 pub const CsvControlQueryFileRevisionFileId128
: CSV_CONTROL_OP
= 9i32;
474 pub const CsvControlQueryVolumeRedirectState
: CSV_CONTROL_OP
= 10i32;
475 pub const CsvControlEnableUSNRangeModificationTracking
: CSV_CONTROL_OP
= 13i32;
476 pub const CsvControlMarkHandleLocalVolumeMount
: CSV_CONTROL_OP
= 14i32;
477 pub const CsvControlUnmarkHandleLocalVolumeMount
: CSV_CONTROL_OP
= 15i32;
478 pub const CsvControlGetCsvFsMdsPathV2
: CSV_CONTROL_OP
= 18i32;
479 pub const CsvControlDisableCaching
: CSV_CONTROL_OP
= 19i32;
480 pub const CsvControlEnableCaching
: CSV_CONTROL_OP
= 20i32;
481 pub const CsvControlStartForceDFO
: CSV_CONTROL_OP
= 21i32;
482 pub const CsvControlStopForceDFO
: CSV_CONTROL_OP
= 22i32;
483 pub const CsvControlQueryMdsPathNoPause
: CSV_CONTROL_OP
= 23i32;
484 pub const CsvControlSetVolumeId
: CSV_CONTROL_OP
= 24i32;
485 pub const CsvControlQueryVolumeId
: CSV_CONTROL_OP
= 25i32;
487 pub struct CSV_CONTROL_PARAM
{
488 pub Operation
: CSV_CONTROL_OP
,
491 impl ::core
::marker
::Copy
for CSV_CONTROL_PARAM {}
492 impl ::core
::clone
::Clone
for CSV_CONTROL_PARAM
{
493 fn clone(&self) -> Self {
497 pub const CSV_INVALID_DEVICE_NUMBER
: u32 = 4294967295u32;
499 #[cfg(feature = "Win32_Foundation")]
500 pub struct CSV_IS_OWNED_BY_CSVFS
{
501 pub OwnedByCSVFS
: super::super::Foundation
::BOOLEAN
,
503 #[cfg(feature = "Win32_Foundation")]
504 impl ::core
::marker
::Copy
for CSV_IS_OWNED_BY_CSVFS {}
505 #[cfg(feature = "Win32_Foundation")]
506 impl ::core
::clone
::Clone
for CSV_IS_OWNED_BY_CSVFS
{
507 fn clone(&self) -> Self {
511 pub const CSV_MGMTLOCK_CHECK_VOLUME_REDIRECTED
: u32 = 1u32;
513 pub struct CSV_MGMT_LOCK
{
516 impl ::core
::marker
::Copy
for CSV_MGMT_LOCK {}
517 impl ::core
::clone
::Clone
for CSV_MGMT_LOCK
{
518 fn clone(&self) -> Self {
523 pub struct CSV_NAMESPACE_INFO
{
525 pub DeviceNumber
: u32,
526 pub StartingOffset
: i64,
529 impl ::core
::marker
::Copy
for CSV_NAMESPACE_INFO {}
530 impl ::core
::clone
::Clone
for CSV_NAMESPACE_INFO
{
531 fn clone(&self) -> Self {
536 pub struct CSV_QUERY_FILE_REVISION
{
538 pub FileRevision
: [i64; 3],
540 impl ::core
::marker
::Copy
for CSV_QUERY_FILE_REVISION {}
541 impl ::core
::clone
::Clone
for CSV_QUERY_FILE_REVISION
{
542 fn clone(&self) -> Self {
547 #[cfg(feature = "Win32_Storage_FileSystem")]
548 pub struct CSV_QUERY_FILE_REVISION_FILE_ID_128
{
549 pub FileId
: super::super::Storage
::FileSystem
::FILE_ID_128
,
550 pub FileRevision
: [i64; 3],
552 #[cfg(feature = "Win32_Storage_FileSystem")]
553 impl ::core
::marker
::Copy
for CSV_QUERY_FILE_REVISION_FILE_ID_128 {}
554 #[cfg(feature = "Win32_Storage_FileSystem")]
555 impl ::core
::clone
::Clone
for CSV_QUERY_FILE_REVISION_FILE_ID_128
{
556 fn clone(&self) -> Self {
561 pub struct CSV_QUERY_MDS_PATH
{
567 impl ::core
::marker
::Copy
for CSV_QUERY_MDS_PATH {}
568 impl ::core
::clone
::Clone
for CSV_QUERY_MDS_PATH
{
569 fn clone(&self) -> Self {
573 pub const CSV_QUERY_MDS_PATH_FLAG_CSV_DIRECT_IO_ENABLED
: u32 = 2u32;
574 pub const CSV_QUERY_MDS_PATH_FLAG_SMB_BYPASS_CSV_ENABLED
: u32 = 4u32;
575 pub const CSV_QUERY_MDS_PATH_FLAG_STORAGE_ON_THIS_NODE_IS_CONNECTED
: u32 = 1u32;
577 pub struct CSV_QUERY_MDS_PATH_V2
{
579 pub RequiredSize
: u32,
583 pub DiskConnectivity
: CSVFS_DISK_CONNECTIVITY
,
584 pub VolumeId
: ::windows_sys
::core
::GUID
,
585 pub IpAddressOffset
: u32,
586 pub IpAddressLength
: u32,
590 impl ::core
::marker
::Copy
for CSV_QUERY_MDS_PATH_V2 {}
591 impl ::core
::clone
::Clone
for CSV_QUERY_MDS_PATH_V2
{
592 fn clone(&self) -> Self {
596 pub const CSV_QUERY_MDS_PATH_V2_VERSION_1
: u32 = 1u32;
598 #[cfg(feature = "Win32_Foundation")]
599 pub struct CSV_QUERY_REDIRECT_STATE
{
602 pub FileRedirected
: super::super::Foundation
::BOOLEAN
,
604 #[cfg(feature = "Win32_Foundation")]
605 impl ::core
::marker
::Copy
for CSV_QUERY_REDIRECT_STATE {}
606 #[cfg(feature = "Win32_Foundation")]
607 impl ::core
::clone
::Clone
for CSV_QUERY_REDIRECT_STATE
{
608 fn clone(&self) -> Self {
613 pub struct CSV_QUERY_VETO_FILE_DIRECT_IO_OUTPUT
{
614 pub VetoedFromAltitudeIntegral
: u64,
615 pub VetoedFromAltitudeDecimal
: u64,
616 pub Reason
: [u16; 256],
618 impl ::core
::marker
::Copy
for CSV_QUERY_VETO_FILE_DIRECT_IO_OUTPUT {}
619 impl ::core
::clone
::Clone
for CSV_QUERY_VETO_FILE_DIRECT_IO_OUTPUT
{
620 fn clone(&self) -> Self {
625 pub struct CSV_QUERY_VOLUME_ID
{
626 pub VolumeId
: ::windows_sys
::core
::GUID
,
628 impl ::core
::marker
::Copy
for CSV_QUERY_VOLUME_ID {}
629 impl ::core
::clone
::Clone
for CSV_QUERY_VOLUME_ID
{
630 fn clone(&self) -> Self {
635 #[cfg(feature = "Win32_Foundation")]
636 pub struct CSV_QUERY_VOLUME_REDIRECT_STATE
{
639 pub IsDiskConnected
: super::super::Foundation
::BOOLEAN
,
640 pub ClusterEnableDirectIo
: super::super::Foundation
::BOOLEAN
,
641 pub DiskConnectivity
: CSVFS_DISK_CONNECTIVITY
,
643 #[cfg(feature = "Win32_Foundation")]
644 impl ::core
::marker
::Copy
for CSV_QUERY_VOLUME_REDIRECT_STATE {}
645 #[cfg(feature = "Win32_Foundation")]
646 impl ::core
::clone
::Clone
for CSV_QUERY_VOLUME_REDIRECT_STATE
{
647 fn clone(&self) -> Self {
652 pub struct CSV_SET_VOLUME_ID
{
653 pub VolumeId
: ::windows_sys
::core
::GUID
,
655 impl ::core
::marker
::Copy
for CSV_SET_VOLUME_ID {}
656 impl ::core
::clone
::Clone
for CSV_SET_VOLUME_ID
{
657 fn clone(&self) -> Self {
661 pub const DAX_ALLOC_ALIGNMENT_FLAG_FALLBACK_SPECIFIED
: u32 = 2u32;
662 pub const DAX_ALLOC_ALIGNMENT_FLAG_MANDATORY
: u32 = 1u32;
663 pub const DDUMP_FLAG_DATA_READ_FROM_DEVICE
: u32 = 1u32;
665 #[cfg(feature = "Win32_Foundation")]
666 pub struct DECRYPTION_STATUS_BUFFER
{
667 pub NoEncryptedStreams
: super::super::Foundation
::BOOLEAN
,
669 #[cfg(feature = "Win32_Foundation")]
670 impl ::core
::marker
::Copy
for DECRYPTION_STATUS_BUFFER {}
671 #[cfg(feature = "Win32_Foundation")]
672 impl ::core
::clone
::Clone
for DECRYPTION_STATUS_BUFFER
{
673 fn clone(&self) -> Self {
678 pub struct DELETE_USN_JOURNAL_DATA
{
679 pub UsnJournalID
: u64,
680 pub DeleteFlags
: USN_DELETE_FLAGS
,
682 impl ::core
::marker
::Copy
for DELETE_USN_JOURNAL_DATA {}
683 impl ::core
::clone
::Clone
for DELETE_USN_JOURNAL_DATA
{
684 fn clone(&self) -> Self {
688 pub type DETECTION_TYPE
= i32;
689 pub const DetectNone
: DETECTION_TYPE
= 0i32;
690 pub const DetectInt13
: DETECTION_TYPE
= 1i32;
691 pub const DetectExInt13
: DETECTION_TYPE
= 2i32;
692 pub const DEVICEDUMP_CAP_PRIVATE_SECTION
: u32 = 1u32;
693 pub const DEVICEDUMP_CAP_RESTRICTED_SECTION
: u32 = 2u32;
694 pub const DEVICEDUMP_MAX_IDSTRING
: u32 = 32u32;
695 #[repr(C, packed(1))]
696 pub struct DEVICEDUMP_PRIVATE_SUBSECTION
{
698 pub GPLogId
: GP_LOG_PAGE_DESCRIPTOR
,
701 impl ::core
::marker
::Copy
for DEVICEDUMP_PRIVATE_SUBSECTION {}
702 impl ::core
::clone
::Clone
for DEVICEDUMP_PRIVATE_SUBSECTION
{
703 fn clone(&self) -> Self {
707 #[repr(C, packed(1))]
708 #[cfg(feature = "Win32_Foundation")]
709 pub struct DEVICEDUMP_PUBLIC_SUBSECTION
{
711 pub GPLogTable
: [GP_LOG_PAGE_DESCRIPTOR
; 16],
712 pub szDescription
: [super::super::Foundation
::CHAR
; 16],
715 #[cfg(feature = "Win32_Foundation")]
716 impl ::core
::marker
::Copy
for DEVICEDUMP_PUBLIC_SUBSECTION {}
717 #[cfg(feature = "Win32_Foundation")]
718 impl ::core
::clone
::Clone
for DEVICEDUMP_PUBLIC_SUBSECTION
{
719 fn clone(&self) -> Self {
724 pub struct DEVICEDUMP_RESTRICTED_SUBSECTION
{
727 impl ::core
::marker
::Copy
for DEVICEDUMP_RESTRICTED_SUBSECTION {}
728 impl ::core
::clone
::Clone
for DEVICEDUMP_RESTRICTED_SUBSECTION
{
729 fn clone(&self) -> Self {
733 #[repr(C, packed(1))]
734 pub struct DEVICEDUMP_SECTION_HEADER
{
735 pub guidDeviceDataId
: ::windows_sys
::core
::GUID
,
736 pub sOrganizationID
: [u8; 16],
737 pub dwFirmwareRevision
: u32,
738 pub sModelNumber
: [u8; 32],
739 pub szDeviceManufacturingID
: [u8; 32],
741 pub bRestrictedPrivateDataVersion
: u32,
742 pub dwFirmwareIssueId
: u32,
743 pub szIssueDescriptionString
: [u8; 132],
745 impl ::core
::marker
::Copy
for DEVICEDUMP_SECTION_HEADER {}
746 impl ::core
::clone
::Clone
for DEVICEDUMP_SECTION_HEADER
{
747 fn clone(&self) -> Self {
751 #[repr(C, packed(1))]
752 pub struct DEVICEDUMP_STORAGEDEVICE_DATA
{
753 pub Descriptor
: DEVICEDUMP_STRUCTURE_VERSION
,
754 pub SectionHeader
: DEVICEDUMP_SECTION_HEADER
,
755 pub dwBufferSize
: u32,
756 pub dwReasonForCollection
: u32,
757 pub PublicData
: DEVICEDUMP_SUBSECTION_POINTER
,
758 pub RestrictedData
: DEVICEDUMP_SUBSECTION_POINTER
,
759 pub PrivateData
: DEVICEDUMP_SUBSECTION_POINTER
,
761 impl ::core
::marker
::Copy
for DEVICEDUMP_STORAGEDEVICE_DATA {}
762 impl ::core
::clone
::Clone
for DEVICEDUMP_STORAGEDEVICE_DATA
{
763 fn clone(&self) -> Self {
767 #[repr(C, packed(1))]
768 pub struct DEVICEDUMP_STORAGESTACK_PUBLIC_DUMP
{
769 pub Descriptor
: DEVICEDUMP_STRUCTURE_VERSION
,
770 pub dwReasonForCollection
: u32,
771 pub cDriverName
: [u8; 16],
772 pub uiNumRecords
: u32,
773 pub RecordArray
: [DEVICEDUMP_STORAGESTACK_PUBLIC_STATE_RECORD
; 1],
775 impl ::core
::marker
::Copy
for DEVICEDUMP_STORAGESTACK_PUBLIC_DUMP {}
776 impl ::core
::clone
::Clone
for DEVICEDUMP_STORAGESTACK_PUBLIC_DUMP
{
777 fn clone(&self) -> Self {
781 #[repr(C, packed(1))]
782 pub struct DEVICEDUMP_STORAGESTACK_PUBLIC_STATE_RECORD
{
784 pub Command
: [u8; 16],
787 pub OperationStatus
: u32,
788 pub OperationError
: u32,
789 pub StackSpecific
: DEVICEDUMP_STORAGESTACK_PUBLIC_STATE_RECORD_0
,
791 impl ::core
::marker
::Copy
for DEVICEDUMP_STORAGESTACK_PUBLIC_STATE_RECORD {}
792 impl ::core
::clone
::Clone
for DEVICEDUMP_STORAGESTACK_PUBLIC_STATE_RECORD
{
793 fn clone(&self) -> Self {
798 pub union DEVICEDUMP_STORAGESTACK_PUBLIC_STATE_RECORD_0
{
799 pub ExternalStack
: DEVICEDUMP_STORAGESTACK_PUBLIC_STATE_RECORD_0_1
,
800 pub AtaPort
: DEVICEDUMP_STORAGESTACK_PUBLIC_STATE_RECORD_0_0
,
801 pub StorPort
: DEVICEDUMP_STORAGESTACK_PUBLIC_STATE_RECORD_0_2
,
803 impl ::core
::marker
::Copy
for DEVICEDUMP_STORAGESTACK_PUBLIC_STATE_RECORD_0 {}
804 impl ::core
::clone
::Clone
for DEVICEDUMP_STORAGESTACK_PUBLIC_STATE_RECORD_0
{
805 fn clone(&self) -> Self {
809 #[repr(C, packed(1))]
810 pub struct DEVICEDUMP_STORAGESTACK_PUBLIC_STATE_RECORD_0_0
{
811 pub dwAtaPortSpecific
: u32,
813 impl ::core
::marker
::Copy
for DEVICEDUMP_STORAGESTACK_PUBLIC_STATE_RECORD_0_0 {}
814 impl ::core
::clone
::Clone
for DEVICEDUMP_STORAGESTACK_PUBLIC_STATE_RECORD_0_0
{
815 fn clone(&self) -> Self {
819 #[repr(C, packed(1))]
820 pub struct DEVICEDUMP_STORAGESTACK_PUBLIC_STATE_RECORD_0_1
{
823 impl ::core
::marker
::Copy
for DEVICEDUMP_STORAGESTACK_PUBLIC_STATE_RECORD_0_1 {}
824 impl ::core
::clone
::Clone
for DEVICEDUMP_STORAGESTACK_PUBLIC_STATE_RECORD_0_1
{
825 fn clone(&self) -> Self {
829 #[repr(C, packed(1))]
830 pub struct DEVICEDUMP_STORAGESTACK_PUBLIC_STATE_RECORD_0_2
{
833 impl ::core
::marker
::Copy
for DEVICEDUMP_STORAGESTACK_PUBLIC_STATE_RECORD_0_2 {}
834 impl ::core
::clone
::Clone
for DEVICEDUMP_STORAGESTACK_PUBLIC_STATE_RECORD_0_2
{
835 fn clone(&self) -> Self {
839 #[repr(C, packed(1))]
840 pub struct DEVICEDUMP_STRUCTURE_VERSION
{
841 pub dwSignature
: u32,
845 impl ::core
::marker
::Copy
for DEVICEDUMP_STRUCTURE_VERSION {}
846 impl ::core
::clone
::Clone
for DEVICEDUMP_STRUCTURE_VERSION
{
847 fn clone(&self) -> Self {
851 pub const DEVICEDUMP_STRUCTURE_VERSION_V1
: u32 = 1u32;
852 #[repr(C, packed(1))]
853 pub struct DEVICEDUMP_SUBSECTION_POINTER
{
858 impl ::core
::marker
::Copy
for DEVICEDUMP_SUBSECTION_POINTER {}
859 impl ::core
::clone
::Clone
for DEVICEDUMP_SUBSECTION_POINTER
{
860 fn clone(&self) -> Self {
865 pub struct DEVICE_COPY_OFFLOAD_DESCRIPTOR
{
868 pub MaximumTokenLifetime
: u32,
869 pub DefaultTokenLifetime
: u32,
870 pub MaximumTransferSize
: u64,
871 pub OptimalTransferCount
: u64,
872 pub MaximumDataDescriptors
: u32,
873 pub MaximumTransferLengthPerDescriptor
: u32,
874 pub OptimalTransferLengthPerDescriptor
: u32,
875 pub OptimalTransferLengthGranularity
: u16,
876 pub Reserved
: [u8; 2],
878 impl ::core
::marker
::Copy
for DEVICE_COPY_OFFLOAD_DESCRIPTOR {}
879 impl ::core
::clone
::Clone
for DEVICE_COPY_OFFLOAD_DESCRIPTOR
{
880 fn clone(&self) -> Self {
885 pub struct DEVICE_DATA_SET_LBP_STATE_PARAMETERS
{
889 pub OutputVersion
: u32,
891 impl ::core
::marker
::Copy
for DEVICE_DATA_SET_LBP_STATE_PARAMETERS {}
892 impl ::core
::clone
::Clone
for DEVICE_DATA_SET_LBP_STATE_PARAMETERS
{
893 fn clone(&self) -> Self {
897 pub const DEVICE_DATA_SET_LBP_STATE_PARAMETERS_VERSION_V1
: u32 = 1u32;
899 pub struct DEVICE_DATA_SET_LB_PROVISIONING_STATE
{
902 pub SlabSizeInBytes
: u64,
903 pub SlabOffsetDeltaInBytes
: u32,
904 pub SlabAllocationBitMapBitCount
: u32,
905 pub SlabAllocationBitMapLength
: u32,
906 pub SlabAllocationBitMap
: [u32; 1],
908 impl ::core
::marker
::Copy
for DEVICE_DATA_SET_LB_PROVISIONING_STATE {}
909 impl ::core
::clone
::Clone
for DEVICE_DATA_SET_LB_PROVISIONING_STATE
{
910 fn clone(&self) -> Self {
915 pub struct DEVICE_DATA_SET_LB_PROVISIONING_STATE_V2
{
918 pub SlabSizeInBytes
: u64,
919 pub SlabOffsetDeltaInBytes
: u64,
920 pub SlabAllocationBitMapBitCount
: u32,
921 pub SlabAllocationBitMapLength
: u32,
922 pub SlabAllocationBitMap
: [u32; 1],
924 impl ::core
::marker
::Copy
for DEVICE_DATA_SET_LB_PROVISIONING_STATE_V2 {}
925 impl ::core
::clone
::Clone
for DEVICE_DATA_SET_LB_PROVISIONING_STATE_V2
{
926 fn clone(&self) -> Self {
931 pub struct DEVICE_DATA_SET_RANGE
{
932 pub StartingOffset
: i64,
933 pub LengthInBytes
: u64,
935 impl ::core
::marker
::Copy
for DEVICE_DATA_SET_RANGE {}
936 impl ::core
::clone
::Clone
for DEVICE_DATA_SET_RANGE
{
937 fn clone(&self) -> Self {
942 pub struct DEVICE_DATA_SET_REPAIR_OUTPUT
{
943 pub ParityExtent
: DEVICE_DATA_SET_RANGE
,
945 impl ::core
::marker
::Copy
for DEVICE_DATA_SET_REPAIR_OUTPUT {}
946 impl ::core
::clone
::Clone
for DEVICE_DATA_SET_REPAIR_OUTPUT
{
947 fn clone(&self) -> Self {
952 pub struct DEVICE_DATA_SET_REPAIR_PARAMETERS
{
953 pub NumberOfRepairCopies
: u32,
955 pub RepairCopies
: [u32; 1],
957 impl ::core
::marker
::Copy
for DEVICE_DATA_SET_REPAIR_PARAMETERS {}
958 impl ::core
::clone
::Clone
for DEVICE_DATA_SET_REPAIR_PARAMETERS
{
959 fn clone(&self) -> Self {
964 pub struct DEVICE_DATA_SET_SCRUB_EX_OUTPUT
{
965 pub BytesProcessed
: u64,
966 pub BytesRepaired
: u64,
967 pub BytesFailed
: u64,
968 pub ParityExtent
: DEVICE_DATA_SET_RANGE
,
969 pub BytesScrubbed
: u64,
971 impl ::core
::marker
::Copy
for DEVICE_DATA_SET_SCRUB_EX_OUTPUT {}
972 impl ::core
::clone
::Clone
for DEVICE_DATA_SET_SCRUB_EX_OUTPUT
{
973 fn clone(&self) -> Self {
978 pub struct DEVICE_DATA_SET_SCRUB_OUTPUT
{
979 pub BytesProcessed
: u64,
980 pub BytesRepaired
: u64,
981 pub BytesFailed
: u64,
983 impl ::core
::marker
::Copy
for DEVICE_DATA_SET_SCRUB_OUTPUT {}
984 impl ::core
::clone
::Clone
for DEVICE_DATA_SET_SCRUB_OUTPUT
{
985 fn clone(&self) -> Self {
990 pub struct DEVICE_DATA_SET_TOPOLOGY_ID_QUERY_OUTPUT
{
991 pub TopologyRangeBytes
: u64,
992 pub TopologyId
: [u8; 16],
994 impl ::core
::marker
::Copy
for DEVICE_DATA_SET_TOPOLOGY_ID_QUERY_OUTPUT {}
995 impl ::core
::clone
::Clone
for DEVICE_DATA_SET_TOPOLOGY_ID_QUERY_OUTPUT
{
996 fn clone(&self) -> Self {
1001 pub struct DEVICE_DSM_CONVERSION_OUTPUT
{
1003 pub Source
: ::windows_sys
::core
::GUID
,
1005 impl ::core
::marker
::Copy
for DEVICE_DSM_CONVERSION_OUTPUT {}
1006 impl ::core
::clone
::Clone
for DEVICE_DSM_CONVERSION_OUTPUT
{
1007 fn clone(&self) -> Self {
1012 #[cfg(feature = "Win32_Foundation")]
1013 pub struct DEVICE_DSM_DEFINITION
{
1015 pub SingleRange
: super::super::Foundation
::BOOLEAN
,
1016 pub ParameterBlockAlignment
: u32,
1017 pub ParameterBlockLength
: u32,
1018 pub HasOutput
: super::super::Foundation
::BOOLEAN
,
1019 pub OutputBlockAlignment
: u32,
1020 pub OutputBlockLength
: u32,
1022 #[cfg(feature = "Win32_Foundation")]
1023 impl ::core
::marker
::Copy
for DEVICE_DSM_DEFINITION {}
1024 #[cfg(feature = "Win32_Foundation")]
1025 impl ::core
::clone
::Clone
for DEVICE_DSM_DEFINITION
{
1026 fn clone(&self) -> Self {
1030 pub const DEVICE_DSM_FLAG_ALLOCATION_CONSOLIDATEABLE_ONLY
: u32 = 1073741824u32;
1031 pub const DEVICE_DSM_FLAG_ENTIRE_DATA_SET_RANGE
: u32 = 1u32;
1032 pub const DEVICE_DSM_FLAG_PHYSICAL_ADDRESSES_OMIT_TOTAL_RANGES
: u32 = 268435456u32;
1033 pub const DEVICE_DSM_FLAG_REPAIR_INPUT_TOPOLOGY_ID_PRESENT
: u32 = 1073741824u32;
1034 pub const DEVICE_DSM_FLAG_REPAIR_OUTPUT_PARITY_EXTENT
: u32 = 536870912u32;
1035 pub const DEVICE_DSM_FLAG_SCRUB_OUTPUT_PARITY_EXTENT
: u32 = 536870912u32;
1036 pub const DEVICE_DSM_FLAG_SCRUB_SKIP_IN_SYNC
: u32 = 268435456u32;
1037 pub const DEVICE_DSM_FLAG_TRIM_BYPASS_RZAT
: u32 = 1073741824u32;
1038 pub const DEVICE_DSM_FLAG_TRIM_NOT_FS_ALLOCATED
: u32 = 2147483648u32;
1040 pub struct DEVICE_DSM_FREE_SPACE_OUTPUT
{
1044 impl ::core
::marker
::Copy
for DEVICE_DSM_FREE_SPACE_OUTPUT {}
1045 impl ::core
::clone
::Clone
for DEVICE_DSM_FREE_SPACE_OUTPUT
{
1046 fn clone(&self) -> Self {
1051 pub struct DEVICE_DSM_LOST_QUERY_OUTPUT
{
1055 pub NumberOfBits
: u32,
1056 pub BitMap
: [u32; 1],
1058 impl ::core
::marker
::Copy
for DEVICE_DSM_LOST_QUERY_OUTPUT {}
1059 impl ::core
::clone
::Clone
for DEVICE_DSM_LOST_QUERY_OUTPUT
{
1060 fn clone(&self) -> Self {
1065 pub struct DEVICE_DSM_LOST_QUERY_PARAMETERS
{
1067 pub Granularity
: u64,
1069 impl ::core
::marker
::Copy
for DEVICE_DSM_LOST_QUERY_PARAMETERS {}
1070 impl ::core
::clone
::Clone
for DEVICE_DSM_LOST_QUERY_PARAMETERS
{
1071 fn clone(&self) -> Self {
1076 pub struct DEVICE_DSM_NOTIFICATION_PARAMETERS
{
1079 pub NumFileTypeIDs
: u32,
1080 pub FileTypeID
: [::windows_sys
::core
::GUID
; 1],
1082 impl ::core
::marker
::Copy
for DEVICE_DSM_NOTIFICATION_PARAMETERS {}
1083 impl ::core
::clone
::Clone
for DEVICE_DSM_NOTIFICATION_PARAMETERS
{
1084 fn clone(&self) -> Self {
1088 pub const DEVICE_DSM_NOTIFY_FLAG_BEGIN
: u32 = 1u32;
1089 pub const DEVICE_DSM_NOTIFY_FLAG_END
: u32 = 2u32;
1091 pub struct DEVICE_DSM_NVCACHE_CHANGE_PRIORITY_PARAMETERS
{
1093 pub TargetPriority
: u8,
1094 pub Reserved
: [u8; 3],
1096 impl ::core
::marker
::Copy
for DEVICE_DSM_NVCACHE_CHANGE_PRIORITY_PARAMETERS {}
1097 impl ::core
::clone
::Clone
for DEVICE_DSM_NVCACHE_CHANGE_PRIORITY_PARAMETERS
{
1098 fn clone(&self) -> Self {
1103 pub struct DEVICE_DSM_OFFLOAD_READ_PARAMETERS
{
1105 pub TimeToLive
: u32,
1106 pub Reserved
: [u32; 2],
1108 impl ::core
::marker
::Copy
for DEVICE_DSM_OFFLOAD_READ_PARAMETERS {}
1109 impl ::core
::clone
::Clone
for DEVICE_DSM_OFFLOAD_READ_PARAMETERS
{
1110 fn clone(&self) -> Self {
1115 pub struct DEVICE_DSM_OFFLOAD_WRITE_PARAMETERS
{
1118 pub TokenOffset
: u64,
1119 pub Token
: STORAGE_OFFLOAD_TOKEN
,
1121 impl ::core
::marker
::Copy
for DEVICE_DSM_OFFLOAD_WRITE_PARAMETERS {}
1122 impl ::core
::clone
::Clone
for DEVICE_DSM_OFFLOAD_WRITE_PARAMETERS
{
1123 fn clone(&self) -> Self {
1127 pub const DEVICE_DSM_PARAMETERS_V1
: u32 = 1u32;
1129 pub struct DEVICE_DSM_PHYSICAL_ADDRESSES_OUTPUT
{
1132 pub TotalNumberOfRanges
: u32,
1133 pub NumberOfRangesReturned
: u32,
1134 pub Ranges
: [DEVICE_STORAGE_ADDRESS_RANGE
; 1],
1136 impl ::core
::marker
::Copy
for DEVICE_DSM_PHYSICAL_ADDRESSES_OUTPUT {}
1137 impl ::core
::clone
::Clone
for DEVICE_DSM_PHYSICAL_ADDRESSES_OUTPUT
{
1138 fn clone(&self) -> Self {
1142 pub const DEVICE_DSM_PHYSICAL_ADDRESSES_OUTPUT_V1
: u32 = 1u32;
1143 pub const DEVICE_DSM_PHYSICAL_ADDRESSES_OUTPUT_VERSION_V1
: u32 = 1u32;
1145 pub struct DEVICE_DSM_RANGE_ERROR_INFO
{
1148 pub TotalNumberOfRanges
: u32,
1149 pub NumberOfRangesReturned
: u32,
1150 pub Ranges
: [DEVICE_STORAGE_RANGE_ATTRIBUTES
; 1],
1152 impl ::core
::marker
::Copy
for DEVICE_DSM_RANGE_ERROR_INFO {}
1153 impl ::core
::clone
::Clone
for DEVICE_DSM_RANGE_ERROR_INFO
{
1154 fn clone(&self) -> Self {
1158 pub const DEVICE_DSM_RANGE_ERROR_INFO_VERSION_V1
: u32 = 1u32;
1159 pub const DEVICE_DSM_RANGE_ERROR_OUTPUT_V1
: u32 = 1u32;
1161 #[cfg(feature = "Win32_Foundation")]
1162 pub struct DEVICE_DSM_REPORT_ZONES_DATA
{
1165 pub Attributes
: STORAGE_ZONES_ATTRIBUTES
,
1167 pub ZoneDescriptors
: [STORAGE_ZONE_DESCRIPTOR
; 1],
1169 #[cfg(feature = "Win32_Foundation")]
1170 impl ::core
::marker
::Copy
for DEVICE_DSM_REPORT_ZONES_DATA {}
1171 #[cfg(feature = "Win32_Foundation")]
1172 impl ::core
::clone
::Clone
for DEVICE_DSM_REPORT_ZONES_DATA
{
1173 fn clone(&self) -> Self {
1178 pub struct DEVICE_DSM_REPORT_ZONES_PARAMETERS
{
1180 pub ReportOption
: u8,
1182 pub Reserved
: [u8; 2],
1184 impl ::core
::marker
::Copy
for DEVICE_DSM_REPORT_ZONES_PARAMETERS {}
1185 impl ::core
::clone
::Clone
for DEVICE_DSM_REPORT_ZONES_PARAMETERS
{
1186 fn clone(&self) -> Self {
1191 pub struct DEVICE_DSM_TIERING_QUERY_INPUT
{
1195 pub NumberOfTierIds
: u32,
1196 pub TierIds
: [::windows_sys
::core
::GUID
; 1],
1198 impl ::core
::marker
::Copy
for DEVICE_DSM_TIERING_QUERY_INPUT {}
1199 impl ::core
::clone
::Clone
for DEVICE_DSM_TIERING_QUERY_INPUT
{
1200 fn clone(&self) -> Self {
1205 pub struct DEVICE_DSM_TIERING_QUERY_OUTPUT
{
1211 pub TotalNumberOfRegions
: u32,
1212 pub NumberOfRegionsReturned
: u32,
1213 pub Regions
: [STORAGE_TIER_REGION
; 1],
1215 impl ::core
::marker
::Copy
for DEVICE_DSM_TIERING_QUERY_OUTPUT {}
1216 impl ::core
::clone
::Clone
for DEVICE_DSM_TIERING_QUERY_OUTPUT
{
1217 fn clone(&self) -> Self {
1222 pub struct DEVICE_INTERNAL_STATUS_DATA
{
1225 pub T10VendorId
: u64,
1226 pub DataSet1Length
: u32,
1227 pub DataSet2Length
: u32,
1228 pub DataSet3Length
: u32,
1229 pub DataSet4Length
: u32,
1230 pub StatusDataVersion
: u8,
1231 pub Reserved
: [u8; 3],
1232 pub ReasonIdentifier
: [u8; 128],
1233 pub StatusDataLength
: u32,
1234 pub StatusData
: [u8; 1],
1236 impl ::core
::marker
::Copy
for DEVICE_INTERNAL_STATUS_DATA {}
1237 impl ::core
::clone
::Clone
for DEVICE_INTERNAL_STATUS_DATA
{
1238 fn clone(&self) -> Self {
1242 pub type DEVICE_INTERNAL_STATUS_DATA_REQUEST_TYPE
= i32;
1243 pub const DeviceInternalStatusDataRequestTypeUndefined
: DEVICE_INTERNAL_STATUS_DATA_REQUEST_TYPE
= 0i32;
1244 pub const DeviceCurrentInternalStatusDataHeader
: DEVICE_INTERNAL_STATUS_DATA_REQUEST_TYPE
= 1i32;
1245 pub const DeviceCurrentInternalStatusData
: DEVICE_INTERNAL_STATUS_DATA_REQUEST_TYPE
= 2i32;
1246 pub const DeviceSavedInternalStatusDataHeader
: DEVICE_INTERNAL_STATUS_DATA_REQUEST_TYPE
= 3i32;
1247 pub const DeviceSavedInternalStatusData
: DEVICE_INTERNAL_STATUS_DATA_REQUEST_TYPE
= 4i32;
1248 pub type DEVICE_INTERNAL_STATUS_DATA_SET
= i32;
1249 pub const DeviceStatusDataSetUndefined
: DEVICE_INTERNAL_STATUS_DATA_SET
= 0i32;
1250 pub const DeviceStatusDataSet1
: DEVICE_INTERNAL_STATUS_DATA_SET
= 1i32;
1251 pub const DeviceStatusDataSet2
: DEVICE_INTERNAL_STATUS_DATA_SET
= 2i32;
1252 pub const DeviceStatusDataSet3
: DEVICE_INTERNAL_STATUS_DATA_SET
= 3i32;
1253 pub const DeviceStatusDataSet4
: DEVICE_INTERNAL_STATUS_DATA_SET
= 4i32;
1254 pub const DeviceStatusDataSetMax
: DEVICE_INTERNAL_STATUS_DATA_SET
= 5i32;
1256 pub struct DEVICE_LB_PROVISIONING_DESCRIPTOR
{
1260 pub Reserved1
: [u8; 7],
1261 pub OptimalUnmapGranularity
: u64,
1262 pub UnmapGranularityAlignment
: u64,
1263 pub MaxUnmapLbaCount
: u32,
1264 pub MaxUnmapBlockDescriptorCount
: u32,
1266 impl ::core
::marker
::Copy
for DEVICE_LB_PROVISIONING_DESCRIPTOR {}
1267 impl ::core
::clone
::Clone
for DEVICE_LB_PROVISIONING_DESCRIPTOR
{
1268 fn clone(&self) -> Self {
1273 pub struct DEVICE_LOCATION
{
1278 pub Anonymous
: DEVICE_LOCATION_0
,
1280 impl ::core
::marker
::Copy
for DEVICE_LOCATION {}
1281 impl ::core
::clone
::Clone
for DEVICE_LOCATION
{
1282 fn clone(&self) -> Self {
1287 pub union DEVICE_LOCATION_0
{
1288 pub Anonymous1
: DEVICE_LOCATION_0_0
,
1289 pub Anonymous2
: DEVICE_LOCATION_0_1
,
1291 impl ::core
::marker
::Copy
for DEVICE_LOCATION_0 {}
1292 impl ::core
::clone
::Clone
for DEVICE_LOCATION_0
{
1293 fn clone(&self) -> Self {
1298 pub struct DEVICE_LOCATION_0_0
{
1302 impl ::core
::marker
::Copy
for DEVICE_LOCATION_0_0 {}
1303 impl ::core
::clone
::Clone
for DEVICE_LOCATION_0_0
{
1304 fn clone(&self) -> Self {
1309 pub struct DEVICE_LOCATION_0_1
{
1313 impl ::core
::marker
::Copy
for DEVICE_LOCATION_0_1 {}
1314 impl ::core
::clone
::Clone
for DEVICE_LOCATION_0_1
{
1315 fn clone(&self) -> Self {
1320 pub struct DEVICE_MANAGE_DATA_SET_ATTRIBUTES
{
1324 pub ParameterBlockOffset
: u32,
1325 pub ParameterBlockLength
: u32,
1326 pub DataSetRangesOffset
: u32,
1327 pub DataSetRangesLength
: u32,
1329 impl ::core
::marker
::Copy
for DEVICE_MANAGE_DATA_SET_ATTRIBUTES {}
1330 impl ::core
::clone
::Clone
for DEVICE_MANAGE_DATA_SET_ATTRIBUTES
{
1331 fn clone(&self) -> Self {
1336 pub struct DEVICE_MANAGE_DATA_SET_ATTRIBUTES_OUTPUT
{
1340 pub OperationStatus
: u32,
1341 pub ExtendedError
: u32,
1342 pub TargetDetailedError
: u32,
1343 pub ReservedStatus
: u32,
1344 pub OutputBlockOffset
: u32,
1345 pub OutputBlockLength
: u32,
1347 impl ::core
::marker
::Copy
for DEVICE_MANAGE_DATA_SET_ATTRIBUTES_OUTPUT {}
1348 impl ::core
::clone
::Clone
for DEVICE_MANAGE_DATA_SET_ATTRIBUTES_OUTPUT
{
1349 fn clone(&self) -> Self {
1354 #[cfg(feature = "Win32_Storage_FileSystem")]
1355 pub struct DEVICE_MEDIA_INFO
{
1356 pub DeviceSpecific
: DEVICE_MEDIA_INFO_0
,
1358 #[cfg(feature = "Win32_Storage_FileSystem")]
1359 impl ::core
::marker
::Copy
for DEVICE_MEDIA_INFO {}
1360 #[cfg(feature = "Win32_Storage_FileSystem")]
1361 impl ::core
::clone
::Clone
for DEVICE_MEDIA_INFO
{
1362 fn clone(&self) -> Self {
1367 #[cfg(feature = "Win32_Storage_FileSystem")]
1368 pub union DEVICE_MEDIA_INFO_0
{
1369 pub DiskInfo
: DEVICE_MEDIA_INFO_0_0
,
1370 pub RemovableDiskInfo
: DEVICE_MEDIA_INFO_0_1
,
1371 pub TapeInfo
: DEVICE_MEDIA_INFO_0_2
,
1373 #[cfg(feature = "Win32_Storage_FileSystem")]
1374 impl ::core
::marker
::Copy
for DEVICE_MEDIA_INFO_0 {}
1375 #[cfg(feature = "Win32_Storage_FileSystem")]
1376 impl ::core
::clone
::Clone
for DEVICE_MEDIA_INFO_0
{
1377 fn clone(&self) -> Self {
1382 #[cfg(feature = "Win32_Storage_FileSystem")]
1383 pub struct DEVICE_MEDIA_INFO_0_0
{
1385 pub MediaType
: STORAGE_MEDIA_TYPE
,
1386 pub TracksPerCylinder
: u32,
1387 pub SectorsPerTrack
: u32,
1388 pub BytesPerSector
: u32,
1389 pub NumberMediaSides
: u32,
1390 pub MediaCharacteristics
: u32,
1392 #[cfg(feature = "Win32_Storage_FileSystem")]
1393 impl ::core
::marker
::Copy
for DEVICE_MEDIA_INFO_0_0 {}
1394 #[cfg(feature = "Win32_Storage_FileSystem")]
1395 impl ::core
::clone
::Clone
for DEVICE_MEDIA_INFO_0_0
{
1396 fn clone(&self) -> Self {
1401 #[cfg(feature = "Win32_Storage_FileSystem")]
1402 pub struct DEVICE_MEDIA_INFO_0_1
{
1404 pub MediaType
: STORAGE_MEDIA_TYPE
,
1405 pub TracksPerCylinder
: u32,
1406 pub SectorsPerTrack
: u32,
1407 pub BytesPerSector
: u32,
1408 pub NumberMediaSides
: u32,
1409 pub MediaCharacteristics
: u32,
1411 #[cfg(feature = "Win32_Storage_FileSystem")]
1412 impl ::core
::marker
::Copy
for DEVICE_MEDIA_INFO_0_1 {}
1413 #[cfg(feature = "Win32_Storage_FileSystem")]
1414 impl ::core
::clone
::Clone
for DEVICE_MEDIA_INFO_0_1
{
1415 fn clone(&self) -> Self {
1420 #[cfg(feature = "Win32_Storage_FileSystem")]
1421 pub struct DEVICE_MEDIA_INFO_0_2
{
1422 pub MediaType
: STORAGE_MEDIA_TYPE
,
1423 pub MediaCharacteristics
: u32,
1424 pub CurrentBlockSize
: u32,
1425 pub BusType
: super::super::Storage
::FileSystem
::STORAGE_BUS_TYPE
,
1426 pub BusSpecificData
: DEVICE_MEDIA_INFO_0_2_0
,
1428 #[cfg(feature = "Win32_Storage_FileSystem")]
1429 impl ::core
::marker
::Copy
for DEVICE_MEDIA_INFO_0_2 {}
1430 #[cfg(feature = "Win32_Storage_FileSystem")]
1431 impl ::core
::clone
::Clone
for DEVICE_MEDIA_INFO_0_2
{
1432 fn clone(&self) -> Self {
1437 #[cfg(feature = "Win32_Storage_FileSystem")]
1438 pub union DEVICE_MEDIA_INFO_0_2_0
{
1439 pub ScsiInformation
: DEVICE_MEDIA_INFO_0_2_0_0
,
1441 #[cfg(feature = "Win32_Storage_FileSystem")]
1442 impl ::core
::marker
::Copy
for DEVICE_MEDIA_INFO_0_2_0 {}
1443 #[cfg(feature = "Win32_Storage_FileSystem")]
1444 impl ::core
::clone
::Clone
for DEVICE_MEDIA_INFO_0_2_0
{
1445 fn clone(&self) -> Self {
1450 #[cfg(feature = "Win32_Storage_FileSystem")]
1451 pub struct DEVICE_MEDIA_INFO_0_2_0_0
{
1453 pub DensityCode
: u8,
1455 #[cfg(feature = "Win32_Storage_FileSystem")]
1456 impl ::core
::marker
::Copy
for DEVICE_MEDIA_INFO_0_2_0_0 {}
1457 #[cfg(feature = "Win32_Storage_FileSystem")]
1458 impl ::core
::clone
::Clone
for DEVICE_MEDIA_INFO_0_2_0_0
{
1459 fn clone(&self) -> Self {
1464 #[cfg(feature = "Win32_Foundation")]
1465 pub struct DEVICE_POWER_DESCRIPTOR
{
1468 pub DeviceAttentionSupported
: super::super::Foundation
::BOOLEAN
,
1469 pub AsynchronousNotificationSupported
: super::super::Foundation
::BOOLEAN
,
1470 pub IdlePowerManagementEnabled
: super::super::Foundation
::BOOLEAN
,
1471 pub D3ColdEnabled
: super::super::Foundation
::BOOLEAN
,
1472 pub D3ColdSupported
: super::super::Foundation
::BOOLEAN
,
1473 pub NoVerifyDuringIdlePower
: super::super::Foundation
::BOOLEAN
,
1474 pub Reserved
: [u8; 2],
1475 pub IdleTimeoutInMS
: u32,
1477 #[cfg(feature = "Win32_Foundation")]
1478 impl ::core
::marker
::Copy
for DEVICE_POWER_DESCRIPTOR {}
1479 #[cfg(feature = "Win32_Foundation")]
1480 impl ::core
::clone
::Clone
for DEVICE_POWER_DESCRIPTOR
{
1481 fn clone(&self) -> Self {
1486 #[cfg(feature = "Win32_Foundation")]
1487 pub struct DEVICE_SEEK_PENALTY_DESCRIPTOR
{
1490 pub IncursSeekPenalty
: super::super::Foundation
::BOOLEAN
,
1492 #[cfg(feature = "Win32_Foundation")]
1493 impl ::core
::marker
::Copy
for DEVICE_SEEK_PENALTY_DESCRIPTOR {}
1494 #[cfg(feature = "Win32_Foundation")]
1495 impl ::core
::clone
::Clone
for DEVICE_SEEK_PENALTY_DESCRIPTOR
{
1496 fn clone(&self) -> Self {
1501 pub struct DEVICE_STORAGE_ADDRESS_RANGE
{
1502 pub StartAddress
: i64,
1503 pub LengthInBytes
: u64,
1505 impl ::core
::marker
::Copy
for DEVICE_STORAGE_ADDRESS_RANGE {}
1506 impl ::core
::clone
::Clone
for DEVICE_STORAGE_ADDRESS_RANGE
{
1507 fn clone(&self) -> Self {
1511 pub const DEVICE_STORAGE_NO_ERRORS
: u32 = 1u32;
1513 pub struct DEVICE_STORAGE_RANGE_ATTRIBUTES
{
1514 pub LengthInBytes
: u64,
1515 pub Anonymous
: DEVICE_STORAGE_RANGE_ATTRIBUTES_0
,
1518 impl ::core
::marker
::Copy
for DEVICE_STORAGE_RANGE_ATTRIBUTES {}
1519 impl ::core
::clone
::Clone
for DEVICE_STORAGE_RANGE_ATTRIBUTES
{
1520 fn clone(&self) -> Self {
1525 pub union DEVICE_STORAGE_RANGE_ATTRIBUTES_0
{
1527 pub Anonymous
: DEVICE_STORAGE_RANGE_ATTRIBUTES_0_0
,
1529 impl ::core
::marker
::Copy
for DEVICE_STORAGE_RANGE_ATTRIBUTES_0 {}
1530 impl ::core
::clone
::Clone
for DEVICE_STORAGE_RANGE_ATTRIBUTES_0
{
1531 fn clone(&self) -> Self {
1536 pub struct DEVICE_STORAGE_RANGE_ATTRIBUTES_0_0
{
1539 impl ::core
::marker
::Copy
for DEVICE_STORAGE_RANGE_ATTRIBUTES_0_0 {}
1540 impl ::core
::clone
::Clone
for DEVICE_STORAGE_RANGE_ATTRIBUTES_0_0
{
1541 fn clone(&self) -> Self {
1546 #[cfg(feature = "Win32_Foundation")]
1547 pub struct DEVICE_TRIM_DESCRIPTOR
{
1550 pub TrimEnabled
: super::super::Foundation
::BOOLEAN
,
1552 #[cfg(feature = "Win32_Foundation")]
1553 impl ::core
::marker
::Copy
for DEVICE_TRIM_DESCRIPTOR {}
1554 #[cfg(feature = "Win32_Foundation")]
1555 impl ::core
::clone
::Clone
for DEVICE_TRIM_DESCRIPTOR
{
1556 fn clone(&self) -> Self {
1561 #[cfg(feature = "Win32_Foundation")]
1562 pub struct DEVICE_WRITE_AGGREGATION_DESCRIPTOR
{
1565 pub BenefitsFromWriteAggregation
: super::super::Foundation
::BOOLEAN
,
1567 #[cfg(feature = "Win32_Foundation")]
1568 impl ::core
::marker
::Copy
for DEVICE_WRITE_AGGREGATION_DESCRIPTOR {}
1569 #[cfg(feature = "Win32_Foundation")]
1570 impl ::core
::clone
::Clone
for DEVICE_WRITE_AGGREGATION_DESCRIPTOR
{
1571 fn clone(&self) -> Self {
1575 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
1576 pub const DEVPKEY_Storage_Disk_Number
: super::super::UI
::Shell
::PropertiesSystem
::PROPERTYKEY
= super::super::UI
::Shell
::PropertiesSystem
::PROPERTYKEY
{
1577 fmtid
: ::windows_sys
::core
::GUID { data1: 1293860584, data2: 2051, data3: 18292, data4: [152, 66, 183, 125, 181, 2, 101, 233] }
,
1580 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
1581 pub const DEVPKEY_Storage_Gpt_Name
: super::super::UI
::Shell
::PropertiesSystem
::PROPERTYKEY
= super::super::UI
::Shell
::PropertiesSystem
::PROPERTYKEY
{
1582 fmtid
: ::windows_sys
::core
::GUID { data1: 1293860584, data2: 2051, data3: 18292, data4: [152, 66, 183, 125, 181, 2, 101, 233] }
,
1585 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
1586 pub const DEVPKEY_Storage_Gpt_Type
: super::super::UI
::Shell
::PropertiesSystem
::PROPERTYKEY
= super::super::UI
::Shell
::PropertiesSystem
::PROPERTYKEY
{
1587 fmtid
: ::windows_sys
::core
::GUID { data1: 1293860584, data2: 2051, data3: 18292, data4: [152, 66, 183, 125, 181, 2, 101, 233] }
,
1590 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
1591 pub const DEVPKEY_Storage_Mbr_Type
: super::super::UI
::Shell
::PropertiesSystem
::PROPERTYKEY
= super::super::UI
::Shell
::PropertiesSystem
::PROPERTYKEY
{
1592 fmtid
: ::windows_sys
::core
::GUID { data1: 1293860584, data2: 2051, data3: 18292, data4: [152, 66, 183, 125, 181, 2, 101, 233] }
,
1595 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
1596 pub const DEVPKEY_Storage_Partition_Number
: super::super::UI
::Shell
::PropertiesSystem
::PROPERTYKEY
= super::super::UI
::Shell
::PropertiesSystem
::PROPERTYKEY
{
1597 fmtid
: ::windows_sys
::core
::GUID { data1: 1293860584, data2: 2051, data3: 18292, data4: [152, 66, 183, 125, 181, 2, 101, 233] }
,
1600 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
1601 pub const DEVPKEY_Storage_Portable
: super::super::UI
::Shell
::PropertiesSystem
::PROPERTYKEY
= super::super::UI
::Shell
::PropertiesSystem
::PROPERTYKEY
{
1602 fmtid
: ::windows_sys
::core
::GUID { data1: 1293860584, data2: 2051, data3: 18292, data4: [152, 66, 183, 125, 181, 2, 101, 233] }
,
1605 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
1606 pub const DEVPKEY_Storage_Removable_Media
: super::super::UI
::Shell
::PropertiesSystem
::PROPERTYKEY
= super::super::UI
::Shell
::PropertiesSystem
::PROPERTYKEY
{
1607 fmtid
: ::windows_sys
::core
::GUID { data1: 1293860584, data2: 2051, data3: 18292, data4: [152, 66, 183, 125, 181, 2, 101, 233] }
,
1610 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
1611 pub const DEVPKEY_Storage_System_Critical
: super::super::UI
::Shell
::PropertiesSystem
::PROPERTYKEY
= super::super::UI
::Shell
::PropertiesSystem
::PROPERTYKEY
{
1612 fmtid
: ::windows_sys
::core
::GUID { data1: 1293860584, data2: 2051, data3: 18292, data4: [152, 66, 183, 125, 181, 2, 101, 233] }
,
1615 pub const DISABLE_SMART
: u32 = 217u32;
1616 pub const DISK_ATTRIBUTE_OFFLINE
: u64 = 1u64;
1617 pub const DISK_ATTRIBUTE_READ_ONLY
: u64 = 2u64;
1618 pub const DISK_BINNING
: u32 = 3u32;
1620 #[cfg(feature = "Win32_Foundation")]
1621 pub struct DISK_CACHE_INFORMATION
{
1622 pub ParametersSavable
: super::super::Foundation
::BOOLEAN
,
1623 pub ReadCacheEnabled
: super::super::Foundation
::BOOLEAN
,
1624 pub WriteCacheEnabled
: super::super::Foundation
::BOOLEAN
,
1625 pub ReadRetentionPriority
: DISK_CACHE_RETENTION_PRIORITY
,
1626 pub WriteRetentionPriority
: DISK_CACHE_RETENTION_PRIORITY
,
1627 pub DisablePrefetchTransferLength
: u16,
1628 pub PrefetchScalar
: super::super::Foundation
::BOOLEAN
,
1629 pub Anonymous
: DISK_CACHE_INFORMATION_0
,
1631 #[cfg(feature = "Win32_Foundation")]
1632 impl ::core
::marker
::Copy
for DISK_CACHE_INFORMATION {}
1633 #[cfg(feature = "Win32_Foundation")]
1634 impl ::core
::clone
::Clone
for DISK_CACHE_INFORMATION
{
1635 fn clone(&self) -> Self {
1640 #[cfg(feature = "Win32_Foundation")]
1641 pub union DISK_CACHE_INFORMATION_0
{
1642 pub ScalarPrefetch
: DISK_CACHE_INFORMATION_0_1
,
1643 pub BlockPrefetch
: DISK_CACHE_INFORMATION_0_0
,
1645 #[cfg(feature = "Win32_Foundation")]
1646 impl ::core
::marker
::Copy
for DISK_CACHE_INFORMATION_0 {}
1647 #[cfg(feature = "Win32_Foundation")]
1648 impl ::core
::clone
::Clone
for DISK_CACHE_INFORMATION_0
{
1649 fn clone(&self) -> Self {
1654 #[cfg(feature = "Win32_Foundation")]
1655 pub struct DISK_CACHE_INFORMATION_0_0
{
1659 #[cfg(feature = "Win32_Foundation")]
1660 impl ::core
::marker
::Copy
for DISK_CACHE_INFORMATION_0_0 {}
1661 #[cfg(feature = "Win32_Foundation")]
1662 impl ::core
::clone
::Clone
for DISK_CACHE_INFORMATION_0_0
{
1663 fn clone(&self) -> Self {
1668 #[cfg(feature = "Win32_Foundation")]
1669 pub struct DISK_CACHE_INFORMATION_0_1
{
1672 pub MaximumBlocks
: u16,
1674 #[cfg(feature = "Win32_Foundation")]
1675 impl ::core
::marker
::Copy
for DISK_CACHE_INFORMATION_0_1 {}
1676 #[cfg(feature = "Win32_Foundation")]
1677 impl ::core
::clone
::Clone
for DISK_CACHE_INFORMATION_0_1
{
1678 fn clone(&self) -> Self {
1682 pub type DISK_CACHE_RETENTION_PRIORITY
= i32;
1683 pub const EqualPriority
: DISK_CACHE_RETENTION_PRIORITY
= 0i32;
1684 pub const KeepPrefetchedData
: DISK_CACHE_RETENTION_PRIORITY
= 1i32;
1685 pub const KeepReadData
: DISK_CACHE_RETENTION_PRIORITY
= 2i32;
1687 pub struct DISK_CONTROLLER_NUMBER
{
1688 pub ControllerNumber
: u32,
1689 pub DiskNumber
: u32,
1691 impl ::core
::marker
::Copy
for DISK_CONTROLLER_NUMBER {}
1692 impl ::core
::clone
::Clone
for DISK_CONTROLLER_NUMBER
{
1693 fn clone(&self) -> Self {
1698 pub struct DISK_DETECTION_INFO
{
1699 pub SizeOfDetectInfo
: u32,
1700 pub DetectionType
: DETECTION_TYPE
,
1701 pub Anonymous
: DISK_DETECTION_INFO_0
,
1703 impl ::core
::marker
::Copy
for DISK_DETECTION_INFO {}
1704 impl ::core
::clone
::Clone
for DISK_DETECTION_INFO
{
1705 fn clone(&self) -> Self {
1710 pub union DISK_DETECTION_INFO_0
{
1711 pub Anonymous
: DISK_DETECTION_INFO_0_0
,
1713 impl ::core
::marker
::Copy
for DISK_DETECTION_INFO_0 {}
1714 impl ::core
::clone
::Clone
for DISK_DETECTION_INFO_0
{
1715 fn clone(&self) -> Self {
1720 pub struct DISK_DETECTION_INFO_0_0
{
1721 pub Int13
: DISK_INT13_INFO
,
1722 pub ExInt13
: DISK_EX_INT13_INFO
,
1724 impl ::core
::marker
::Copy
for DISK_DETECTION_INFO_0_0 {}
1725 impl ::core
::clone
::Clone
for DISK_DETECTION_INFO_0_0
{
1726 fn clone(&self) -> Self {
1731 pub struct DISK_EXTENT
{
1732 pub DiskNumber
: u32,
1733 pub StartingOffset
: i64,
1734 pub ExtentLength
: i64,
1736 impl ::core
::marker
::Copy
for DISK_EXTENT {}
1737 impl ::core
::clone
::Clone
for DISK_EXTENT
{
1738 fn clone(&self) -> Self {
1743 pub struct DISK_EX_INT13_INFO
{
1744 pub ExBufferSize
: u16,
1746 pub ExCylinders
: u32,
1748 pub ExSectorsPerTrack
: u32,
1749 pub ExSectorsPerDrive
: u64,
1750 pub ExSectorSize
: u16,
1751 pub ExReserved
: u16,
1753 impl ::core
::marker
::Copy
for DISK_EX_INT13_INFO {}
1754 impl ::core
::clone
::Clone
for DISK_EX_INT13_INFO
{
1755 fn clone(&self) -> Self {
1760 pub struct DISK_GEOMETRY
{
1762 pub MediaType
: MEDIA_TYPE
,
1763 pub TracksPerCylinder
: u32,
1764 pub SectorsPerTrack
: u32,
1765 pub BytesPerSector
: u32,
1767 impl ::core
::marker
::Copy
for DISK_GEOMETRY {}
1768 impl ::core
::clone
::Clone
for DISK_GEOMETRY
{
1769 fn clone(&self) -> Self {
1774 pub struct DISK_GEOMETRY_EX
{
1775 pub Geometry
: DISK_GEOMETRY
,
1779 impl ::core
::marker
::Copy
for DISK_GEOMETRY_EX {}
1780 impl ::core
::clone
::Clone
for DISK_GEOMETRY_EX
{
1781 fn clone(&self) -> Self {
1786 pub struct DISK_GROW_PARTITION
{
1787 pub PartitionNumber
: u32,
1788 pub BytesToGrow
: i64,
1790 impl ::core
::marker
::Copy
for DISK_GROW_PARTITION {}
1791 impl ::core
::clone
::Clone
for DISK_GROW_PARTITION
{
1792 fn clone(&self) -> Self {
1797 pub struct DISK_HISTOGRAM
{
1802 pub AverageRead
: i64,
1803 pub AverageWrite
: i64,
1804 pub Granularity
: u32,
1807 pub WriteCount
: u32,
1808 pub Histogram
: *mut HISTOGRAM_BUCKET
,
1810 impl ::core
::marker
::Copy
for DISK_HISTOGRAM {}
1811 impl ::core
::clone
::Clone
for DISK_HISTOGRAM
{
1812 fn clone(&self) -> Self {
1817 pub struct DISK_INT13_INFO
{
1818 pub DriveSelect
: u16,
1819 pub MaxCylinders
: u32,
1820 pub SectorsPerTrack
: u16,
1822 pub NumberDrives
: u16,
1824 impl ::core
::marker
::Copy
for DISK_INT13_INFO {}
1825 impl ::core
::clone
::Clone
for DISK_INT13_INFO
{
1826 fn clone(&self) -> Self {
1831 pub struct DISK_LOGGING
{
1833 pub BufferAddress
: *mut ::core
::ffi
::c_void
,
1834 pub BufferSize
: u32,
1836 impl ::core
::marker
::Copy
for DISK_LOGGING {}
1837 impl ::core
::clone
::Clone
for DISK_LOGGING
{
1838 fn clone(&self) -> Self {
1842 pub const DISK_LOGGING_DUMP
: u32 = 2u32;
1843 pub const DISK_LOGGING_START
: u32 = 0u32;
1844 pub const DISK_LOGGING_STOP
: u32 = 1u32;
1846 pub struct DISK_PARTITION_INFO
{
1847 pub SizeOfPartitionInfo
: u32,
1848 pub PartitionStyle
: PARTITION_STYLE
,
1849 pub Anonymous
: DISK_PARTITION_INFO_0
,
1851 impl ::core
::marker
::Copy
for DISK_PARTITION_INFO {}
1852 impl ::core
::clone
::Clone
for DISK_PARTITION_INFO
{
1853 fn clone(&self) -> Self {
1858 pub union DISK_PARTITION_INFO_0
{
1859 pub Mbr
: DISK_PARTITION_INFO_0_1
,
1860 pub Gpt
: DISK_PARTITION_INFO_0_0
,
1862 impl ::core
::marker
::Copy
for DISK_PARTITION_INFO_0 {}
1863 impl ::core
::clone
::Clone
for DISK_PARTITION_INFO_0
{
1864 fn clone(&self) -> Self {
1869 pub struct DISK_PARTITION_INFO_0_0
{
1870 pub DiskId
: ::windows_sys
::core
::GUID
,
1872 impl ::core
::marker
::Copy
for DISK_PARTITION_INFO_0_0 {}
1873 impl ::core
::clone
::Clone
for DISK_PARTITION_INFO_0_0
{
1874 fn clone(&self) -> Self {
1879 pub struct DISK_PARTITION_INFO_0_1
{
1883 impl ::core
::marker
::Copy
for DISK_PARTITION_INFO_0_1 {}
1884 impl ::core
::clone
::Clone
for DISK_PARTITION_INFO_0_1
{
1885 fn clone(&self) -> Self {
1890 pub struct DISK_PERFORMANCE
{
1892 pub BytesWritten
: i64,
1897 pub WriteCount
: u32,
1898 pub QueueDepth
: u32,
1899 pub SplitCount
: u32,
1901 pub StorageDeviceNumber
: u32,
1902 pub StorageManagerName
: [u16; 8],
1904 impl ::core
::marker
::Copy
for DISK_PERFORMANCE {}
1905 impl ::core
::clone
::Clone
for DISK_PERFORMANCE
{
1906 fn clone(&self) -> Self {
1911 #[cfg(feature = "Win32_Foundation")]
1912 pub struct DISK_RECORD
{
1913 pub ByteOffset
: i64,
1916 pub VirtualAddress
: *mut ::core
::ffi
::c_void
,
1917 pub NumberOfBytes
: u32,
1918 pub DeviceNumber
: u8,
1919 pub ReadRequest
: super::super::Foundation
::BOOLEAN
,
1921 #[cfg(feature = "Win32_Foundation")]
1922 impl ::core
::marker
::Copy
for DISK_RECORD {}
1923 #[cfg(feature = "Win32_Foundation")]
1924 impl ::core
::clone
::Clone
for DISK_RECORD
{
1925 fn clone(&self) -> Self {
1929 #[repr(C, packed(1))]
1930 pub struct DRIVERSTATUS
{
1931 pub bDriverError
: u8,
1933 pub bReserved
: [u8; 2],
1934 pub dwReserved
: [u32; 2],
1936 impl ::core
::marker
::Copy
for DRIVERSTATUS {}
1937 impl ::core
::clone
::Clone
for DRIVERSTATUS
{
1938 fn clone(&self) -> Self {
1943 #[cfg(feature = "Win32_Foundation")]
1944 pub struct DRIVE_LAYOUT_INFORMATION
{
1945 pub PartitionCount
: u32,
1947 pub PartitionEntry
: [PARTITION_INFORMATION
; 1],
1949 #[cfg(feature = "Win32_Foundation")]
1950 impl ::core
::marker
::Copy
for DRIVE_LAYOUT_INFORMATION {}
1951 #[cfg(feature = "Win32_Foundation")]
1952 impl ::core
::clone
::Clone
for DRIVE_LAYOUT_INFORMATION
{
1953 fn clone(&self) -> Self {
1958 #[cfg(feature = "Win32_Foundation")]
1959 pub struct DRIVE_LAYOUT_INFORMATION_EX
{
1960 pub PartitionStyle
: u32,
1961 pub PartitionCount
: u32,
1962 pub Anonymous
: DRIVE_LAYOUT_INFORMATION_EX_0
,
1963 pub PartitionEntry
: [PARTITION_INFORMATION_EX
; 1],
1965 #[cfg(feature = "Win32_Foundation")]
1966 impl ::core
::marker
::Copy
for DRIVE_LAYOUT_INFORMATION_EX {}
1967 #[cfg(feature = "Win32_Foundation")]
1968 impl ::core
::clone
::Clone
for DRIVE_LAYOUT_INFORMATION_EX
{
1969 fn clone(&self) -> Self {
1974 #[cfg(feature = "Win32_Foundation")]
1975 pub union DRIVE_LAYOUT_INFORMATION_EX_0
{
1976 pub Mbr
: DRIVE_LAYOUT_INFORMATION_MBR
,
1977 pub Gpt
: DRIVE_LAYOUT_INFORMATION_GPT
,
1979 #[cfg(feature = "Win32_Foundation")]
1980 impl ::core
::marker
::Copy
for DRIVE_LAYOUT_INFORMATION_EX_0 {}
1981 #[cfg(feature = "Win32_Foundation")]
1982 impl ::core
::clone
::Clone
for DRIVE_LAYOUT_INFORMATION_EX_0
{
1983 fn clone(&self) -> Self {
1988 pub struct DRIVE_LAYOUT_INFORMATION_GPT
{
1989 pub DiskId
: ::windows_sys
::core
::GUID
,
1990 pub StartingUsableOffset
: i64,
1991 pub UsableLength
: i64,
1992 pub MaxPartitionCount
: u32,
1994 impl ::core
::marker
::Copy
for DRIVE_LAYOUT_INFORMATION_GPT {}
1995 impl ::core
::clone
::Clone
for DRIVE_LAYOUT_INFORMATION_GPT
{
1996 fn clone(&self) -> Self {
2001 pub struct DRIVE_LAYOUT_INFORMATION_MBR
{
2005 impl ::core
::marker
::Copy
for DRIVE_LAYOUT_INFORMATION_MBR {}
2006 impl ::core
::clone
::Clone
for DRIVE_LAYOUT_INFORMATION_MBR
{
2007 fn clone(&self) -> Self {
2012 #[cfg(feature = "Win32_Foundation")]
2013 pub struct DUPLICATE_EXTENTS_DATA
{
2014 pub FileHandle
: super::super::Foundation
::HANDLE
,
2015 pub SourceFileOffset
: i64,
2016 pub TargetFileOffset
: i64,
2019 #[cfg(feature = "Win32_Foundation")]
2020 impl ::core
::marker
::Copy
for DUPLICATE_EXTENTS_DATA {}
2021 #[cfg(feature = "Win32_Foundation")]
2022 impl ::core
::clone
::Clone
for DUPLICATE_EXTENTS_DATA
{
2023 fn clone(&self) -> Self {
2028 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))]
2029 pub struct DUPLICATE_EXTENTS_DATA32
{
2030 pub FileHandle
: u32,
2031 pub SourceFileOffset
: i64,
2032 pub TargetFileOffset
: i64,
2035 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))]
2036 impl ::core
::marker
::Copy
for DUPLICATE_EXTENTS_DATA32 {}
2037 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))]
2038 impl ::core
::clone
::Clone
for DUPLICATE_EXTENTS_DATA32
{
2039 fn clone(&self) -> Self {
2044 #[cfg(feature = "Win32_Foundation")]
2045 pub struct DUPLICATE_EXTENTS_DATA_EX
{
2047 pub FileHandle
: super::super::Foundation
::HANDLE
,
2048 pub SourceFileOffset
: i64,
2049 pub TargetFileOffset
: i64,
2053 #[cfg(feature = "Win32_Foundation")]
2054 impl ::core
::marker
::Copy
for DUPLICATE_EXTENTS_DATA_EX {}
2055 #[cfg(feature = "Win32_Foundation")]
2056 impl ::core
::clone
::Clone
for DUPLICATE_EXTENTS_DATA_EX
{
2057 fn clone(&self) -> Self {
2062 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))]
2063 pub struct DUPLICATE_EXTENTS_DATA_EX32
{
2065 pub FileHandle
: u32,
2066 pub SourceFileOffset
: i64,
2067 pub TargetFileOffset
: i64,
2071 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))]
2072 impl ::core
::marker
::Copy
for DUPLICATE_EXTENTS_DATA_EX32 {}
2073 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))]
2074 impl ::core
::clone
::Clone
for DUPLICATE_EXTENTS_DATA_EX32
{
2075 fn clone(&self) -> Self {
2079 pub const DUPLICATE_EXTENTS_DATA_EX_ASYNC
: u32 = 2u32;
2080 pub const DUPLICATE_EXTENTS_DATA_EX_SOURCE_ATOMIC
: u32 = 1u32;
2081 pub type DUPLICATE_EXTENTS_STATE
= i32;
2082 pub const FileSnapStateInactive
: DUPLICATE_EXTENTS_STATE
= 0i32;
2083 pub const FileSnapStateSource
: DUPLICATE_EXTENTS_STATE
= 1i32;
2084 pub const FileSnapStateTarget
: DUPLICATE_EXTENTS_STATE
= 2i32;
2085 pub const DeviceDsmActionFlag_NonDestructive
: u32 = 2147483648u32;
2086 pub const EFS_TRACKED_OFFSET_HEADER_FLAG
: u32 = 1u32;
2087 pub type ELEMENT_TYPE
= i32;
2088 pub const AllElements
: ELEMENT_TYPE
= 0i32;
2089 pub const ChangerTransport
: ELEMENT_TYPE
= 1i32;
2090 pub const ChangerSlot
: ELEMENT_TYPE
= 2i32;
2091 pub const ChangerIEPort
: ELEMENT_TYPE
= 3i32;
2092 pub const ChangerDrive
: ELEMENT_TYPE
= 4i32;
2093 pub const ChangerDoor
: ELEMENT_TYPE
= 5i32;
2094 pub const ChangerKeypad
: ELEMENT_TYPE
= 6i32;
2095 pub const ChangerMaxElement
: ELEMENT_TYPE
= 7i32;
2096 pub const ENABLE_DISABLE_AUTOSAVE
: u32 = 210u32;
2097 pub const ENABLE_DISABLE_AUTO_OFFLINE
: u32 = 219u32;
2098 pub const ENABLE_SMART
: u32 = 216u32;
2100 pub struct ENCRYPTED_DATA_INFO
{
2101 pub StartingFileOffset
: u64,
2102 pub OutputBufferOffset
: u32,
2103 pub BytesWithinFileSize
: u32,
2104 pub BytesWithinValidDataLength
: u32,
2105 pub CompressionFormat
: u16,
2106 pub DataUnitShift
: u8,
2108 pub ClusterShift
: u8,
2109 pub EncryptionFormat
: u8,
2110 pub NumberOfDataBlocks
: u16,
2111 pub DataBlockSize
: [u32; 1],
2113 impl ::core
::marker
::Copy
for ENCRYPTED_DATA_INFO {}
2114 impl ::core
::clone
::Clone
for ENCRYPTED_DATA_INFO
{
2115 fn clone(&self) -> Self {
2119 pub const ENCRYPTED_DATA_INFO_SPARSE_FILE
: u32 = 1u32;
2121 pub struct ENCRYPTION_BUFFER
{
2122 pub EncryptionOperation
: u32,
2123 pub Private
: [u8; 1],
2125 impl ::core
::marker
::Copy
for ENCRYPTION_BUFFER {}
2126 impl ::core
::clone
::Clone
for ENCRYPTION_BUFFER
{
2127 fn clone(&self) -> Self {
2131 pub const ENCRYPTION_FORMAT_DEFAULT
: u32 = 1u32;
2133 pub struct ENCRYPTION_KEY_CTRL_INPUT
{
2134 pub HeaderSize
: u32,
2135 pub StructureSize
: u32,
2140 pub DplCredentialId
: u64,
2142 impl ::core
::marker
::Copy
for ENCRYPTION_KEY_CTRL_INPUT {}
2143 impl ::core
::clone
::Clone
for ENCRYPTION_KEY_CTRL_INPUT
{
2144 fn clone(&self) -> Self {
2148 pub const ERROR_DRIVE_NOT_INSTALLED
: u32 = 8u32;
2149 pub const ERROR_HISTORY_DIRECTORY_ENTRY_DEFAULT_COUNT
: u32 = 8u32;
2150 pub const ERROR_INIT_STATUS_NEEDED
: u32 = 17u32;
2151 pub const ERROR_LABEL_QUESTIONABLE
: u32 = 2u32;
2152 pub const ERROR_LABEL_UNREADABLE
: u32 = 1u32;
2153 pub const ERROR_SLOT_NOT_PRESENT
: u32 = 4u32;
2154 pub const ERROR_TRAY_MALFUNCTION
: u32 = 16u32;
2155 pub const ERROR_UNHANDLED_ERROR
: u32 = 4294967295u32;
2156 pub const EXECUTE_OFFLINE_DIAGS
: u32 = 212u32;
2158 pub struct EXFAT_STATISTICS
{
2159 pub CreateHits
: u32,
2160 pub SuccessfulCreates
: u32,
2161 pub FailedCreates
: u32,
2162 pub NonCachedReads
: u32,
2163 pub NonCachedReadBytes
: u32,
2164 pub NonCachedWrites
: u32,
2165 pub NonCachedWriteBytes
: u32,
2166 pub NonCachedDiskReads
: u32,
2167 pub NonCachedDiskWrites
: u32,
2169 impl ::core
::marker
::Copy
for EXFAT_STATISTICS {}
2170 impl ::core
::clone
::Clone
for EXFAT_STATISTICS
{
2171 fn clone(&self) -> Self {
2176 pub struct EXTENDED_ENCRYPTED_DATA_INFO
{
2177 pub ExtendedCode
: u32,
2182 impl ::core
::marker
::Copy
for EXTENDED_ENCRYPTED_DATA_INFO {}
2183 impl ::core
::clone
::Clone
for EXTENDED_ENCRYPTED_DATA_INFO
{
2184 fn clone(&self) -> Self {
2188 pub const EXTEND_IEPORT
: u32 = 2u32;
2190 pub struct FAT_STATISTICS
{
2191 pub CreateHits
: u32,
2192 pub SuccessfulCreates
: u32,
2193 pub FailedCreates
: u32,
2194 pub NonCachedReads
: u32,
2195 pub NonCachedReadBytes
: u32,
2196 pub NonCachedWrites
: u32,
2197 pub NonCachedWriteBytes
: u32,
2198 pub NonCachedDiskReads
: u32,
2199 pub NonCachedDiskWrites
: u32,
2201 impl ::core
::marker
::Copy
for FAT_STATISTICS {}
2202 impl ::core
::clone
::Clone
for FAT_STATISTICS
{
2203 fn clone(&self) -> Self {
2208 pub struct FILESYSTEM_STATISTICS
{
2209 pub FileSystemType
: FILESYSTEM_STATISTICS_TYPE
,
2211 pub SizeOfCompleteStructure
: u32,
2212 pub UserFileReads
: u32,
2213 pub UserFileReadBytes
: u32,
2214 pub UserDiskReads
: u32,
2215 pub UserFileWrites
: u32,
2216 pub UserFileWriteBytes
: u32,
2217 pub UserDiskWrites
: u32,
2218 pub MetaDataReads
: u32,
2219 pub MetaDataReadBytes
: u32,
2220 pub MetaDataDiskReads
: u32,
2221 pub MetaDataWrites
: u32,
2222 pub MetaDataWriteBytes
: u32,
2223 pub MetaDataDiskWrites
: u32,
2225 impl ::core
::marker
::Copy
for FILESYSTEM_STATISTICS {}
2226 impl ::core
::clone
::Clone
for FILESYSTEM_STATISTICS
{
2227 fn clone(&self) -> Self {
2232 pub struct FILESYSTEM_STATISTICS_EX
{
2233 pub FileSystemType
: FILESYSTEM_STATISTICS_TYPE
,
2235 pub SizeOfCompleteStructure
: u32,
2236 pub UserFileReads
: u64,
2237 pub UserFileReadBytes
: u64,
2238 pub UserDiskReads
: u64,
2239 pub UserFileWrites
: u64,
2240 pub UserFileWriteBytes
: u64,
2241 pub UserDiskWrites
: u64,
2242 pub MetaDataReads
: u64,
2243 pub MetaDataReadBytes
: u64,
2244 pub MetaDataDiskReads
: u64,
2245 pub MetaDataWrites
: u64,
2246 pub MetaDataWriteBytes
: u64,
2247 pub MetaDataDiskWrites
: u64,
2249 impl ::core
::marker
::Copy
for FILESYSTEM_STATISTICS_EX {}
2250 impl ::core
::clone
::Clone
for FILESYSTEM_STATISTICS_EX
{
2251 fn clone(&self) -> Self {
2255 pub type FILESYSTEM_STATISTICS_TYPE
= u16;
2256 pub const FILESYSTEM_STATISTICS_TYPE_EXFAT
: FILESYSTEM_STATISTICS_TYPE
= 3u16;
2257 pub const FILESYSTEM_STATISTICS_TYPE_FAT
: FILESYSTEM_STATISTICS_TYPE
= 2u16;
2258 pub const FILESYSTEM_STATISTICS_TYPE_NTFS
: FILESYSTEM_STATISTICS_TYPE
= 1u16;
2259 pub const FILESYSTEM_STATISTICS_TYPE_REFS
: u32 = 4u32;
2261 pub struct FILE_ALLOCATED_RANGE_BUFFER
{
2262 pub FileOffset
: i64,
2265 impl ::core
::marker
::Copy
for FILE_ALLOCATED_RANGE_BUFFER {}
2266 impl ::core
::clone
::Clone
for FILE_ALLOCATED_RANGE_BUFFER
{
2267 fn clone(&self) -> Self {
2271 pub const FILE_ANY_ACCESS
: u32 = 0u32;
2272 pub const FILE_CLEAR_ENCRYPTION
: u32 = 2u32;
2274 pub struct FILE_DESIRED_STORAGE_CLASS_INFORMATION
{
2275 pub Class
: FILE_STORAGE_TIER_CLASS
,
2278 impl ::core
::marker
::Copy
for FILE_DESIRED_STORAGE_CLASS_INFORMATION {}
2279 impl ::core
::clone
::Clone
for FILE_DESIRED_STORAGE_CLASS_INFORMATION
{
2280 fn clone(&self) -> Self {
2284 pub const FILE_DEVICE_8042_PORT
: u32 = 39u32;
2285 pub const FILE_DEVICE_ACPI
: u32 = 50u32;
2286 pub const FILE_DEVICE_BATTERY
: u32 = 41u32;
2287 pub const FILE_DEVICE_BEEP
: u32 = 1u32;
2288 pub const FILE_DEVICE_BIOMETRIC
: u32 = 68u32;
2289 pub const FILE_DEVICE_BLUETOOTH
: u32 = 65u32;
2290 pub const FILE_DEVICE_BUS_EXTENDER
: u32 = 42u32;
2291 pub const FILE_DEVICE_CD_ROM_FILE_SYSTEM
: u32 = 3u32;
2292 pub const FILE_DEVICE_CHANGER
: u32 = 48u32;
2293 pub const FILE_DEVICE_CONSOLE
: u32 = 80u32;
2294 pub const FILE_DEVICE_CONTROLLER
: u32 = 4u32;
2295 pub const FILE_DEVICE_CRYPT_PROVIDER
: u32 = 63u32;
2296 pub const FILE_DEVICE_DATALINK
: u32 = 5u32;
2297 pub const FILE_DEVICE_DEVAPI
: u32 = 71u32;
2298 pub const FILE_DEVICE_DFS
: u32 = 6u32;
2299 pub const FILE_DEVICE_DFS_FILE_SYSTEM
: u32 = 53u32;
2300 pub const FILE_DEVICE_DFS_VOLUME
: u32 = 54u32;
2301 pub const FILE_DEVICE_DISK_FILE_SYSTEM
: u32 = 8u32;
2302 pub const FILE_DEVICE_EHSTOR
: u32 = 70u32;
2303 pub const FILE_DEVICE_EVENT_COLLECTOR
: u32 = 95u32;
2304 pub const FILE_DEVICE_FILE_SYSTEM
: u32 = 9u32;
2305 pub const FILE_DEVICE_FIPS
: u32 = 58u32;
2306 pub const FILE_DEVICE_FULLSCREEN_VIDEO
: u32 = 52u32;
2307 pub const FILE_DEVICE_GPIO
: u32 = 72u32;
2308 pub const FILE_DEVICE_HOLOGRAPHIC
: u32 = 91u32;
2309 pub const FILE_DEVICE_INFINIBAND
: u32 = 59u32;
2310 pub const FILE_DEVICE_INPORT_PORT
: u32 = 10u32;
2311 pub const FILE_DEVICE_KEYBOARD
: u32 = 11u32;
2312 pub const FILE_DEVICE_KS
: u32 = 47u32;
2313 pub const FILE_DEVICE_KSEC
: u32 = 57u32;
2314 pub const FILE_DEVICE_MAILSLOT
: u32 = 12u32;
2315 pub const FILE_DEVICE_MASS_STORAGE
: u32 = 45u32;
2316 pub const FILE_DEVICE_MIDI_IN
: u32 = 13u32;
2317 pub const FILE_DEVICE_MIDI_OUT
: u32 = 14u32;
2318 pub const FILE_DEVICE_MODEM
: u32 = 43u32;
2319 pub const FILE_DEVICE_MOUSE
: u32 = 15u32;
2320 pub const FILE_DEVICE_MT_COMPOSITE
: u32 = 66u32;
2321 pub const FILE_DEVICE_MT_TRANSPORT
: u32 = 67u32;
2322 pub const FILE_DEVICE_MULTI_UNC_PROVIDER
: u32 = 16u32;
2323 pub const FILE_DEVICE_NAMED_PIPE
: u32 = 17u32;
2324 pub const FILE_DEVICE_NETWORK
: u32 = 18u32;
2325 pub const FILE_DEVICE_NETWORK_BROWSER
: u32 = 19u32;
2326 pub const FILE_DEVICE_NETWORK_FILE_SYSTEM
: u32 = 20u32;
2327 pub const FILE_DEVICE_NETWORK_REDIRECTOR
: u32 = 40u32;
2328 pub const FILE_DEVICE_NFP
: u32 = 81u32;
2329 pub const FILE_DEVICE_NULL
: u32 = 21u32;
2330 pub const FILE_DEVICE_NVDIMM
: u32 = 90u32;
2331 pub const FILE_DEVICE_PARALLEL_PORT
: u32 = 22u32;
2332 pub const FILE_DEVICE_PERSISTENT_MEMORY
: u32 = 89u32;
2333 pub const FILE_DEVICE_PHYSICAL_NETCARD
: u32 = 23u32;
2334 pub const FILE_DEVICE_PMI
: u32 = 69u32;
2335 pub const FILE_DEVICE_POINT_OF_SERVICE
: u32 = 84u32;
2336 pub const FILE_DEVICE_PRINTER
: u32 = 24u32;
2337 pub const FILE_DEVICE_PRM
: u32 = 94u32;
2338 pub const FILE_DEVICE_SCANNER
: u32 = 25u32;
2339 pub const FILE_DEVICE_SCREEN
: u32 = 28u32;
2340 pub const FILE_DEVICE_SDFXHCI
: u32 = 92u32;
2341 pub const FILE_DEVICE_SERENUM
: u32 = 55u32;
2342 pub const FILE_DEVICE_SERIAL_MOUSE_PORT
: u32 = 26u32;
2343 pub const FILE_DEVICE_SERIAL_PORT
: u32 = 27u32;
2344 pub const FILE_DEVICE_SMB
: u32 = 46u32;
2345 pub const FILE_DEVICE_SOUND
: u32 = 29u32;
2346 pub const FILE_DEVICE_SOUNDWIRE
: u32 = 97u32;
2347 pub const FILE_DEVICE_STORAGE_REPLICATION
: u32 = 85u32;
2348 pub const FILE_DEVICE_STREAMS
: u32 = 30u32;
2349 pub const FILE_DEVICE_SYSENV
: u32 = 82u32;
2350 pub const FILE_DEVICE_TAPE_FILE_SYSTEM
: u32 = 32u32;
2351 pub const FILE_DEVICE_TERMSRV
: u32 = 56u32;
2352 pub const FILE_DEVICE_TRANSPORT
: u32 = 33u32;
2353 pub const FILE_DEVICE_TRUST_ENV
: u32 = 86u32;
2354 pub const FILE_DEVICE_UCM
: u32 = 87u32;
2355 pub const FILE_DEVICE_UCMTCPCI
: u32 = 88u32;
2356 pub const FILE_DEVICE_UCMUCSI
: u32 = 93u32;
2357 pub const FILE_DEVICE_UNKNOWN
: u32 = 34u32;
2358 pub const FILE_DEVICE_USB4
: u32 = 96u32;
2359 pub const FILE_DEVICE_USBEX
: u32 = 73u32;
2360 pub const FILE_DEVICE_VDM
: u32 = 44u32;
2361 pub const FILE_DEVICE_VIDEO
: u32 = 35u32;
2362 pub const FILE_DEVICE_VIRTUAL_BLOCK
: u32 = 83u32;
2363 pub const FILE_DEVICE_VIRTUAL_DISK
: u32 = 36u32;
2364 pub const FILE_DEVICE_VMBUS
: u32 = 62u32;
2365 pub const FILE_DEVICE_WAVE_IN
: u32 = 37u32;
2366 pub const FILE_DEVICE_WAVE_OUT
: u32 = 38u32;
2367 pub const FILE_DEVICE_WPD
: u32 = 64u32;
2369 pub struct FILE_FS_PERSISTENT_VOLUME_INFORMATION
{
2370 pub VolumeFlags
: u32,
2375 impl ::core
::marker
::Copy
for FILE_FS_PERSISTENT_VOLUME_INFORMATION {}
2376 impl ::core
::clone
::Clone
for FILE_FS_PERSISTENT_VOLUME_INFORMATION
{
2377 fn clone(&self) -> Self {
2381 pub const FILE_INITIATE_REPAIR_HINT1_ATTRIBUTE_NON_RESIDENT
: u64 = 137438953472u64;
2382 pub const FILE_INITIATE_REPAIR_HINT1_ATTRIBUTE_NOT_FOUND
: u64 = 4096u64;
2383 pub const FILE_INITIATE_REPAIR_HINT1_ATTRIBUTE_TOO_SMALL
: u64 = 68719476736u64;
2384 pub const FILE_INITIATE_REPAIR_HINT1_CLUSTERS_ALREADY_IN_USE
: u64 = 32768u64;
2385 pub const FILE_INITIATE_REPAIR_HINT1_DENY_DEFRAG
: u64 = 274877906944u64;
2386 pub const FILE_INITIATE_REPAIR_HINT1_FILE_RECORD_IS_BASE_RECORD
: u64 = 524288u64;
2387 pub const FILE_INITIATE_REPAIR_HINT1_FILE_RECORD_NOT_BASE_RECORD
: u64 = 8u64;
2388 pub const FILE_INITIATE_REPAIR_HINT1_FILE_RECORD_NOT_EXIST
: u64 = 4u64;
2389 pub const FILE_INITIATE_REPAIR_HINT1_FILE_RECORD_NOT_IN_USE
: u64 = 1u64;
2390 pub const FILE_INITIATE_REPAIR_HINT1_FILE_RECORD_NOT_ORPHAN
: u64 = 262144u64;
2391 pub const FILE_INITIATE_REPAIR_HINT1_FILE_RECORD_REUSED
: u64 = 2u64;
2392 pub const FILE_INITIATE_REPAIR_HINT1_INDEX_ENTRY_MISMATCH
: u64 = 1099511627776u64;
2393 pub const FILE_INITIATE_REPAIR_HINT1_INVALID_ARRAY_LENGTH_COUNT
: u64 = 1048576u64;
2394 pub const FILE_INITIATE_REPAIR_HINT1_INVALID_LCN
: u64 = 4294967296u64;
2395 pub const FILE_INITIATE_REPAIR_HINT1_INVALID_ORPHAN_RECOVERY_NAME
: u64 = 2199023255552u64;
2396 pub const FILE_INITIATE_REPAIR_HINT1_INVALID_PARENT
: u64 = 8388608u64;
2397 pub const FILE_INITIATE_REPAIR_HINT1_INVALID_RUN_LENGTH
: u64 = 131072u64;
2398 pub const FILE_INITIATE_REPAIR_HINT1_INVALID_VCN
: u64 = 8589934592u64;
2399 pub const FILE_INITIATE_REPAIR_HINT1_LCN_NOT_EXIST
: u64 = 65536u64;
2400 pub const FILE_INITIATE_REPAIR_HINT1_MULTIPLE_FILE_NAME_ATTRIBUTES
: u64 = 4398046511104u64;
2401 pub const FILE_INITIATE_REPAIR_HINT1_NAME_CONFLICT
: u64 = 17179869184u64;
2402 pub const FILE_INITIATE_REPAIR_HINT1_NOTHING_WRONG
: u64 = 2048u64;
2403 pub const FILE_INITIATE_REPAIR_HINT1_NOT_IMPLEMENTED
: u64 = 32u64;
2404 pub const FILE_INITIATE_REPAIR_HINT1_ORPHAN
: u64 = 34359738368u64;
2405 pub const FILE_INITIATE_REPAIR_HINT1_ORPHAN_GENERATED
: u64 = 512u64;
2406 pub const FILE_INITIATE_REPAIR_HINT1_OUT_OF_GENERIC_NAMES
: u64 = 1073741824u64;
2407 pub const FILE_INITIATE_REPAIR_HINT1_OUT_OF_RESOURCE
: u64 = 2147483648u64;
2408 pub const FILE_INITIATE_REPAIR_HINT1_PARENT_FILE_RECORD_NOT_BASE_RECORD
: u64 = 134217728u64;
2409 pub const FILE_INITIATE_REPAIR_HINT1_PARENT_FILE_RECORD_NOT_EXIST
: u64 = 67108864u64;
2410 pub const FILE_INITIATE_REPAIR_HINT1_PARENT_FILE_RECORD_NOT_INDEX
: u64 = 268435456u64;
2411 pub const FILE_INITIATE_REPAIR_HINT1_PARENT_FILE_RECORD_NOT_IN_USE
: u64 = 16777216u64;
2412 pub const FILE_INITIATE_REPAIR_HINT1_PARENT_FILE_RECORD_REUSED
: u64 = 33554432u64;
2413 pub const FILE_INITIATE_REPAIR_HINT1_POTENTIAL_CROSSLINK
: u64 = 8192u64;
2414 pub const FILE_INITIATE_REPAIR_HINT1_PREVIOUS_PARENT_STILL_VALID
: u64 = 549755813888u64;
2415 pub const FILE_INITIATE_REPAIR_HINT1_RECURSIVELY_CORRUPTED
: u64 = 256u64;
2416 pub const FILE_INITIATE_REPAIR_HINT1_REPAIRED
: u64 = 1024u64;
2417 pub const FILE_INITIATE_REPAIR_HINT1_REPAIR_DISABLED
: u64 = 128u64;
2418 pub const FILE_INITIATE_REPAIR_HINT1_SID_MISMATCH
: u64 = 4194304u64;
2419 pub const FILE_INITIATE_REPAIR_HINT1_SID_VALID
: u64 = 2097152u64;
2420 pub const FILE_INITIATE_REPAIR_HINT1_STALE_INFORMATION
: u64 = 16384u64;
2421 pub const FILE_INITIATE_REPAIR_HINT1_SYSTEM_FILE
: u64 = 16u64;
2422 pub const FILE_INITIATE_REPAIR_HINT1_UNABLE_TO_REPAIR
: u64 = 64u64;
2423 pub const FILE_INITIATE_REPAIR_HINT1_VALID_INDEX_ENTRY
: u64 = 536870912u64;
2425 pub struct FILE_INITIATE_REPAIR_OUTPUT_BUFFER
{
2431 impl ::core
::marker
::Copy
for FILE_INITIATE_REPAIR_OUTPUT_BUFFER {}
2432 impl ::core
::clone
::Clone
for FILE_INITIATE_REPAIR_OUTPUT_BUFFER
{
2433 fn clone(&self) -> Self {
2438 pub struct FILE_LAYOUT_ENTRY
{
2440 pub NextFileOffset
: u32,
2442 pub FileAttributes
: u32,
2443 pub FileReferenceNumber
: u64,
2444 pub FirstNameOffset
: u32,
2445 pub FirstStreamOffset
: u32,
2446 pub ExtraInfoOffset
: u32,
2447 pub ExtraInfoLength
: u32,
2449 impl ::core
::marker
::Copy
for FILE_LAYOUT_ENTRY {}
2450 impl ::core
::clone
::Clone
for FILE_LAYOUT_ENTRY
{
2451 fn clone(&self) -> Self {
2456 pub struct FILE_LAYOUT_INFO_ENTRY
{
2457 pub BasicInformation
: FILE_LAYOUT_INFO_ENTRY_0
,
2459 pub SecurityId
: u32,
2461 pub StorageReserveId
: STORAGE_RESERVE_ID
,
2463 impl ::core
::marker
::Copy
for FILE_LAYOUT_INFO_ENTRY {}
2464 impl ::core
::clone
::Clone
for FILE_LAYOUT_INFO_ENTRY
{
2465 fn clone(&self) -> Self {
2470 pub struct FILE_LAYOUT_INFO_ENTRY_0
{
2471 pub CreationTime
: i64,
2472 pub LastAccessTime
: i64,
2473 pub LastWriteTime
: i64,
2474 pub ChangeTime
: i64,
2475 pub FileAttributes
: u32,
2477 impl ::core
::marker
::Copy
for FILE_LAYOUT_INFO_ENTRY_0 {}
2478 impl ::core
::clone
::Clone
for FILE_LAYOUT_INFO_ENTRY_0
{
2479 fn clone(&self) -> Self {
2484 pub struct FILE_LAYOUT_NAME_ENTRY
{
2485 pub NextNameOffset
: u32,
2487 pub ParentFileReferenceNumber
: u64,
2488 pub FileNameLength
: u32,
2490 pub FileName
: [u16; 1],
2492 impl ::core
::marker
::Copy
for FILE_LAYOUT_NAME_ENTRY {}
2493 impl ::core
::clone
::Clone
for FILE_LAYOUT_NAME_ENTRY
{
2494 fn clone(&self) -> Self {
2498 pub const FILE_LAYOUT_NAME_ENTRY_DOS
: u32 = 2u32;
2499 pub const FILE_LAYOUT_NAME_ENTRY_PRIMARY
: u32 = 1u32;
2501 pub struct FILE_LEVEL_TRIM
{
2504 pub Ranges
: [FILE_LEVEL_TRIM_RANGE
; 1],
2506 impl ::core
::marker
::Copy
for FILE_LEVEL_TRIM {}
2507 impl ::core
::clone
::Clone
for FILE_LEVEL_TRIM
{
2508 fn clone(&self) -> Self {
2513 pub struct FILE_LEVEL_TRIM_OUTPUT
{
2514 pub NumRangesProcessed
: u32,
2516 impl ::core
::marker
::Copy
for FILE_LEVEL_TRIM_OUTPUT {}
2517 impl ::core
::clone
::Clone
for FILE_LEVEL_TRIM_OUTPUT
{
2518 fn clone(&self) -> Self {
2523 pub struct FILE_LEVEL_TRIM_RANGE
{
2527 impl ::core
::marker
::Copy
for FILE_LEVEL_TRIM_RANGE {}
2528 impl ::core
::clone
::Clone
for FILE_LEVEL_TRIM_RANGE
{
2529 fn clone(&self) -> Self {
2534 #[cfg(feature = "Win32_Foundation")]
2535 pub struct FILE_MAKE_COMPATIBLE_BUFFER
{
2536 pub CloseDisc
: super::super::Foundation
::BOOLEAN
,
2538 #[cfg(feature = "Win32_Foundation")]
2539 impl ::core
::marker
::Copy
for FILE_MAKE_COMPATIBLE_BUFFER {}
2540 #[cfg(feature = "Win32_Foundation")]
2541 impl ::core
::clone
::Clone
for FILE_MAKE_COMPATIBLE_BUFFER
{
2542 fn clone(&self) -> Self {
2547 pub struct FILE_OBJECTID_BUFFER
{
2548 pub ObjectId
: [u8; 16],
2549 pub Anonymous
: FILE_OBJECTID_BUFFER_0
,
2551 impl ::core
::marker
::Copy
for FILE_OBJECTID_BUFFER {}
2552 impl ::core
::clone
::Clone
for FILE_OBJECTID_BUFFER
{
2553 fn clone(&self) -> Self {
2558 pub union FILE_OBJECTID_BUFFER_0
{
2559 pub Anonymous
: FILE_OBJECTID_BUFFER_0_0
,
2560 pub ExtendedInfo
: [u8; 48],
2562 impl ::core
::marker
::Copy
for FILE_OBJECTID_BUFFER_0 {}
2563 impl ::core
::clone
::Clone
for FILE_OBJECTID_BUFFER_0
{
2564 fn clone(&self) -> Self {
2569 pub struct FILE_OBJECTID_BUFFER_0_0
{
2570 pub BirthVolumeId
: [u8; 16],
2571 pub BirthObjectId
: [u8; 16],
2572 pub DomainId
: [u8; 16],
2574 impl ::core
::marker
::Copy
for FILE_OBJECTID_BUFFER_0_0 {}
2575 impl ::core
::clone
::Clone
for FILE_OBJECTID_BUFFER_0_0
{
2576 fn clone(&self) -> Self {
2581 pub struct FILE_PREFETCH
{
2584 pub Prefetch
: [u64; 1],
2586 impl ::core
::marker
::Copy
for FILE_PREFETCH {}
2587 impl ::core
::clone
::Clone
for FILE_PREFETCH
{
2588 fn clone(&self) -> Self {
2593 pub struct FILE_PREFETCH_EX
{
2596 pub Context
: *mut ::core
::ffi
::c_void
,
2597 pub Prefetch
: [u64; 1],
2599 impl ::core
::marker
::Copy
for FILE_PREFETCH_EX {}
2600 impl ::core
::clone
::Clone
for FILE_PREFETCH_EX
{
2601 fn clone(&self) -> Self {
2605 pub const FILE_PREFETCH_TYPE_FOR_CREATE
: u32 = 1u32;
2606 pub const FILE_PREFETCH_TYPE_FOR_CREATE_EX
: u32 = 3u32;
2607 pub const FILE_PREFETCH_TYPE_FOR_DIRENUM
: u32 = 2u32;
2608 pub const FILE_PREFETCH_TYPE_FOR_DIRENUM_EX
: u32 = 4u32;
2609 pub const FILE_PREFETCH_TYPE_MAX
: u32 = 4u32;
2610 pub const FILE_PROVIDER_COMPRESSION_MAXIMUM
: u32 = 4u32;
2611 pub const FILE_PROVIDER_CURRENT_VERSION
: u32 = 1u32;
2613 pub struct FILE_PROVIDER_EXTERNAL_INFO_V0
{
2617 impl ::core
::marker
::Copy
for FILE_PROVIDER_EXTERNAL_INFO_V0 {}
2618 impl ::core
::clone
::Clone
for FILE_PROVIDER_EXTERNAL_INFO_V0
{
2619 fn clone(&self) -> Self {
2624 pub struct FILE_PROVIDER_EXTERNAL_INFO_V1
{
2629 impl ::core
::marker
::Copy
for FILE_PROVIDER_EXTERNAL_INFO_V1 {}
2630 impl ::core
::clone
::Clone
for FILE_PROVIDER_EXTERNAL_INFO_V1
{
2631 fn clone(&self) -> Self {
2635 pub const FILE_PROVIDER_FLAG_COMPRESS_ON_WRITE
: u32 = 1u32;
2636 pub const FILE_PROVIDER_SINGLE_FILE
: u32 = 1u32;
2638 pub struct FILE_QUERY_ON_DISK_VOL_INFO_BUFFER
{
2639 pub DirectoryCount
: i64,
2641 pub FsFormatMajVersion
: u16,
2642 pub FsFormatMinVersion
: u16,
2643 pub FsFormatName
: [u16; 12],
2644 pub FormatTime
: i64,
2645 pub LastUpdateTime
: i64,
2646 pub CopyrightInfo
: [u16; 34],
2647 pub AbstractInfo
: [u16; 34],
2648 pub FormattingImplementationInfo
: [u16; 34],
2649 pub LastModifyingImplementationInfo
: [u16; 34],
2651 impl ::core
::marker
::Copy
for FILE_QUERY_ON_DISK_VOL_INFO_BUFFER {}
2652 impl ::core
::clone
::Clone
for FILE_QUERY_ON_DISK_VOL_INFO_BUFFER
{
2653 fn clone(&self) -> Self {
2658 #[cfg(feature = "Win32_Foundation")]
2659 pub struct FILE_QUERY_SPARING_BUFFER
{
2660 pub SparingUnitBytes
: u32,
2661 pub SoftwareSparing
: super::super::Foundation
::BOOLEAN
,
2662 pub TotalSpareBlocks
: u32,
2663 pub FreeSpareBlocks
: u32,
2665 #[cfg(feature = "Win32_Foundation")]
2666 impl ::core
::marker
::Copy
for FILE_QUERY_SPARING_BUFFER {}
2667 #[cfg(feature = "Win32_Foundation")]
2668 impl ::core
::clone
::Clone
for FILE_QUERY_SPARING_BUFFER
{
2669 fn clone(&self) -> Self {
2673 pub const FILE_READ_ACCESS
: u32 = 1u32;
2675 pub struct FILE_REFERENCE_RANGE
{
2676 pub StartingFileReferenceNumber
: u64,
2677 pub EndingFileReferenceNumber
: u64,
2679 impl ::core
::marker
::Copy
for FILE_REFERENCE_RANGE {}
2680 impl ::core
::clone
::Clone
for FILE_REFERENCE_RANGE
{
2681 fn clone(&self) -> Self {
2686 pub struct FILE_REGION_INFO
{
2687 pub FileOffset
: i64,
2692 impl ::core
::marker
::Copy
for FILE_REGION_INFO {}
2693 impl ::core
::clone
::Clone
for FILE_REGION_INFO
{
2694 fn clone(&self) -> Self {
2699 pub struct FILE_REGION_INPUT
{
2700 pub FileOffset
: i64,
2702 pub DesiredUsage
: u32,
2704 impl ::core
::marker
::Copy
for FILE_REGION_INPUT {}
2705 impl ::core
::clone
::Clone
for FILE_REGION_INPUT
{
2706 fn clone(&self) -> Self {
2711 pub struct FILE_REGION_OUTPUT
{
2713 pub TotalRegionEntryCount
: u32,
2714 pub RegionEntryCount
: u32,
2716 pub Region
: [FILE_REGION_INFO
; 1],
2718 impl ::core
::marker
::Copy
for FILE_REGION_OUTPUT {}
2719 impl ::core
::clone
::Clone
for FILE_REGION_OUTPUT
{
2720 fn clone(&self) -> Self {
2724 pub const FILE_REGION_USAGE_HUGE_PAGE_ALIGNMENT
: u32 = 16u32;
2725 pub const FILE_REGION_USAGE_LARGE_PAGE_ALIGNMENT
: u32 = 8u32;
2726 pub const FILE_REGION_USAGE_OTHER_PAGE_ALIGNMENT
: u32 = 4u32;
2727 pub const FILE_REGION_USAGE_QUERY_ALIGNMENT
: u32 = 8u32;
2728 pub const FILE_REGION_USAGE_VALID_CACHED_DATA
: u32 = 1u32;
2729 pub const FILE_REGION_USAGE_VALID_NONCACHED_DATA
: u32 = 2u32;
2731 #[cfg(feature = "Win32_Foundation")]
2732 pub struct FILE_SET_DEFECT_MGMT_BUFFER
{
2733 pub Disable
: super::super::Foundation
::BOOLEAN
,
2735 #[cfg(feature = "Win32_Foundation")]
2736 impl ::core
::marker
::Copy
for FILE_SET_DEFECT_MGMT_BUFFER {}
2737 #[cfg(feature = "Win32_Foundation")]
2738 impl ::core
::clone
::Clone
for FILE_SET_DEFECT_MGMT_BUFFER
{
2739 fn clone(&self) -> Self {
2743 pub const FILE_SET_ENCRYPTION
: u32 = 1u32;
2745 #[cfg(feature = "Win32_Foundation")]
2746 pub struct FILE_SET_SPARSE_BUFFER
{
2747 pub SetSparse
: super::super::Foundation
::BOOLEAN
,
2749 #[cfg(feature = "Win32_Foundation")]
2750 impl ::core
::marker
::Copy
for FILE_SET_SPARSE_BUFFER {}
2751 #[cfg(feature = "Win32_Foundation")]
2752 impl ::core
::clone
::Clone
for FILE_SET_SPARSE_BUFFER
{
2753 fn clone(&self) -> Self {
2757 pub const FILE_SPECIAL_ACCESS
: u32 = 0u32;
2759 pub struct FILE_STORAGE_TIER
{
2760 pub Id
: ::windows_sys
::core
::GUID
,
2761 pub Name
: [u16; 256],
2762 pub Description
: [u16; 256],
2763 pub Flags
: FILE_STORAGE_TIER_FLAGS
,
2764 pub ProvisionedCapacity
: u64,
2765 pub MediaType
: FILE_STORAGE_TIER_MEDIA_TYPE
,
2766 pub Class
: FILE_STORAGE_TIER_CLASS
,
2768 impl ::core
::marker
::Copy
for FILE_STORAGE_TIER {}
2769 impl ::core
::clone
::Clone
for FILE_STORAGE_TIER
{
2770 fn clone(&self) -> Self {
2774 pub type FILE_STORAGE_TIER_CLASS
= i32;
2775 pub const FileStorageTierClassUnspecified
: FILE_STORAGE_TIER_CLASS
= 0i32;
2776 pub const FileStorageTierClassCapacity
: FILE_STORAGE_TIER_CLASS
= 1i32;
2777 pub const FileStorageTierClassPerformance
: FILE_STORAGE_TIER_CLASS
= 2i32;
2778 pub const FileStorageTierClassMax
: FILE_STORAGE_TIER_CLASS
= 3i32;
2779 pub const FILE_STORAGE_TIER_DESCRIPTION_LENGTH
: u32 = 512u32;
2780 pub type FILE_STORAGE_TIER_FLAGS
= u32;
2781 pub const FILE_STORAGE_TIER_FLAG_NO_SEEK_PENALTY
: FILE_STORAGE_TIER_FLAGS
= 131072u32;
2782 pub const FILE_STORAGE_TIER_FLAG_PARITY
: u32 = 8388608u32;
2783 pub const FILE_STORAGE_TIER_FLAG_READ_CACHE
: u32 = 4194304u32;
2784 pub const FILE_STORAGE_TIER_FLAG_SMR
: u32 = 16777216u32;
2785 pub const FILE_STORAGE_TIER_FLAG_WRITE_BACK_CACHE
: u32 = 2097152u32;
2786 pub type FILE_STORAGE_TIER_MEDIA_TYPE
= i32;
2787 pub const FileStorageTierMediaTypeUnspecified
: FILE_STORAGE_TIER_MEDIA_TYPE
= 0i32;
2788 pub const FileStorageTierMediaTypeDisk
: FILE_STORAGE_TIER_MEDIA_TYPE
= 1i32;
2789 pub const FileStorageTierMediaTypeSsd
: FILE_STORAGE_TIER_MEDIA_TYPE
= 2i32;
2790 pub const FileStorageTierMediaTypeScm
: FILE_STORAGE_TIER_MEDIA_TYPE
= 4i32;
2791 pub const FileStorageTierMediaTypeMax
: FILE_STORAGE_TIER_MEDIA_TYPE
= 5i32;
2792 pub const FILE_STORAGE_TIER_NAME_LENGTH
: u32 = 256u32;
2794 pub struct FILE_STORAGE_TIER_REGION
{
2795 pub TierId
: ::windows_sys
::core
::GUID
,
2799 impl ::core
::marker
::Copy
for FILE_STORAGE_TIER_REGION {}
2800 impl ::core
::clone
::Clone
for FILE_STORAGE_TIER_REGION
{
2801 fn clone(&self) -> Self {
2806 #[cfg(feature = "Win32_Foundation")]
2807 pub struct FILE_SYSTEM_RECOGNITION_INFORMATION
{
2808 pub FileSystem
: [super::super::Foundation
::CHAR
; 9],
2810 #[cfg(feature = "Win32_Foundation")]
2811 impl ::core
::marker
::Copy
for FILE_SYSTEM_RECOGNITION_INFORMATION {}
2812 #[cfg(feature = "Win32_Foundation")]
2813 impl ::core
::clone
::Clone
for FILE_SYSTEM_RECOGNITION_INFORMATION
{
2814 fn clone(&self) -> Self {
2818 pub const FILE_TYPE_NOTIFICATION_FLAG_USAGE_BEGIN
: u32 = 1u32;
2819 pub const FILE_TYPE_NOTIFICATION_FLAG_USAGE_END
: u32 = 2u32;
2820 pub const FILE_TYPE_NOTIFICATION_GUID_CRASHDUMP_FILE
: ::windows_sys
::core
::GUID
= ::windows_sys
::core
::GUID
{
2824 data4
: [162, 227, 251, 208, 237, 145, 9, 169],
2826 pub const FILE_TYPE_NOTIFICATION_GUID_HIBERNATION_FILE
: ::windows_sys
::core
::GUID
= ::windows_sys
::core
::GUID
{
2830 data4
: [128, 17, 91, 134, 201, 64, 231, 183],
2832 pub const FILE_TYPE_NOTIFICATION_GUID_PAGE_FILE
: ::windows_sys
::core
::GUID
= ::windows_sys
::core
::GUID { data1: 218784929, data2: 14588, data3: 19896, data4: [159, 231, 63, 67, 82, 205, 124, 92] }
;
2834 pub struct FILE_TYPE_NOTIFICATION_INPUT
{
2836 pub NumFileTypeIDs
: u32,
2837 pub FileTypeID
: [::windows_sys
::core
::GUID
; 1],
2839 impl ::core
::marker
::Copy
for FILE_TYPE_NOTIFICATION_INPUT {}
2840 impl ::core
::clone
::Clone
for FILE_TYPE_NOTIFICATION_INPUT
{
2841 fn clone(&self) -> Self {
2845 pub const FILE_WRITE_ACCESS
: u32 = 2u32;
2847 pub struct FILE_ZERO_DATA_INFORMATION
{
2848 pub FileOffset
: i64,
2849 pub BeyondFinalZero
: i64,
2851 impl ::core
::marker
::Copy
for FILE_ZERO_DATA_INFORMATION {}
2852 impl ::core
::clone
::Clone
for FILE_ZERO_DATA_INFORMATION
{
2853 fn clone(&self) -> Self {
2858 pub struct FILE_ZERO_DATA_INFORMATION_EX
{
2859 pub FileOffset
: i64,
2860 pub BeyondFinalZero
: i64,
2863 impl ::core
::marker
::Copy
for FILE_ZERO_DATA_INFORMATION_EX {}
2864 impl ::core
::clone
::Clone
for FILE_ZERO_DATA_INFORMATION_EX
{
2865 fn clone(&self) -> Self {
2869 pub const FILE_ZERO_DATA_INFORMATION_FLAG_PRESERVE_CACHED_DATA
: u32 = 1u32;
2871 #[cfg(feature = "Win32_Security")]
2872 pub struct FIND_BY_SID_DATA
{
2874 pub Sid
: super::super::Security
::SID
,
2876 #[cfg(feature = "Win32_Security")]
2877 impl ::core
::marker
::Copy
for FIND_BY_SID_DATA {}
2878 #[cfg(feature = "Win32_Security")]
2879 impl ::core
::clone
::Clone
for FIND_BY_SID_DATA
{
2880 fn clone(&self) -> Self {
2885 pub struct FIND_BY_SID_OUTPUT
{
2886 pub NextEntryOffset
: u32,
2888 pub FileNameLength
: u32,
2889 pub FileName
: [u16; 1],
2891 impl ::core
::marker
::Copy
for FIND_BY_SID_OUTPUT {}
2892 impl ::core
::clone
::Clone
for FIND_BY_SID_OUTPUT
{
2893 fn clone(&self) -> Self {
2897 pub const FLAG_USN_TRACK_MODIFIED_RANGES_ENABLE
: u32 = 1u32;
2899 pub struct FORMAT_EX_PARAMETERS
{
2900 pub MediaType
: MEDIA_TYPE
,
2901 pub StartCylinderNumber
: u32,
2902 pub EndCylinderNumber
: u32,
2903 pub StartHeadNumber
: u32,
2904 pub EndHeadNumber
: u32,
2905 pub FormatGapLength
: u16,
2906 pub SectorsPerTrack
: u16,
2907 pub SectorNumber
: [u16; 1],
2909 impl ::core
::marker
::Copy
for FORMAT_EX_PARAMETERS {}
2910 impl ::core
::clone
::Clone
for FORMAT_EX_PARAMETERS
{
2911 fn clone(&self) -> Self {
2916 pub struct FORMAT_PARAMETERS
{
2917 pub MediaType
: MEDIA_TYPE
,
2918 pub StartCylinderNumber
: u32,
2919 pub EndCylinderNumber
: u32,
2920 pub StartHeadNumber
: u32,
2921 pub EndHeadNumber
: u32,
2923 impl ::core
::marker
::Copy
for FORMAT_PARAMETERS {}
2924 impl ::core
::clone
::Clone
for FORMAT_PARAMETERS
{
2925 fn clone(&self) -> Self {
2929 pub const FSCTL_ADD_OVERLAY
: u32 = 623408u32;
2930 pub const FSCTL_ADVANCE_FILE_ID
: u32 = 590532u32;
2931 pub const FSCTL_ALLOW_EXTENDED_DASD_IO
: u32 = 589955u32;
2932 pub const FSCTL_CLEAN_VOLUME_METADATA
: u32 = 590716u32;
2933 pub const FSCTL_CORRUPTION_HANDLING
: u32 = 590432u32;
2934 pub const FSCTL_CREATE_OR_GET_OBJECT_ID
: u32 = 590016u32;
2935 pub const FSCTL_CREATE_USN_JOURNAL
: u32 = 590055u32;
2936 pub const FSCTL_CSC_INTERNAL
: u32 = 590255u32;
2937 pub const FSCTL_CSV_CONTROL
: u32 = 590548u32;
2938 pub const FSCTL_CSV_GET_VOLUME_NAME_FOR_VOLUME_MOUNT_POINT
: u32 = 590420u32;
2939 pub const FSCTL_CSV_GET_VOLUME_PATH_NAME
: u32 = 590416u32;
2940 pub const FSCTL_CSV_GET_VOLUME_PATH_NAMES_FOR_VOLUME_NAME
: u32 = 590424u32;
2941 pub const FSCTL_CSV_H_BREAKING_SYNC_TUNNEL_REQUEST
: u32 = 590564u32;
2942 pub const FSCTL_CSV_INTERNAL
: u32 = 590444u32;
2943 pub const FSCTL_CSV_MGMT_LOCK
: u32 = 590524u32;
2944 pub const FSCTL_CSV_QUERY_DOWN_LEVEL_FILE_SYSTEM_CHARACTERISTICS
: u32 = 590528u32;
2945 pub const FSCTL_CSV_QUERY_VETO_FILE_DIRECT_IO
: u32 = 590540u32;
2946 pub const FSCTL_CSV_SYNC_TUNNEL_REQUEST
: u32 = 590536u32;
2947 pub const FSCTL_CSV_TUNNEL_REQUEST
: u32 = 590404u32;
2948 pub const FSCTL_DELETE_CORRUPTED_REFS_CONTAINER
: u32 = 590836u32;
2949 pub const FSCTL_DELETE_EXTERNAL_BACKING
: u32 = 590612u32;
2950 pub const FSCTL_DELETE_OBJECT_ID
: u32 = 589984u32;
2951 pub const FSCTL_DELETE_REPARSE_POINT
: u32 = 589996u32;
2952 pub const FSCTL_DELETE_USN_JOURNAL
: u32 = 590072u32;
2953 pub const FSCTL_DFSR_SET_GHOST_HANDLE_STATE
: u32 = 590264u32;
2954 pub const FSCTL_DISABLE_LOCAL_BUFFERING
: u32 = 590520u32;
2955 pub const FSCTL_DISMOUNT_VOLUME
: u32 = 589856u32;
2956 pub const FSCTL_DUPLICATE_EXTENTS_TO_FILE
: u32 = 623428u32;
2957 pub const FSCTL_DUPLICATE_EXTENTS_TO_FILE_EX
: u32 = 623592u32;
2958 pub const FSCTL_ENABLE_PER_IO_FLAGS
: u32 = 590892u32;
2959 pub const FSCTL_ENABLE_UPGRADE
: u32 = 622800u32;
2960 pub const FSCTL_ENCRYPTION_FSCTL_IO
: u32 = 590043u32;
2961 pub const FSCTL_ENCRYPTION_KEY_CONTROL
: u32 = 590852u32;
2962 pub const FSCTL_ENUM_EXTERNAL_BACKING
: u32 = 590616u32;
2963 pub const FSCTL_ENUM_OVERLAY
: u32 = 590623u32;
2964 pub const FSCTL_ENUM_USN_DATA
: u32 = 590003u32;
2965 pub const FSCTL_EXTEND_VOLUME
: u32 = 590064u32;
2966 pub const FSCTL_FILESYSTEM_GET_STATISTICS
: u32 = 589920u32;
2967 pub const FSCTL_FILESYSTEM_GET_STATISTICS_EX
: u32 = 590732u32;
2968 pub const FSCTL_FILE_LEVEL_TRIM
: u32 = 623112u32;
2969 pub const FSCTL_FILE_PREFETCH
: u32 = 590112u32;
2970 pub const FSCTL_FILE_TYPE_NOTIFICATION
: u32 = 590340u32;
2971 pub const FSCTL_FIND_FILES_BY_SID
: u32 = 589967u32;
2972 pub const FSCTL_GET_BOOT_AREA_INFO
: u32 = 590384u32;
2973 pub const FSCTL_GET_COMPRESSION
: u32 = 589884u32;
2974 pub const FSCTL_GET_EXTERNAL_BACKING
: u32 = 590608u32;
2975 pub const FSCTL_GET_FILTER_FILE_IDENTIFIER
: u32 = 590788u32;
2976 pub const FSCTL_GET_INTEGRITY_INFORMATION
: u32 = 590460u32;
2978 pub struct FSCTL_GET_INTEGRITY_INFORMATION_BUFFER
{
2979 pub ChecksumAlgorithm
: u16,
2982 pub ChecksumChunkSizeInBytes
: u32,
2983 pub ClusterSizeInBytes
: u32,
2985 impl ::core
::marker
::Copy
for FSCTL_GET_INTEGRITY_INFORMATION_BUFFER {}
2986 impl ::core
::clone
::Clone
for FSCTL_GET_INTEGRITY_INFORMATION_BUFFER
{
2987 fn clone(&self) -> Self {
2991 pub const FSCTL_GET_NTFS_FILE_RECORD
: u32 = 589928u32;
2992 pub const FSCTL_GET_NTFS_VOLUME_DATA
: u32 = 589924u32;
2993 pub const FSCTL_GET_OBJECT_ID
: u32 = 589980u32;
2994 pub const FSCTL_GET_REFS_VOLUME_DATA
: u32 = 590552u32;
2995 pub const FSCTL_GET_REPAIR
: u32 = 590236u32;
2996 pub const FSCTL_GET_REPARSE_POINT
: u32 = 589992u32;
2997 pub const FSCTL_GET_RETRIEVAL_POINTERS
: u32 = 589939u32;
2998 pub const FSCTL_GET_RETRIEVAL_POINTERS_AND_REFCOUNT
: u32 = 590803u32;
2999 pub const FSCTL_GET_RETRIEVAL_POINTER_BASE
: u32 = 590388u32;
3000 pub const FSCTL_GET_RETRIEVAL_POINTER_COUNT
: u32 = 590891u32;
3001 pub const FSCTL_GET_VOLUME_BITMAP
: u32 = 589935u32;
3002 pub const FSCTL_GET_WOF_VERSION
: u32 = 590696u32;
3003 pub const FSCTL_GHOST_FILE_EXTENTS
: u32 = 623532u32;
3004 pub const FSCTL_HCS_ASYNC_TUNNEL_REQUEST
: u32 = 590704u32;
3005 pub const FSCTL_HCS_SYNC_NO_WRITE_TUNNEL_REQUEST
: u32 = 590776u32;
3006 pub const FSCTL_HCS_SYNC_TUNNEL_REQUEST
: u32 = 590700u32;
3007 pub const FSCTL_INITIATE_FILE_METADATA_OPTIMIZATION
: u32 = 590684u32;
3008 pub const FSCTL_INITIATE_REPAIR
: u32 = 590248u32;
3009 pub const FSCTL_INTEGRITY_FLAG_CHECKSUM_ENFORCEMENT_OFF
: u32 = 1u32;
3010 pub const FSCTL_INVALIDATE_VOLUMES
: u32 = 589908u32;
3011 pub const FSCTL_IS_CSV_FILE
: u32 = 590408u32;
3012 pub const FSCTL_IS_FILE_ON_CSV_VOLUME
: u32 = 590428u32;
3013 pub const FSCTL_IS_PATHNAME_VALID
: u32 = 589868u32;
3014 pub const FSCTL_IS_VOLUME_DIRTY
: u32 = 589944u32;
3015 pub const FSCTL_IS_VOLUME_MOUNTED
: u32 = 589864u32;
3016 pub const FSCTL_IS_VOLUME_OWNED_BYCSVFS
: u32 = 590456u32;
3017 pub const FSCTL_LOCK_VOLUME
: u32 = 589848u32;
3018 pub const FSCTL_LOOKUP_STREAM_FROM_CLUSTER
: u32 = 590332u32;
3019 pub const FSCTL_MAKE_MEDIA_COMPATIBLE
: u32 = 622896u32;
3020 pub const FSCTL_MANAGE_BYPASS_IO
: u32 = 590920u32;
3021 pub const FSCTL_MARK_AS_SYSTEM_HIVE
: u32 = 589903u32;
3022 pub const FSCTL_MARK_HANDLE
: u32 = 590076u32;
3023 pub const FSCTL_MARK_VOLUME_DIRTY
: u32 = 589872u32;
3024 pub const FSCTL_MOVE_FILE
: u32 = 589940u32;
3025 pub const FSCTL_NOTIFY_DATA_CHANGE
: u32 = 590844u32;
3026 pub const FSCTL_NOTIFY_STORAGE_SPACE_ALLOCATION
: u32 = 590748u32;
3027 pub const FSCTL_OFFLOAD_READ
: u32 = 606820u32;
3029 pub struct FSCTL_OFFLOAD_READ_INPUT
{
3032 pub TokenTimeToLive
: u32,
3034 pub FileOffset
: u64,
3035 pub CopyLength
: u64,
3037 impl ::core
::marker
::Copy
for FSCTL_OFFLOAD_READ_INPUT {}
3038 impl ::core
::clone
::Clone
for FSCTL_OFFLOAD_READ_INPUT
{
3039 fn clone(&self) -> Self {
3044 pub struct FSCTL_OFFLOAD_READ_OUTPUT
{
3047 pub TransferLength
: u64,
3048 pub Token
: [u8; 512],
3050 impl ::core
::marker
::Copy
for FSCTL_OFFLOAD_READ_OUTPUT {}
3051 impl ::core
::clone
::Clone
for FSCTL_OFFLOAD_READ_OUTPUT
{
3052 fn clone(&self) -> Self {
3056 pub const FSCTL_OFFLOAD_WRITE
: u32 = 623208u32;
3058 pub struct FSCTL_OFFLOAD_WRITE_INPUT
{
3061 pub FileOffset
: u64,
3062 pub CopyLength
: u64,
3063 pub TransferOffset
: u64,
3064 pub Token
: [u8; 512],
3066 impl ::core
::marker
::Copy
for FSCTL_OFFLOAD_WRITE_INPUT {}
3067 impl ::core
::clone
::Clone
for FSCTL_OFFLOAD_WRITE_INPUT
{
3068 fn clone(&self) -> Self {
3073 pub struct FSCTL_OFFLOAD_WRITE_OUTPUT
{
3076 pub LengthWritten
: u64,
3078 impl ::core
::marker
::Copy
for FSCTL_OFFLOAD_WRITE_OUTPUT {}
3079 impl ::core
::clone
::Clone
for FSCTL_OFFLOAD_WRITE_OUTPUT
{
3080 fn clone(&self) -> Self {
3084 pub const FSCTL_OPBATCH_ACK_CLOSE_PENDING
: u32 = 589840u32;
3085 pub const FSCTL_OPLOCK_BREAK_ACKNOWLEDGE
: u32 = 589836u32;
3086 pub const FSCTL_OPLOCK_BREAK_ACK_NO_2
: u32 = 589904u32;
3087 pub const FSCTL_OPLOCK_BREAK_NOTIFY
: u32 = 589844u32;
3088 pub const FSCTL_QUERY_ALLOCATED_RANGES
: u32 = 606415u32;
3089 pub const FSCTL_QUERY_ASYNC_DUPLICATE_EXTENTS_STATUS
: u32 = 590896u32;
3090 pub const FSCTL_QUERY_BAD_RANGES
: u32 = 590828u32;
3091 pub const FSCTL_QUERY_DEPENDENT_VOLUME
: u32 = 590320u32;
3092 pub const FSCTL_QUERY_DIRECT_ACCESS_EXTENTS
: u32 = 590747u32;
3093 pub const FSCTL_QUERY_DIRECT_IMAGE_ORIGINAL_BASE
: u32 = 590756u32;
3094 pub const FSCTL_QUERY_EXTENT_READ_CACHE_INFO
: u32 = 590711u32;
3095 pub const FSCTL_QUERY_FAT_BPB
: u32 = 589912u32;
3097 pub struct FSCTL_QUERY_FAT_BPB_BUFFER
{
3098 pub First0x24BytesOfBootSector
: [u8; 36],
3100 impl ::core
::marker
::Copy
for FSCTL_QUERY_FAT_BPB_BUFFER {}
3101 impl ::core
::clone
::Clone
for FSCTL_QUERY_FAT_BPB_BUFFER
{
3102 fn clone(&self) -> Self {
3106 pub const FSCTL_QUERY_FILE_LAYOUT
: u32 = 590455u32;
3107 pub const FSCTL_QUERY_FILE_METADATA_OPTIMIZATION
: u32 = 590688u32;
3108 pub const FSCTL_QUERY_FILE_REGIONS
: u32 = 590468u32;
3109 pub const FSCTL_QUERY_FILE_SYSTEM_RECOGNITION
: u32 = 590412u32;
3110 pub const FSCTL_QUERY_GHOSTED_FILE_EXTENTS
: u32 = 590768u32;
3111 pub const FSCTL_QUERY_ON_DISK_VOLUME_INFO
: u32 = 590140u32;
3112 pub const FSCTL_QUERY_PAGEFILE_ENCRYPTION
: u32 = 590312u32;
3113 pub const FSCTL_QUERY_PERSISTENT_VOLUME_STATE
: u32 = 590396u32;
3114 pub const FSCTL_QUERY_REFS_SMR_VOLUME_INFO
: u32 = 590812u32;
3115 pub const FSCTL_QUERY_REFS_VOLUME_COUNTER_INFO
: u32 = 590715u32;
3116 pub const FSCTL_QUERY_REGION_INFO
: u32 = 590576u32;
3118 pub struct FSCTL_QUERY_REGION_INFO_INPUT
{
3122 pub NumberOfTierIds
: u32,
3123 pub TierIds
: [::windows_sys
::core
::GUID
; 1],
3125 impl ::core
::marker
::Copy
for FSCTL_QUERY_REGION_INFO_INPUT {}
3126 impl ::core
::clone
::Clone
for FSCTL_QUERY_REGION_INFO_INPUT
{
3127 fn clone(&self) -> Self {
3132 pub struct FSCTL_QUERY_REGION_INFO_OUTPUT
{
3138 pub TotalNumberOfRegions
: u32,
3139 pub NumberOfRegionsReturned
: u32,
3140 pub Regions
: [FILE_STORAGE_TIER_REGION
; 1],
3142 impl ::core
::marker
::Copy
for FSCTL_QUERY_REGION_INFO_OUTPUT {}
3143 impl ::core
::clone
::Clone
for FSCTL_QUERY_REGION_INFO_OUTPUT
{
3144 fn clone(&self) -> Self {
3148 pub const FSCTL_QUERY_RETRIEVAL_POINTERS
: u32 = 589883u32;
3149 pub const FSCTL_QUERY_SHARED_VIRTUAL_DISK_SUPPORT
: u32 = 590592u32;
3150 pub const FSCTL_QUERY_SPARING_INFO
: u32 = 590136u32;
3151 pub const FSCTL_QUERY_STORAGE_CLASSES
: u32 = 590572u32;
3153 pub struct FSCTL_QUERY_STORAGE_CLASSES_OUTPUT
{
3156 pub Flags
: FILE_STORAGE_TIER_FLAGS
,
3157 pub TotalNumberOfTiers
: u32,
3158 pub NumberOfTiersReturned
: u32,
3159 pub Tiers
: [FILE_STORAGE_TIER
; 1],
3161 impl ::core
::marker
::Copy
for FSCTL_QUERY_STORAGE_CLASSES_OUTPUT {}
3162 impl ::core
::clone
::Clone
for FSCTL_QUERY_STORAGE_CLASSES_OUTPUT
{
3163 fn clone(&self) -> Self {
3167 pub const FSCTL_QUERY_USN_JOURNAL
: u32 = 590068u32;
3168 pub const FSCTL_QUERY_VOLUME_CONTAINER_STATE
: u32 = 590736u32;
3169 pub const FSCTL_QUERY_VOLUME_NUMA_INFO
: u32 = 590804u32;
3170 pub const FSCTL_READ_FILE_USN_DATA
: u32 = 590059u32;
3171 pub const FSCTL_READ_FROM_PLEX
: u32 = 606494u32;
3172 pub const FSCTL_READ_RAW_ENCRYPTED
: u32 = 590051u32;
3173 pub const FSCTL_READ_UNPRIVILEGED_USN_JOURNAL
: u32 = 590763u32;
3174 pub const FSCTL_READ_USN_JOURNAL
: u32 = 590011u32;
3175 pub const FSCTL_REARRANGE_FILE
: u32 = 640032u32;
3176 pub const FSCTL_RECALL_FILE
: u32 = 590103u32;
3177 pub const FSCTL_REFS_DEALLOCATE_RANGES
: u32 = 590808u32;
3178 pub const FSCTL_REFS_STREAM_SNAPSHOT_MANAGEMENT
: u32 = 590912u32;
3179 pub const FSCTL_REMOVE_OVERLAY
: u32 = 623412u32;
3180 pub const FSCTL_REPAIR_COPIES
: u32 = 639668u32;
3181 pub const FSCTL_REQUEST_BATCH_OPLOCK
: u32 = 589832u32;
3182 pub const FSCTL_REQUEST_FILTER_OPLOCK
: u32 = 589916u32;
3183 pub const FSCTL_REQUEST_OPLOCK
: u32 = 590400u32;
3184 pub const FSCTL_REQUEST_OPLOCK_LEVEL_1
: u32 = 589824u32;
3185 pub const FSCTL_REQUEST_OPLOCK_LEVEL_2
: u32 = 589828u32;
3186 pub const FSCTL_RESET_VOLUME_ALLOCATION_HINTS
: u32 = 590316u32;
3187 pub const FSCTL_RKF_INTERNAL
: u32 = 590511u32;
3188 pub const FSCTL_SCRUB_DATA
: u32 = 590512u32;
3189 pub const FSCTL_SCRUB_UNDISCOVERABLE_ID
: u32 = 590840u32;
3190 pub const FSCTL_SD_GLOBAL_CHANGE
: u32 = 590324u32;
3191 pub const FSCTL_SECURITY_ID_CHECK
: u32 = 606391u32;
3192 pub const FSCTL_SET_BOOTLOADER_ACCESSED
: u32 = 589903u32;
3193 pub const FSCTL_SET_COMPRESSION
: u32 = 639040u32;
3194 pub const FSCTL_SET_DAX_ALLOC_ALIGNMENT_HINT
: u32 = 590832u32;
3195 pub const FSCTL_SET_DEFECT_MANAGEMENT
: u32 = 622900u32;
3196 pub const FSCTL_SET_ENCRYPTION
: u32 = 590039u32;
3197 pub const FSCTL_SET_EXTERNAL_BACKING
: u32 = 590604u32;
3198 pub const FSCTL_SET_INTEGRITY_INFORMATION
: u32 = 639616u32;
3200 pub struct FSCTL_SET_INTEGRITY_INFORMATION_BUFFER
{
3201 pub ChecksumAlgorithm
: u16,
3205 impl ::core
::marker
::Copy
for FSCTL_SET_INTEGRITY_INFORMATION_BUFFER {}
3206 impl ::core
::clone
::Clone
for FSCTL_SET_INTEGRITY_INFORMATION_BUFFER
{
3207 fn clone(&self) -> Self {
3212 pub struct FSCTL_SET_INTEGRITY_INFORMATION_BUFFER_EX
{
3213 pub EnableIntegrity
: u8,
3214 pub KeepIntegrityStateUnchanged
: u8,
3218 pub Reserved2
: [u8; 7],
3220 impl ::core
::marker
::Copy
for FSCTL_SET_INTEGRITY_INFORMATION_BUFFER_EX {}
3221 impl ::core
::clone
::Clone
for FSCTL_SET_INTEGRITY_INFORMATION_BUFFER_EX
{
3222 fn clone(&self) -> Self {
3226 pub const FSCTL_SET_INTEGRITY_INFORMATION_EX
: u32 = 590720u32;
3227 pub const FSCTL_SET_LAYER_ROOT
: u32 = 590740u32;
3228 pub const FSCTL_SET_OBJECT_ID
: u32 = 589976u32;
3229 pub const FSCTL_SET_OBJECT_ID_EXTENDED
: u32 = 590012u32;
3230 pub const FSCTL_SET_PERSISTENT_VOLUME_STATE
: u32 = 590392u32;
3231 pub const FSCTL_SET_PURGE_FAILURE_MODE
: u32 = 590448u32;
3232 pub const FSCTL_SET_REFS_FILE_STRICTLY_SEQUENTIAL
: u32 = 590820u32;
3233 pub const FSCTL_SET_REFS_SMR_VOLUME_GC_PARAMETERS
: u32 = 590816u32;
3234 pub const FSCTL_SET_REPAIR
: u32 = 590232u32;
3235 pub const FSCTL_SET_REPARSE_POINT
: u32 = 589988u32;
3236 pub const FSCTL_SET_REPARSE_POINT_EX
: u32 = 590860u32;
3237 pub const FSCTL_SET_SHORT_NAME_BEHAVIOR
: u32 = 590260u32;
3238 pub const FSCTL_SET_SPARSE
: u32 = 590020u32;
3239 pub const FSCTL_SET_VOLUME_COMPRESSION_STATE
: u32 = 590144u32;
3240 pub const FSCTL_SET_ZERO_DATA
: u32 = 622792u32;
3241 pub const FSCTL_SET_ZERO_ON_DEALLOCATION
: u32 = 590228u32;
3242 pub const FSCTL_SHRINK_VOLUME
: u32 = 590256u32;
3243 pub const FSCTL_SHUFFLE_FILE
: u32 = 639808u32;
3244 pub const FSCTL_SIS_COPYFILE
: u32 = 590080u32;
3245 pub const FSCTL_SIS_LINK_FILES
: u32 = 639236u32;
3246 pub const FSCTL_SMB_SHARE_FLUSH_AND_PURGE
: u32 = 590908u32;
3247 pub const FSCTL_SPARSE_OVERALLOCATE
: u32 = 590668u32;
3248 pub const FSCTL_SSDI_STORAGE_REQUEST
: u32 = 590752u32;
3249 pub const FSCTL_START_VIRTUALIZATION_INSTANCE
: u32 = 590784u32;
3250 pub const FSCTL_START_VIRTUALIZATION_INSTANCE_EX
: u32 = 590848u32;
3251 pub const FSCTL_STORAGE_QOS_CONTROL
: u32 = 590672u32;
3252 pub const FSCTL_STREAMS_ASSOCIATE_ID
: u32 = 590792u32;
3253 pub const FSCTL_STREAMS_QUERY_ID
: u32 = 590796u32;
3254 pub const FSCTL_STREAMS_QUERY_PARAMETERS
: u32 = 590788u32;
3255 pub const FSCTL_SUSPEND_OVERLAY
: u32 = 590724u32;
3256 pub const FSCTL_SVHDX_ASYNC_TUNNEL_REQUEST
: u32 = 590692u32;
3257 pub const FSCTL_SVHDX_SET_INITIATOR_INFORMATION
: u32 = 590600u32;
3258 pub const FSCTL_SVHDX_SYNC_TUNNEL_REQUEST
: u32 = 590596u32;
3259 pub const FSCTL_TXFS_CREATE_MINIVERSION
: u32 = 622972u32;
3260 pub const FSCTL_TXFS_CREATE_SECONDARY_RM
: u32 = 622952u32;
3261 pub const FSCTL_TXFS_GET_METADATA_INFO
: u32 = 606572u32;
3262 pub const FSCTL_TXFS_GET_TRANSACTED_VERSION
: u32 = 606576u32;
3263 pub const FSCTL_TXFS_LIST_TRANSACTIONS
: u32 = 606692u32;
3264 pub const FSCTL_TXFS_LIST_TRANSACTION_LOCKED_FILES
: u32 = 606688u32;
3265 pub const FSCTL_TXFS_MODIFY_RM
: u32 = 622916u32;
3266 pub const FSCTL_TXFS_QUERY_RM_INFORMATION
: u32 = 606536u32;
3267 pub const FSCTL_TXFS_READ_BACKUP_INFORMATION
: u32 = 606560u32;
3268 pub const FSCTL_TXFS_READ_BACKUP_INFORMATION2
: u32 = 590328u32;
3269 pub const FSCTL_TXFS_ROLLFORWARD_REDO
: u32 = 622928u32;
3270 pub const FSCTL_TXFS_ROLLFORWARD_UNDO
: u32 = 622932u32;
3271 pub const FSCTL_TXFS_SAVEPOINT_INFORMATION
: u32 = 622968u32;
3272 pub const FSCTL_TXFS_SHUTDOWN_RM
: u32 = 622940u32;
3273 pub const FSCTL_TXFS_START_RM
: u32 = 622936u32;
3274 pub const FSCTL_TXFS_TRANSACTION_ACTIVE
: u32 = 606604u32;
3275 pub const FSCTL_TXFS_WRITE_BACKUP_INFORMATION
: u32 = 622948u32;
3276 pub const FSCTL_TXFS_WRITE_BACKUP_INFORMATION2
: u32 = 590336u32;
3277 pub const FSCTL_UNLOCK_VOLUME
: u32 = 589852u32;
3278 pub const FSCTL_UNMAP_SPACE
: u32 = 590772u32;
3279 pub const FSCTL_UPDATE_OVERLAY
: u32 = 623416u32;
3280 pub const FSCTL_USN_TRACK_MODIFIED_RANGES
: u32 = 590580u32;
3281 pub const FSCTL_VIRTUAL_STORAGE_PASSTHROUGH
: u32 = 590884u32;
3282 pub const FSCTL_VIRTUAL_STORAGE_QUERY_PROPERTY
: u32 = 590728u32;
3283 pub const FSCTL_VIRTUAL_STORAGE_SET_BEHAVIOR
: u32 = 590856u32;
3284 pub const FSCTL_WAIT_FOR_REPAIR
: u32 = 590240u32;
3285 pub const FSCTL_WRITE_RAW_ENCRYPTED
: u32 = 590047u32;
3286 pub const FSCTL_WRITE_USN_CLOSE_RECORD
: u32 = 590063u32;
3287 pub const FSCTL_WRITE_USN_REASON
: u32 = 590544u32;
3288 pub type FS_BPIO_INFLAGS
= i32;
3289 pub const FSBPIO_INFL_None
: FS_BPIO_INFLAGS
= 0i32;
3290 pub const FSBPIO_INFL_SKIP_STORAGE_STACK_QUERY
: FS_BPIO_INFLAGS
= 1i32;
3292 pub struct FS_BPIO_INFO
{
3293 pub ActiveBypassIoCount
: u32,
3294 pub StorageDriverNameLen
: u16,
3295 pub StorageDriverName
: [u16; 32],
3297 impl ::core
::marker
::Copy
for FS_BPIO_INFO {}
3298 impl ::core
::clone
::Clone
for FS_BPIO_INFO
{
3299 fn clone(&self) -> Self {
3304 pub struct FS_BPIO_INPUT
{
3305 pub Operation
: FS_BPIO_OPERATIONS
,
3306 pub InFlags
: FS_BPIO_INFLAGS
,
3310 impl ::core
::marker
::Copy
for FS_BPIO_INPUT {}
3311 impl ::core
::clone
::Clone
for FS_BPIO_INPUT
{
3312 fn clone(&self) -> Self {
3316 pub type FS_BPIO_OPERATIONS
= i32;
3317 pub const FS_BPIO_OP_ENABLE
: FS_BPIO_OPERATIONS
= 1i32;
3318 pub const FS_BPIO_OP_DISABLE
: FS_BPIO_OPERATIONS
= 2i32;
3319 pub const FS_BPIO_OP_QUERY
: FS_BPIO_OPERATIONS
= 3i32;
3320 pub const FS_BPIO_OP_VOLUME_STACK_PAUSE
: FS_BPIO_OPERATIONS
= 4i32;
3321 pub const FS_BPIO_OP_VOLUME_STACK_RESUME
: FS_BPIO_OPERATIONS
= 5i32;
3322 pub const FS_BPIO_OP_STREAM_PAUSE
: FS_BPIO_OPERATIONS
= 6i32;
3323 pub const FS_BPIO_OP_STREAM_RESUME
: FS_BPIO_OPERATIONS
= 7i32;
3324 pub const FS_BPIO_OP_GET_INFO
: FS_BPIO_OPERATIONS
= 8i32;
3325 pub const FS_BPIO_OP_MAX_OPERATION
: FS_BPIO_OPERATIONS
= 9i32;
3326 pub type FS_BPIO_OUTFLAGS
= i32;
3327 pub const FSBPIO_OUTFL_None
: FS_BPIO_OUTFLAGS
= 0i32;
3328 pub const FSBPIO_OUTFL_VOLUME_STACK_BYPASS_PAUSED
: FS_BPIO_OUTFLAGS
= 1i32;
3329 pub const FSBPIO_OUTFL_STREAM_BYPASS_PAUSED
: FS_BPIO_OUTFLAGS
= 2i32;
3330 pub const FSBPIO_OUTFL_FILTER_ATTACH_BLOCKED
: FS_BPIO_OUTFLAGS
= 4i32;
3331 pub const FSBPIO_OUTFL_COMPATIBLE_STORAGE_DRIVER
: FS_BPIO_OUTFLAGS
= 8i32;
3333 pub struct FS_BPIO_OUTPUT
{
3334 pub Operation
: FS_BPIO_OPERATIONS
,
3335 pub OutFlags
: FS_BPIO_OUTFLAGS
,
3338 pub Anonymous
: FS_BPIO_OUTPUT_0
,
3340 impl ::core
::marker
::Copy
for FS_BPIO_OUTPUT {}
3341 impl ::core
::clone
::Clone
for FS_BPIO_OUTPUT
{
3342 fn clone(&self) -> Self {
3347 pub union FS_BPIO_OUTPUT_0
{
3348 pub Enable
: FS_BPIO_RESULTS
,
3349 pub Query
: FS_BPIO_RESULTS
,
3350 pub VolumeStackResume
: FS_BPIO_RESULTS
,
3351 pub StreamResume
: FS_BPIO_RESULTS
,
3352 pub GetInfo
: FS_BPIO_INFO
,
3354 impl ::core
::marker
::Copy
for FS_BPIO_OUTPUT_0 {}
3355 impl ::core
::clone
::Clone
for FS_BPIO_OUTPUT_0
{
3356 fn clone(&self) -> Self {
3361 pub struct FS_BPIO_RESULTS
{
3363 pub FailingDriverNameLen
: u16,
3364 pub FailingDriverName
: [u16; 32],
3365 pub FailureReasonLen
: u16,
3366 pub FailureReason
: [u16; 128],
3368 impl ::core
::marker
::Copy
for FS_BPIO_RESULTS {}
3369 impl ::core
::clone
::Clone
for FS_BPIO_RESULTS
{
3370 fn clone(&self) -> Self {
3374 pub const FW_ISSUEID_NO_ISSUE
: u32 = 0u32;
3375 pub const FW_ISSUEID_UNKNOWN
: u32 = 4294967295u32;
3376 #[repr(C, packed(1))]
3377 pub struct GETVERSIONINPARAMS
{
3381 pub bIDEDeviceMap
: u8,
3382 pub fCapabilities
: u32,
3383 pub dwReserved
: [u32; 4],
3385 impl ::core
::marker
::Copy
for GETVERSIONINPARAMS {}
3386 impl ::core
::clone
::Clone
for GETVERSIONINPARAMS
{
3387 fn clone(&self) -> Self {
3392 pub struct GET_CHANGER_PARAMETERS
{
3394 pub NumberTransportElements
: u16,
3395 pub NumberStorageElements
: u16,
3396 pub NumberCleanerSlots
: u16,
3397 pub NumberIEElements
: u16,
3398 pub NumberDataTransferElements
: u16,
3399 pub NumberOfDoors
: u16,
3400 pub FirstSlotNumber
: u16,
3401 pub FirstDriveNumber
: u16,
3402 pub FirstTransportNumber
: u16,
3403 pub FirstIEPortNumber
: u16,
3404 pub FirstCleanerSlotAddress
: u16,
3405 pub MagazineSize
: u16,
3406 pub DriveCleanTimeout
: u32,
3407 pub Features0
: CHANGER_FEATURES
,
3408 pub Features1
: GET_CHANGER_PARAMETERS_FEATURES1
,
3409 pub MoveFromTransport
: u8,
3410 pub MoveFromSlot
: u8,
3411 pub MoveFromIePort
: u8,
3412 pub MoveFromDrive
: u8,
3413 pub ExchangeFromTransport
: u8,
3414 pub ExchangeFromSlot
: u8,
3415 pub ExchangeFromIePort
: u8,
3416 pub ExchangeFromDrive
: u8,
3417 pub LockUnlockCapabilities
: u8,
3418 pub PositionCapabilities
: u8,
3419 pub Reserved1
: [u8; 2],
3420 pub Reserved2
: [u32; 2],
3422 impl ::core
::marker
::Copy
for GET_CHANGER_PARAMETERS {}
3423 impl ::core
::clone
::Clone
for GET_CHANGER_PARAMETERS
{
3424 fn clone(&self) -> Self {
3428 pub type GET_CHANGER_PARAMETERS_FEATURES1
= u32;
3429 pub const CHANGER_CLEANER_AUTODISMOUNT
: GET_CHANGER_PARAMETERS_FEATURES1
= 2147483652u32;
3430 pub const CHANGER_CLEANER_OPS_NOT_SUPPORTED
: GET_CHANGER_PARAMETERS_FEATURES1
= 2147483712u32;
3431 pub const CHANGER_IEPORT_USER_CONTROL_CLOSE
: GET_CHANGER_PARAMETERS_FEATURES1
= 2147483904u32;
3432 pub const CHANGER_IEPORT_USER_CONTROL_OPEN
: GET_CHANGER_PARAMETERS_FEATURES1
= 2147483776u32;
3433 pub const CHANGER_MOVE_EXTENDS_IEPORT
: GET_CHANGER_PARAMETERS_FEATURES1
= 2147484160u32;
3434 pub const CHANGER_MOVE_RETRACTS_IEPORT
: GET_CHANGER_PARAMETERS_FEATURES1
= 2147484672u32;
3435 pub const CHANGER_PREDISMOUNT_ALIGN_TO_DRIVE
: GET_CHANGER_PARAMETERS_FEATURES1
= 2147483650u32;
3436 pub const CHANGER_PREDISMOUNT_ALIGN_TO_SLOT
: GET_CHANGER_PARAMETERS_FEATURES1
= 2147483649u32;
3437 pub const CHANGER_RTN_MEDIA_TO_ORIGINAL_ADDR
: GET_CHANGER_PARAMETERS_FEATURES1
= 2147483680u32;
3438 pub const CHANGER_SLOTS_USE_TRAYS
: GET_CHANGER_PARAMETERS_FEATURES1
= 2147483664u32;
3439 pub const CHANGER_TRUE_EXCHANGE_CAPABLE
: GET_CHANGER_PARAMETERS_FEATURES1
= 2147483656u32;
3441 pub struct GET_DEVICE_INTERNAL_STATUS_DATA_REQUEST
{
3444 pub RequestDataType
: DEVICE_INTERNAL_STATUS_DATA_REQUEST_TYPE
,
3445 pub RequestDataSet
: DEVICE_INTERNAL_STATUS_DATA_SET
,
3447 impl ::core
::marker
::Copy
for GET_DEVICE_INTERNAL_STATUS_DATA_REQUEST {}
3448 impl ::core
::clone
::Clone
for GET_DEVICE_INTERNAL_STATUS_DATA_REQUEST
{
3449 fn clone(&self) -> Self {
3454 pub struct GET_DISK_ATTRIBUTES
{
3457 pub Attributes
: u64,
3459 impl ::core
::marker
::Copy
for GET_DISK_ATTRIBUTES {}
3460 impl ::core
::clone
::Clone
for GET_DISK_ATTRIBUTES
{
3461 fn clone(&self) -> Self {
3466 pub struct GET_FILTER_FILE_IDENTIFIER_INPUT
{
3467 pub AltitudeLength
: u16,
3468 pub Altitude
: [u16; 1],
3470 impl ::core
::marker
::Copy
for GET_FILTER_FILE_IDENTIFIER_INPUT {}
3471 impl ::core
::clone
::Clone
for GET_FILTER_FILE_IDENTIFIER_INPUT
{
3472 fn clone(&self) -> Self {
3477 pub struct GET_FILTER_FILE_IDENTIFIER_OUTPUT
{
3478 pub FilterFileIdentifierLength
: u16,
3479 pub FilterFileIdentifier
: [u8; 1],
3481 impl ::core
::marker
::Copy
for GET_FILTER_FILE_IDENTIFIER_OUTPUT {}
3482 impl ::core
::clone
::Clone
for GET_FILTER_FILE_IDENTIFIER_OUTPUT
{
3483 fn clone(&self) -> Self {
3488 pub struct GET_LENGTH_INFORMATION
{
3491 impl ::core
::marker
::Copy
for GET_LENGTH_INFORMATION {}
3492 impl ::core
::clone
::Clone
for GET_LENGTH_INFORMATION
{
3493 fn clone(&self) -> Self {
3498 #[cfg(feature = "Win32_Storage_FileSystem")]
3499 pub struct GET_MEDIA_TYPES
{
3500 pub DeviceType
: u32,
3501 pub MediaInfoCount
: u32,
3502 pub MediaInfo
: [DEVICE_MEDIA_INFO
; 1],
3504 #[cfg(feature = "Win32_Storage_FileSystem")]
3505 impl ::core
::marker
::Copy
for GET_MEDIA_TYPES {}
3506 #[cfg(feature = "Win32_Storage_FileSystem")]
3507 impl ::core
::clone
::Clone
for GET_MEDIA_TYPES
{
3508 fn clone(&self) -> Self {
3512 pub const GET_VOLUME_BITMAP_FLAG_MASK_METADATA
: u32 = 1u32;
3513 pub type GPT_ATTRIBUTES
= u64;
3514 pub const GPT_ATTRIBUTE_PLATFORM_REQUIRED
: GPT_ATTRIBUTES
= 1u64;
3515 pub const GPT_BASIC_DATA_ATTRIBUTE_NO_DRIVE_LETTER
: GPT_ATTRIBUTES
= 9223372036854775808u64;
3516 pub const GPT_BASIC_DATA_ATTRIBUTE_HIDDEN
: GPT_ATTRIBUTES
= 4611686018427387904u64;
3517 pub const GPT_BASIC_DATA_ATTRIBUTE_SHADOW_COPY
: GPT_ATTRIBUTES
= 2305843009213693952u64;
3518 pub const GPT_BASIC_DATA_ATTRIBUTE_READ_ONLY
: GPT_ATTRIBUTES
= 1152921504606846976u64;
3519 pub const GPT_ATTRIBUTE_LEGACY_BIOS_BOOTABLE
: u64 = 4u64;
3520 pub const GPT_ATTRIBUTE_NO_BLOCK_IO_PROTOCOL
: u64 = 2u64;
3521 pub const GPT_BASIC_DATA_ATTRIBUTE_DAX
: u64 = 288230376151711744u64;
3522 pub const GPT_BASIC_DATA_ATTRIBUTE_OFFLINE
: u64 = 576460752303423488u64;
3523 pub const GPT_BASIC_DATA_ATTRIBUTE_SERVICE
: u64 = 144115188075855872u64;
3524 pub const GPT_SPACES_ATTRIBUTE_NO_METADATA
: u64 = 9223372036854775808u64;
3525 #[repr(C, packed(1))]
3526 pub struct GP_LOG_PAGE_DESCRIPTOR
{
3527 pub LogAddress
: u16,
3528 pub LogSectors
: u16,
3530 impl ::core
::marker
::Copy
for GP_LOG_PAGE_DESCRIPTOR {}
3531 impl ::core
::clone
::Clone
for GP_LOG_PAGE_DESCRIPTOR
{
3532 fn clone(&self) -> Self {
3536 pub const GUID_DEVICEDUMP_DRIVER_STORAGE_PORT
: ::windows_sys
::core
::GUID
= ::windows_sys
::core
::GUID { data1: 3665970205, data2: 28994, data3: 19393, data4: [184, 68, 8, 7, 197, 164, 182, 127] }
;
3537 pub const GUID_DEVICEDUMP_STORAGE_DEVICE
: ::windows_sys
::core
::GUID
= ::windows_sys
::core
::GUID { data1: 3638712623, data2: 6827, data3: 19798, data4: [167, 70, 31, 117, 133, 223, 64, 244] }
;
3538 pub const GUID_DEVINTERFACE_CDCHANGER
: ::windows_sys
::core
::GUID
= ::windows_sys
::core
::GUID { data1: 1408590610, data2: 46783, data3: 4560, data4: [148, 242, 0, 160, 201, 30, 251, 139] }
;
3539 pub const GUID_DEVINTERFACE_CDROM
: ::windows_sys
::core
::GUID
= ::windows_sys
::core
::GUID { data1: 1408590600, data2: 46783, data3: 4560, data4: [148, 242, 0, 160, 201, 30, 251, 139] }
;
3540 pub const GUID_DEVINTERFACE_COMPORT
: ::windows_sys
::core
::GUID
= ::windows_sys
::core
::GUID { data1: 2262880736, data2: 32905, data3: 4560, data4: [156, 228, 8, 0, 62, 48, 31, 115] }
;
3541 pub const GUID_DEVINTERFACE_DISK
: ::windows_sys
::core
::GUID
= ::windows_sys
::core
::GUID { data1: 1408590599, data2: 46783, data3: 4560, data4: [148, 242, 0, 160, 201, 30, 251, 139] }
;
3542 pub const GUID_DEVINTERFACE_FLOPPY
: ::windows_sys
::core
::GUID
= ::windows_sys
::core
::GUID { data1: 1408590609, data2: 46783, data3: 4560, data4: [148, 242, 0, 160, 201, 30, 251, 139] }
;
3543 pub const GUID_DEVINTERFACE_HIDDEN_VOLUME
: ::windows_sys
::core
::GUID
= ::windows_sys
::core
::GUID
{
3547 data4
: [183, 128, 44, 107, 95, 165, 192, 98],
3549 pub const GUID_DEVINTERFACE_MEDIUMCHANGER
: ::windows_sys
::core
::GUID
= ::windows_sys
::core
::GUID { data1: 1408590608, data2: 46783, data3: 4560, data4: [148, 242, 0, 160, 201, 30, 251, 139] }
;
3550 pub const GUID_DEVINTERFACE_PARTITION
: ::windows_sys
::core
::GUID
= ::windows_sys
::core
::GUID { data1: 1408590602, data2: 46783, data3: 4560, data4: [148, 242, 0, 160, 201, 30, 251, 139] }
;
3551 pub const GUID_DEVINTERFACE_SCM_PHYSICAL_DEVICE
: ::windows_sys
::core
::GUID
= ::windows_sys
::core
::GUID { data1: 1115906205, data2: 19906, data3: 17342, data4: [187, 180, 79, 21, 223, 206, 44, 97] }
;
3552 pub const GUID_DEVINTERFACE_SERENUM_BUS_ENUMERATOR
: ::windows_sys
::core
::GUID
= ::windows_sys
::core
::GUID { data1: 1295444344, data2: 58149, data3: 4558, data4: [191, 193, 8, 0, 43, 225, 3, 24] }
;
3553 pub const GUID_DEVINTERFACE_SERVICE_VOLUME
: ::windows_sys
::core
::GUID
= ::windows_sys
::core
::GUID
{
3557 data4
: [183, 253, 193, 240, 223, 143, 80, 55],
3559 pub const GUID_DEVINTERFACE_SES
: ::windows_sys
::core
::GUID
= ::windows_sys
::core
::GUID { data1: 395364844, data2: 18389, data3: 19955, data4: [181, 175, 154, 223, 60, 242, 62, 72] }
;
3560 pub const GUID_DEVINTERFACE_STORAGEPORT
: ::windows_sys
::core
::GUID
= ::windows_sys
::core
::GUID { data1: 718077536, data2: 49456, data3: 4562, data4: [176, 130, 0, 160, 201, 30, 251, 139] }
;
3561 pub const GUID_DEVINTERFACE_TAPE
: ::windows_sys
::core
::GUID
= ::windows_sys
::core
::GUID { data1: 1408590603, data2: 46783, data3: 4560, data4: [148, 242, 0, 160, 201, 30, 251, 139] }
;
3562 pub const GUID_DEVINTERFACE_UNIFIED_ACCESS_RPMB
: ::windows_sys
::core
::GUID
= ::windows_sys
::core
::GUID { data1: 658799649, data2: 48323, data3: 19719, data4: [160, 91, 163, 57, 91, 180, 238, 231] }
;
3563 pub const GUID_DEVINTERFACE_VMLUN
: ::windows_sys
::core
::GUID
= ::windows_sys
::core
::GUID { data1: 1866556953, data2: 40745, data3: 17061, data4: [178, 11, 55, 226, 25, 202, 2, 176] }
;
3564 pub const GUID_DEVINTERFACE_VOLUME
: ::windows_sys
::core
::GUID
= ::windows_sys
::core
::GUID { data1: 1408590605, data2: 46783, data3: 4560, data4: [148, 242, 0, 160, 201, 30, 251, 139] }
;
3565 pub const GUID_DEVINTERFACE_WRITEONCEDISK
: ::windows_sys
::core
::GUID
= ::windows_sys
::core
::GUID { data1: 1408590604, data2: 46783, data3: 4560, data4: [148, 242, 0, 160, 201, 30, 251, 139] }
;
3566 pub const GUID_DEVINTERFACE_ZNSDISK
: ::windows_sys
::core
::GUID
= ::windows_sys
::core
::GUID { data1: 3094954437, data2: 65499, data3: 17351, data4: [182, 177, 32, 182, 50, 240, 177, 9] }
;
3567 pub const GUID_SCM_PD_HEALTH_NOTIFICATION
: ::windows_sys
::core
::GUID
= ::windows_sys
::core
::GUID { data1: 2644693894, data2: 29429, data3: 20195, data4: [129, 85, 236, 160, 103, 142, 59, 6] }
;
3568 pub const GUID_SCM_PD_PASSTHROUGH_INVDIMM
: ::windows_sys
::core
::GUID
= ::windows_sys
::core
::GUID { data1: 1124707376, data2: 3345, data3: 4580, data4: [145, 145, 8, 0, 32, 12, 154, 102] }
;
3570 pub struct HISTOGRAM_BUCKET
{
3574 impl ::core
::marker
::Copy
for HISTOGRAM_BUCKET {}
3575 impl ::core
::clone
::Clone
for HISTOGRAM_BUCKET
{
3576 fn clone(&self) -> Self {
3580 pub const HIST_NO_OF_BUCKETS
: u32 = 24u32;
3581 pub const IDENTIFY_BUFFER_SIZE
: u32 = 512u32;
3583 pub struct IDEREGS
{
3584 pub bFeaturesReg
: u8,
3585 pub bSectorCountReg
: u8,
3586 pub bSectorNumberReg
: u8,
3588 pub bCylHighReg
: u8,
3589 pub bDriveHeadReg
: u8,
3590 pub bCommandReg
: u8,
3593 impl ::core
::marker
::Copy
for IDEREGS {}
3594 impl ::core
::clone
::Clone
for IDEREGS
{
3595 fn clone(&self) -> Self {
3599 pub const ID_CMD
: u32 = 236u32;
3600 pub const IOCTL_CHANGER_BASE
: u32 = 48u32;
3601 pub const IOCTL_CHANGER_EXCHANGE_MEDIUM
: u32 = 3162144u32;
3602 pub const IOCTL_CHANGER_GET_ELEMENT_STATUS
: u32 = 3194900u32;
3603 pub const IOCTL_CHANGER_GET_PARAMETERS
: u32 = 3162112u32;
3604 pub const IOCTL_CHANGER_GET_PRODUCT_DATA
: u32 = 3162120u32;
3605 pub const IOCTL_CHANGER_GET_STATUS
: u32 = 3162116u32;
3606 pub const IOCTL_CHANGER_INITIALIZE_ELEMENT_STATUS
: u32 = 3162136u32;
3607 pub const IOCTL_CHANGER_MOVE_MEDIUM
: u32 = 3162148u32;
3608 pub const IOCTL_CHANGER_QUERY_VOLUME_TAGS
: u32 = 3194924u32;
3609 pub const IOCTL_CHANGER_REINITIALIZE_TRANSPORT
: u32 = 3162152u32;
3610 pub const IOCTL_CHANGER_SET_ACCESS
: u32 = 3194896u32;
3611 pub const IOCTL_CHANGER_SET_POSITION
: u32 = 3162140u32;
3612 pub const IOCTL_DISK_BASE
: u32 = 7u32;
3613 pub const IOCTL_DISK_CHECK_VERIFY
: u32 = 477184u32;
3614 pub const IOCTL_DISK_CONTROLLER_NUMBER
: u32 = 458820u32;
3615 pub const IOCTL_DISK_CREATE_DISK
: u32 = 507992u32;
3616 pub const IOCTL_DISK_DELETE_DRIVE_LAYOUT
: u32 = 508160u32;
3617 pub const IOCTL_DISK_EJECT_MEDIA
: u32 = 477192u32;
3618 pub const IOCTL_DISK_FIND_NEW_DEVICES
: u32 = 477208u32;
3619 pub const IOCTL_DISK_FORMAT_DRIVE
: u32 = 508876u32;
3620 pub const IOCTL_DISK_FORMAT_TRACKS
: u32 = 507928u32;
3621 pub const IOCTL_DISK_FORMAT_TRACKS_EX
: u32 = 507948u32;
3622 pub const IOCTL_DISK_GET_CACHE_INFORMATION
: u32 = 475348u32;
3623 pub const IOCTL_DISK_GET_DISK_ATTRIBUTES
: u32 = 458992u32;
3624 pub const IOCTL_DISK_GET_DRIVE_GEOMETRY
: u32 = 458752u32;
3625 pub const IOCTL_DISK_GET_DRIVE_GEOMETRY_EX
: u32 = 458912u32;
3626 pub const IOCTL_DISK_GET_DRIVE_LAYOUT
: u32 = 475148u32;
3627 pub const IOCTL_DISK_GET_DRIVE_LAYOUT_EX
: u32 = 458832u32;
3628 pub const IOCTL_DISK_GET_LENGTH_INFO
: u32 = 475228u32;
3629 pub const IOCTL_DISK_GET_MEDIA_TYPES
: u32 = 461824u32;
3630 pub const IOCTL_DISK_GET_PARTITION_INFO
: u32 = 475140u32;
3631 pub const IOCTL_DISK_GET_PARTITION_INFO_EX
: u32 = 458824u32;
3632 pub const IOCTL_DISK_GET_WRITE_CACHE_STATE
: u32 = 475356u32;
3633 pub const IOCTL_DISK_GROW_PARTITION
: u32 = 508112u32;
3634 pub const IOCTL_DISK_HISTOGRAM_DATA
: u32 = 458804u32;
3635 pub const IOCTL_DISK_HISTOGRAM_RESET
: u32 = 458808u32;
3636 pub const IOCTL_DISK_HISTOGRAM_STRUCTURE
: u32 = 458800u32;
3637 pub const IOCTL_DISK_IS_WRITABLE
: u32 = 458788u32;
3638 pub const IOCTL_DISK_LOAD_MEDIA
: u32 = 477196u32;
3639 pub const IOCTL_DISK_LOGGING
: u32 = 458792u32;
3640 pub const IOCTL_DISK_MEDIA_REMOVAL
: u32 = 477188u32;
3641 pub const IOCTL_DISK_PERFORMANCE
: u32 = 458784u32;
3642 pub const IOCTL_DISK_PERFORMANCE_OFF
: u32 = 458848u32;
3643 pub const IOCTL_DISK_REASSIGN_BLOCKS
: u32 = 507932u32;
3644 pub const IOCTL_DISK_REASSIGN_BLOCKS_EX
: u32 = 508068u32;
3645 pub const IOCTL_DISK_RELEASE
: u32 = 477204u32;
3646 pub const IOCTL_DISK_REQUEST_DATA
: u32 = 458816u32;
3647 pub const IOCTL_DISK_REQUEST_STRUCTURE
: u32 = 458812u32;
3648 pub const IOCTL_DISK_RESERVE
: u32 = 477200u32;
3649 pub const IOCTL_DISK_RESET_SNAPSHOT_INFO
: u32 = 508432u32;
3650 pub const IOCTL_DISK_SENSE_DEVICE
: u32 = 459744u32;
3651 pub const IOCTL_DISK_SET_CACHE_INFORMATION
: u32 = 508120u32;
3652 pub const IOCTL_DISK_SET_DISK_ATTRIBUTES
: u32 = 508148u32;
3653 pub const IOCTL_DISK_SET_DRIVE_LAYOUT
: u32 = 507920u32;
3654 pub const IOCTL_DISK_SET_DRIVE_LAYOUT_EX
: u32 = 507988u32;
3655 pub const IOCTL_DISK_SET_PARTITION_INFO
: u32 = 507912u32;
3656 pub const IOCTL_DISK_SET_PARTITION_INFO_EX
: u32 = 507980u32;
3657 pub const IOCTL_DISK_UPDATE_DRIVE_SIZE
: u32 = 508104u32;
3658 pub const IOCTL_DISK_UPDATE_PROPERTIES
: u32 = 459072u32;
3659 pub const IOCTL_DISK_VERIFY
: u32 = 458772u32;
3660 pub const IOCTL_SCMBUS_BASE
: u32 = 89u32;
3661 pub const IOCTL_SCMBUS_DEVICE_FUNCTION_BASE
: u32 = 0u32;
3662 pub const IOCTL_SCM_BUS_GET_LOGICAL_DEVICES
: u32 = 5832704u32;
3663 pub const IOCTL_SCM_BUS_GET_PHYSICAL_DEVICES
: u32 = 5832708u32;
3664 pub const IOCTL_SCM_BUS_GET_REGIONS
: u32 = 5832712u32;
3665 pub const IOCTL_SCM_BUS_QUERY_PROPERTY
: u32 = 5832716u32;
3666 pub const IOCTL_SCM_BUS_RUNTIME_FW_ACTIVATE
: u32 = 5865488u32;
3667 pub const IOCTL_SCM_BUS_SET_PROPERTY
: u32 = 5865492u32;
3668 pub const IOCTL_SCM_LD_GET_INTERLEAVE_SET
: u32 = 5835776u32;
3669 pub const IOCTL_SCM_LOGICAL_DEVICE_FUNCTION_BASE
: u32 = 768u32;
3670 pub const IOCTL_SCM_PD_FIRMWARE_ACTIVATE
: u32 = 5871624u32;
3671 pub const IOCTL_SCM_PD_FIRMWARE_DOWNLOAD
: u32 = 5871620u32;
3672 pub const IOCTL_SCM_PD_PASSTHROUGH
: u32 = 5888012u32;
3673 pub const IOCTL_SCM_PD_QUERY_PROPERTY
: u32 = 5838848u32;
3674 pub const IOCTL_SCM_PD_REINITIALIZE_MEDIA
: u32 = 5871636u32;
3675 pub const IOCTL_SCM_PD_SET_PROPERTY
: u32 = 5871640u32;
3676 pub const IOCTL_SCM_PD_UPDATE_MANAGEMENT_STATUS
: u32 = 5838864u32;
3677 pub const IOCTL_SCM_PHYSICAL_DEVICE_FUNCTION_BASE
: u32 = 1536u32;
3678 pub const IOCTL_SERENUM_EXPOSE_HARDWARE
: u32 = 3604992u32;
3679 pub const IOCTL_SERENUM_GET_PORT_NAME
: u32 = 3605004u32;
3680 pub const IOCTL_SERENUM_PORT_DESC
: u32 = 3605000u32;
3681 pub const IOCTL_SERENUM_REMOVE_HARDWARE
: u32 = 3604996u32;
3682 pub const IOCTL_SERIAL_LSRMST_INSERT
: u32 = 1769596u32;
3683 pub const IOCTL_STORAGE_ALLOCATE_BC_STREAM
: u32 = 3004420u32;
3684 pub const IOCTL_STORAGE_ATTRIBUTE_MANAGEMENT
: u32 = 3005596u32;
3685 pub const IOCTL_STORAGE_BASE
: u32 = 45u32;
3686 pub const IOCTL_STORAGE_BC_VERSION
: u32 = 1u32;
3687 pub const IOCTL_STORAGE_BREAK_RESERVATION
: u32 = 2969620u32;
3688 pub const IOCTL_STORAGE_CHECK_PRIORITY_HINT_SUPPORT
: u32 = 2955392u32;
3689 pub const IOCTL_STORAGE_CHECK_VERIFY
: u32 = 2967552u32;
3690 pub const IOCTL_STORAGE_CHECK_VERIFY2
: u32 = 2951168u32;
3691 pub const IOCTL_STORAGE_DEVICE_POWER_CAP
: u32 = 2956436u32;
3692 pub const IOCTL_STORAGE_DEVICE_TELEMETRY_NOTIFY
: u32 = 3002820u32;
3693 pub const IOCTL_STORAGE_DEVICE_TELEMETRY_QUERY_CAPS
: u32 = 3002824u32;
3694 pub const IOCTL_STORAGE_DIAGNOSTIC
: u32 = 2956448u32;
3695 pub const IOCTL_STORAGE_EJECTION_CONTROL
: u32 = 2951488u32;
3696 pub const IOCTL_STORAGE_EJECT_MEDIA
: u32 = 2967560u32;
3697 pub const IOCTL_STORAGE_ENABLE_IDLE_POWER
: u32 = 2956416u32;
3698 pub const IOCTL_STORAGE_EVENT_NOTIFICATION
: u32 = 2956432u32;
3699 pub const IOCTL_STORAGE_FAILURE_PREDICTION_CONFIG
: u32 = 2953476u32;
3700 pub const IOCTL_STORAGE_FIND_NEW_DEVICES
: u32 = 2967576u32;
3701 pub const IOCTL_STORAGE_FIRMWARE_ACTIVATE
: u32 = 3005448u32;
3702 pub const IOCTL_STORAGE_FIRMWARE_DOWNLOAD
: u32 = 3005444u32;
3703 pub const IOCTL_STORAGE_FIRMWARE_GET_INFO
: u32 = 2956288u32;
3704 pub const IOCTL_STORAGE_FREE_BC_STREAM
: u32 = 3004424u32;
3705 pub const IOCTL_STORAGE_GET_BC_PROPERTIES
: u32 = 2971648u32;
3706 pub const IOCTL_STORAGE_GET_COUNTERS
: u32 = 2953480u32;
3707 pub const IOCTL_STORAGE_GET_DEVICE_INTERNAL_LOG
: u32 = 2956484u32;
3708 pub const IOCTL_STORAGE_GET_DEVICE_NUMBER
: u32 = 2953344u32;
3709 pub const IOCTL_STORAGE_GET_DEVICE_NUMBER_EX
: u32 = 2953348u32;
3710 pub const IOCTL_STORAGE_GET_DEVICE_TELEMETRY
: u32 = 3002816u32;
3711 pub const IOCTL_STORAGE_GET_DEVICE_TELEMETRY_RAW
: u32 = 3002828u32;
3712 pub const IOCTL_STORAGE_GET_HOTPLUG_INFO
: u32 = 2952212u32;
3713 pub const IOCTL_STORAGE_GET_IDLE_POWERUP_REASON
: u32 = 2956420u32;
3714 pub const IOCTL_STORAGE_GET_LB_PROVISIONING_MAP_RESOURCES
: u32 = 2970632u32;
3715 pub const IOCTL_STORAGE_GET_MEDIA_SERIAL_NUMBER
: u32 = 2952208u32;
3716 pub const IOCTL_STORAGE_GET_MEDIA_TYPES
: u32 = 2952192u32;
3717 pub const IOCTL_STORAGE_GET_MEDIA_TYPES_EX
: u32 = 2952196u32;
3718 pub const IOCTL_STORAGE_GET_PHYSICAL_ELEMENT_STATUS
: u32 = 2956452u32;
3719 pub const IOCTL_STORAGE_LOAD_MEDIA
: u32 = 2967564u32;
3720 pub const IOCTL_STORAGE_LOAD_MEDIA2
: u32 = 2951180u32;
3721 pub const IOCTL_STORAGE_MANAGE_BYPASS_IO
: u32 = 2951360u32;
3722 pub const IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES
: u32 = 2987012u32;
3723 pub const IOCTL_STORAGE_MCN_CONTROL
: u32 = 2951492u32;
3724 pub const IOCTL_STORAGE_MEDIA_REMOVAL
: u32 = 2967556u32;
3725 pub const IOCTL_STORAGE_PERSISTENT_RESERVE_IN
: u32 = 2969624u32;
3726 pub const IOCTL_STORAGE_PERSISTENT_RESERVE_OUT
: u32 = 3002396u32;
3727 pub const IOCTL_STORAGE_POWER_ACTIVE
: u32 = 2956424u32;
3728 pub const IOCTL_STORAGE_POWER_IDLE
: u32 = 2956428u32;
3729 pub const IOCTL_STORAGE_PREDICT_FAILURE
: u32 = 2953472u32;
3730 pub const IOCTL_STORAGE_PROTOCOL_COMMAND
: u32 = 3003328u32;
3731 pub const IOCTL_STORAGE_QUERY_PROPERTY
: u32 = 2954240u32;
3732 pub const IOCTL_STORAGE_READ_CAPACITY
: u32 = 2969920u32;
3733 pub const IOCTL_STORAGE_REINITIALIZE_MEDIA
: u32 = 2987584u32;
3734 pub const IOCTL_STORAGE_RELEASE
: u32 = 2967572u32;
3735 pub const IOCTL_STORAGE_REMOVE_ELEMENT_AND_TRUNCATE
: u32 = 2956480u32;
3736 pub const IOCTL_STORAGE_RESERVE
: u32 = 2967568u32;
3737 pub const IOCTL_STORAGE_RESET_BUS
: u32 = 2969600u32;
3738 pub const IOCTL_STORAGE_RESET_DEVICE
: u32 = 2969604u32;
3739 pub const IOCTL_STORAGE_RPMB_COMMAND
: u32 = 2956440u32;
3740 pub const IOCTL_STORAGE_SET_HOTPLUG_INFO
: u32 = 3001368u32;
3741 pub const IOCTL_STORAGE_SET_PROPERTY
: u32 = 2987004u32;
3742 pub const IOCTL_STORAGE_SET_TEMPERATURE_THRESHOLD
: u32 = 3002880u32;
3743 pub const IOCTL_STORAGE_START_DATA_INTEGRITY_CHECK
: u32 = 3004548u32;
3744 pub const IOCTL_STORAGE_STOP_DATA_INTEGRITY_CHECK
: u32 = 3004552u32;
3746 pub struct IO_IRP_EXT_TRACK_OFFSET_HEADER
{
3747 pub Validation
: u16,
3749 pub TrackedOffsetCallback
: PIO_IRP_EXT_PROCESS_TRACKED_OFFSET_CALLBACK
,
3751 impl ::core
::marker
::Copy
for IO_IRP_EXT_TRACK_OFFSET_HEADER {}
3752 impl ::core
::clone
::Clone
for IO_IRP_EXT_TRACK_OFFSET_HEADER
{
3753 fn clone(&self) -> Self {
3757 pub const LOCK_ELEMENT
: u32 = 0u32;
3758 pub const LOCK_UNLOCK_DOOR
: u32 = 2u32;
3759 pub const LOCK_UNLOCK_IEPORT
: u32 = 1u32;
3760 pub const LOCK_UNLOCK_KEYPAD
: u32 = 4u32;
3762 pub struct LOOKUP_STREAM_FROM_CLUSTER_ENTRY
{
3763 pub OffsetToNext
: u32,
3767 pub FileName
: [u16; 1],
3769 impl ::core
::marker
::Copy
for LOOKUP_STREAM_FROM_CLUSTER_ENTRY {}
3770 impl ::core
::clone
::Clone
for LOOKUP_STREAM_FROM_CLUSTER_ENTRY
{
3771 fn clone(&self) -> Self {
3775 pub const LOOKUP_STREAM_FROM_CLUSTER_ENTRY_ATTRIBUTE_DATA
: u32 = 16777216u32;
3776 pub const LOOKUP_STREAM_FROM_CLUSTER_ENTRY_ATTRIBUTE_INDEX
: u32 = 33554432u32;
3777 pub const LOOKUP_STREAM_FROM_CLUSTER_ENTRY_ATTRIBUTE_MASK
: u32 = 4278190080u32;
3778 pub const LOOKUP_STREAM_FROM_CLUSTER_ENTRY_ATTRIBUTE_SYSTEM
: u32 = 50331648u32;
3779 pub const LOOKUP_STREAM_FROM_CLUSTER_ENTRY_FLAG_DENY_DEFRAG_SET
: u32 = 2u32;
3780 pub const LOOKUP_STREAM_FROM_CLUSTER_ENTRY_FLAG_FS_SYSTEM_FILE
: u32 = 4u32;
3781 pub const LOOKUP_STREAM_FROM_CLUSTER_ENTRY_FLAG_PAGE_FILE
: u32 = 1u32;
3782 pub const LOOKUP_STREAM_FROM_CLUSTER_ENTRY_FLAG_TXF_SYSTEM_FILE
: u32 = 8u32;
3784 pub struct LOOKUP_STREAM_FROM_CLUSTER_INPUT
{
3786 pub NumberOfClusters
: u32,
3787 pub Cluster
: [i64; 1],
3789 impl ::core
::marker
::Copy
for LOOKUP_STREAM_FROM_CLUSTER_INPUT {}
3790 impl ::core
::clone
::Clone
for LOOKUP_STREAM_FROM_CLUSTER_INPUT
{
3791 fn clone(&self) -> Self {
3796 pub struct LOOKUP_STREAM_FROM_CLUSTER_OUTPUT
{
3798 pub NumberOfMatches
: u32,
3799 pub BufferSizeRequired
: u32,
3801 impl ::core
::marker
::Copy
for LOOKUP_STREAM_FROM_CLUSTER_OUTPUT {}
3802 impl ::core
::clone
::Clone
for LOOKUP_STREAM_FROM_CLUSTER_OUTPUT
{
3803 fn clone(&self) -> Self {
3807 pub const MARK_HANDLE_CLOUD_SYNC
: u32 = 2048u32;
3808 pub const MARK_HANDLE_DISABLE_FILE_METADATA_OPTIMIZATION
: u32 = 4096u32;
3809 pub const MARK_HANDLE_ENABLE_CPU_CACHE
: u32 = 268435456u32;
3810 pub const MARK_HANDLE_ENABLE_USN_SOURCE_ON_PAGING_IO
: u32 = 8192u32;
3811 pub const MARK_HANDLE_FILTER_METADATA
: u32 = 512u32;
3813 #[cfg(feature = "Win32_Foundation")]
3814 pub struct MARK_HANDLE_INFO
{
3815 pub Anonymous
: MARK_HANDLE_INFO_0
,
3816 pub VolumeHandle
: super::super::Foundation
::HANDLE
,
3817 pub HandleInfo
: u32,
3819 #[cfg(feature = "Win32_Foundation")]
3820 impl ::core
::marker
::Copy
for MARK_HANDLE_INFO {}
3821 #[cfg(feature = "Win32_Foundation")]
3822 impl ::core
::clone
::Clone
for MARK_HANDLE_INFO
{
3823 fn clone(&self) -> Self {
3828 #[cfg(feature = "Win32_Foundation")]
3829 pub union MARK_HANDLE_INFO_0
{
3830 pub UsnSourceInfo
: u32,
3831 pub CopyNumber
: u32,
3833 #[cfg(feature = "Win32_Foundation")]
3834 impl ::core
::marker
::Copy
for MARK_HANDLE_INFO_0 {}
3835 #[cfg(feature = "Win32_Foundation")]
3836 impl ::core
::clone
::Clone
for MARK_HANDLE_INFO_0
{
3837 fn clone(&self) -> Self {
3842 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))]
3843 pub struct MARK_HANDLE_INFO32
{
3844 pub Anonymous
: MARK_HANDLE_INFO32_0
,
3845 pub VolumeHandle
: u32,
3846 pub HandleInfo
: u32,
3848 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))]
3849 impl ::core
::marker
::Copy
for MARK_HANDLE_INFO32 {}
3850 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))]
3851 impl ::core
::clone
::Clone
for MARK_HANDLE_INFO32
{
3852 fn clone(&self) -> Self {
3857 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))]
3858 pub union MARK_HANDLE_INFO32_0
{
3859 pub UsnSourceInfo
: u32,
3860 pub CopyNumber
: u32,
3862 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))]
3863 impl ::core
::marker
::Copy
for MARK_HANDLE_INFO32_0 {}
3864 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))]
3865 impl ::core
::clone
::Clone
for MARK_HANDLE_INFO32_0
{
3866 fn clone(&self) -> Self {
3870 pub const MARK_HANDLE_NOT_READ_COPY
: u32 = 256u32;
3871 pub const MARK_HANDLE_NOT_REALTIME
: u32 = 64u32;
3872 pub const MARK_HANDLE_NOT_TXF_SYSTEM_LOG
: u32 = 8u32;
3873 pub const MARK_HANDLE_PROTECT_CLUSTERS
: u32 = 1u32;
3874 pub const MARK_HANDLE_READ_COPY
: u32 = 128u32;
3875 pub const MARK_HANDLE_REALTIME
: u32 = 32u32;
3876 pub const MARK_HANDLE_RETURN_PURGE_FAILURE
: u32 = 1024u32;
3877 pub const MARK_HANDLE_SKIP_COHERENCY_SYNC_DISALLOW_WRITES
: u32 = 16384u32;
3878 pub const MARK_HANDLE_SUPPRESS_VOLUME_OPEN_FLUSH
: u32 = 32768u32;
3879 pub const MARK_HANDLE_TXF_SYSTEM_LOG
: u32 = 4u32;
3880 pub const MAXIMUM_ENCRYPTION_VALUE
: u32 = 4u32;
3881 pub const MAX_FW_BUCKET_ID_LENGTH
: u32 = 132u32;
3882 pub const MAX_INTERFACE_CODES
: u32 = 8u32;
3883 pub const MAX_VOLUME_ID_SIZE
: u32 = 36u32;
3884 pub const MAX_VOLUME_TEMPLATE_SIZE
: u32 = 40u32;
3885 pub const MEDIA_CURRENTLY_MOUNTED
: u32 = 2147483648u32;
3886 pub const MEDIA_ERASEABLE
: u32 = 1u32;
3887 pub const MEDIA_READ_ONLY
: u32 = 4u32;
3888 pub const MEDIA_READ_WRITE
: u32 = 8u32;
3889 pub type MEDIA_TYPE
= i32;
3890 pub const Unknown
: MEDIA_TYPE
= 0i32;
3891 pub const F5_1Pt2_512
: MEDIA_TYPE
= 1i32;
3892 pub const F3_1Pt44_512
: MEDIA_TYPE
= 2i32;
3893 pub const F3_2Pt88_512
: MEDIA_TYPE
= 3i32;
3894 pub const F3_20Pt8_512
: MEDIA_TYPE
= 4i32;
3895 pub const F3_720_512
: MEDIA_TYPE
= 5i32;
3896 pub const F5_360_512
: MEDIA_TYPE
= 6i32;
3897 pub const F5_320_512
: MEDIA_TYPE
= 7i32;
3898 pub const F5_320_1024
: MEDIA_TYPE
= 8i32;
3899 pub const F5_180_512
: MEDIA_TYPE
= 9i32;
3900 pub const F5_160_512
: MEDIA_TYPE
= 10i32;
3901 pub const RemovableMedia
: MEDIA_TYPE
= 11i32;
3902 pub const FixedMedia
: MEDIA_TYPE
= 12i32;
3903 pub const F3_120M_512
: MEDIA_TYPE
= 13i32;
3904 pub const F3_640_512
: MEDIA_TYPE
= 14i32;
3905 pub const F5_640_512
: MEDIA_TYPE
= 15i32;
3906 pub const F5_720_512
: MEDIA_TYPE
= 16i32;
3907 pub const F3_1Pt2_512
: MEDIA_TYPE
= 17i32;
3908 pub const F3_1Pt23_1024
: MEDIA_TYPE
= 18i32;
3909 pub const F5_1Pt23_1024
: MEDIA_TYPE
= 19i32;
3910 pub const F3_128Mb_512
: MEDIA_TYPE
= 20i32;
3911 pub const F3_230Mb_512
: MEDIA_TYPE
= 21i32;
3912 pub const F8_256_128
: MEDIA_TYPE
= 22i32;
3913 pub const F3_200Mb_512
: MEDIA_TYPE
= 23i32;
3914 pub const F3_240M_512
: MEDIA_TYPE
= 24i32;
3915 pub const F3_32M_512
: MEDIA_TYPE
= 25i32;
3916 pub const MEDIA_WRITE_ONCE
: u32 = 2u32;
3917 pub const MEDIA_WRITE_PROTECTED
: u32 = 256u32;
3918 pub const METHOD_BUFFERED
: u32 = 0u32;
3919 pub const METHOD_DIRECT_FROM_HARDWARE
: u32 = 2u32;
3920 pub const METHOD_DIRECT_TO_HARDWARE
: u32 = 1u32;
3921 pub const METHOD_IN_DIRECT
: u32 = 1u32;
3922 pub const METHOD_NEITHER
: u32 = 3u32;
3923 pub const METHOD_OUT_DIRECT
: u32 = 2u32;
3925 pub struct MFT_ENUM_DATA_V0
{
3926 pub StartFileReferenceNumber
: u64,
3930 impl ::core
::marker
::Copy
for MFT_ENUM_DATA_V0 {}
3931 impl ::core
::clone
::Clone
for MFT_ENUM_DATA_V0
{
3932 fn clone(&self) -> Self {
3937 pub struct MFT_ENUM_DATA_V1
{
3938 pub StartFileReferenceNumber
: u64,
3941 pub MinMajorVersion
: u16,
3942 pub MaxMajorVersion
: u16,
3944 impl ::core
::marker
::Copy
for MFT_ENUM_DATA_V1 {}
3945 impl ::core
::clone
::Clone
for MFT_ENUM_DATA_V1
{
3946 fn clone(&self) -> Self {
3951 #[cfg(feature = "Win32_Foundation")]
3952 pub struct MOVE_FILE_DATA
{
3953 pub FileHandle
: super::super::Foundation
::HANDLE
,
3954 pub StartingVcn
: i64,
3955 pub StartingLcn
: i64,
3956 pub ClusterCount
: u32,
3958 #[cfg(feature = "Win32_Foundation")]
3959 impl ::core
::marker
::Copy
for MOVE_FILE_DATA {}
3960 #[cfg(feature = "Win32_Foundation")]
3961 impl ::core
::clone
::Clone
for MOVE_FILE_DATA
{
3962 fn clone(&self) -> Self {
3967 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))]
3968 pub struct MOVE_FILE_DATA32
{
3969 pub FileHandle
: u32,
3970 pub StartingVcn
: i64,
3971 pub StartingLcn
: i64,
3972 pub ClusterCount
: u32,
3974 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))]
3975 impl ::core
::marker
::Copy
for MOVE_FILE_DATA32 {}
3976 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))]
3977 impl ::core
::clone
::Clone
for MOVE_FILE_DATA32
{
3978 fn clone(&self) -> Self {
3983 #[cfg(feature = "Win32_Foundation")]
3984 pub struct MOVE_FILE_RECORD_DATA
{
3985 pub FileHandle
: super::super::Foundation
::HANDLE
,
3986 pub SourceFileRecord
: i64,
3987 pub TargetFileRecord
: i64,
3989 #[cfg(feature = "Win32_Foundation")]
3990 impl ::core
::marker
::Copy
for MOVE_FILE_RECORD_DATA {}
3991 #[cfg(feature = "Win32_Foundation")]
3992 impl ::core
::clone
::Clone
for MOVE_FILE_RECORD_DATA
{
3993 fn clone(&self) -> Self {
3998 pub struct NTFS_EXTENDED_VOLUME_DATA
{
4000 pub MajorVersion
: u16,
4001 pub MinorVersion
: u16,
4002 pub BytesPerPhysicalSector
: u32,
4003 pub LfsMajorVersion
: u16,
4004 pub LfsMinorVersion
: u16,
4005 pub MaxDeviceTrimExtentCount
: u32,
4006 pub MaxDeviceTrimByteCount
: u32,
4007 pub MaxVolumeTrimExtentCount
: u32,
4008 pub MaxVolumeTrimByteCount
: u32,
4010 impl ::core
::marker
::Copy
for NTFS_EXTENDED_VOLUME_DATA {}
4011 impl ::core
::clone
::Clone
for NTFS_EXTENDED_VOLUME_DATA
{
4012 fn clone(&self) -> Self {
4017 pub struct NTFS_FILE_RECORD_INPUT_BUFFER
{
4018 pub FileReferenceNumber
: i64,
4020 impl ::core
::marker
::Copy
for NTFS_FILE_RECORD_INPUT_BUFFER {}
4021 impl ::core
::clone
::Clone
for NTFS_FILE_RECORD_INPUT_BUFFER
{
4022 fn clone(&self) -> Self {
4027 pub struct NTFS_FILE_RECORD_OUTPUT_BUFFER
{
4028 pub FileReferenceNumber
: i64,
4029 pub FileRecordLength
: u32,
4030 pub FileRecordBuffer
: [u8; 1],
4032 impl ::core
::marker
::Copy
for NTFS_FILE_RECORD_OUTPUT_BUFFER {}
4033 impl ::core
::clone
::Clone
for NTFS_FILE_RECORD_OUTPUT_BUFFER
{
4034 fn clone(&self) -> Self {
4039 pub struct NTFS_STATISTICS
{
4040 pub LogFileFullExceptions
: u32,
4041 pub OtherExceptions
: u32,
4043 pub MftReadBytes
: u32,
4045 pub MftWriteBytes
: u32,
4046 pub MftWritesUserLevel
: NTFS_STATISTICS_4
,
4047 pub MftWritesFlushForLogFileFull
: u16,
4048 pub MftWritesLazyWriter
: u16,
4049 pub MftWritesUserRequest
: u16,
4050 pub Mft2Writes
: u32,
4051 pub Mft2WriteBytes
: u32,
4052 pub Mft2WritesUserLevel
: NTFS_STATISTICS_2
,
4053 pub Mft2WritesFlushForLogFileFull
: u16,
4054 pub Mft2WritesLazyWriter
: u16,
4055 pub Mft2WritesUserRequest
: u16,
4056 pub RootIndexReads
: u32,
4057 pub RootIndexReadBytes
: u32,
4058 pub RootIndexWrites
: u32,
4059 pub RootIndexWriteBytes
: u32,
4060 pub BitmapReads
: u32,
4061 pub BitmapReadBytes
: u32,
4062 pub BitmapWrites
: u32,
4063 pub BitmapWriteBytes
: u32,
4064 pub BitmapWritesFlushForLogFileFull
: u16,
4065 pub BitmapWritesLazyWriter
: u16,
4066 pub BitmapWritesUserRequest
: u16,
4067 pub BitmapWritesUserLevel
: NTFS_STATISTICS_1
,
4068 pub MftBitmapReads
: u32,
4069 pub MftBitmapReadBytes
: u32,
4070 pub MftBitmapWrites
: u32,
4071 pub MftBitmapWriteBytes
: u32,
4072 pub MftBitmapWritesFlushForLogFileFull
: u16,
4073 pub MftBitmapWritesLazyWriter
: u16,
4074 pub MftBitmapWritesUserRequest
: u16,
4075 pub MftBitmapWritesUserLevel
: NTFS_STATISTICS_3
,
4076 pub UserIndexReads
: u32,
4077 pub UserIndexReadBytes
: u32,
4078 pub UserIndexWrites
: u32,
4079 pub UserIndexWriteBytes
: u32,
4080 pub LogFileReads
: u32,
4081 pub LogFileReadBytes
: u32,
4082 pub LogFileWrites
: u32,
4083 pub LogFileWriteBytes
: u32,
4084 pub Allocate
: NTFS_STATISTICS_0
,
4085 pub DiskResourcesExhausted
: u32,
4087 impl ::core
::marker
::Copy
for NTFS_STATISTICS {}
4088 impl ::core
::clone
::Clone
for NTFS_STATISTICS
{
4089 fn clone(&self) -> Self {
4094 pub struct NTFS_STATISTICS_0
{
4098 pub RunsReturned
: u32,
4099 pub HintsHonored
: u32,
4100 pub HintsClusters
: u32,
4102 pub CacheClusters
: u32,
4104 pub CacheMissClusters
: u32,
4106 impl ::core
::marker
::Copy
for NTFS_STATISTICS_0 {}
4107 impl ::core
::clone
::Clone
for NTFS_STATISTICS_0
{
4108 fn clone(&self) -> Self {
4113 pub struct NTFS_STATISTICS_1
{
4118 impl ::core
::marker
::Copy
for NTFS_STATISTICS_1 {}
4119 impl ::core
::clone
::Clone
for NTFS_STATISTICS_1
{
4120 fn clone(&self) -> Self {
4125 pub struct NTFS_STATISTICS_2
{
4131 impl ::core
::marker
::Copy
for NTFS_STATISTICS_2 {}
4132 impl ::core
::clone
::Clone
for NTFS_STATISTICS_2
{
4133 fn clone(&self) -> Self {
4138 pub struct NTFS_STATISTICS_3
{
4144 impl ::core
::marker
::Copy
for NTFS_STATISTICS_3 {}
4145 impl ::core
::clone
::Clone
for NTFS_STATISTICS_3
{
4146 fn clone(&self) -> Self {
4151 pub struct NTFS_STATISTICS_4
{
4157 impl ::core
::marker
::Copy
for NTFS_STATISTICS_4 {}
4158 impl ::core
::clone
::Clone
for NTFS_STATISTICS_4
{
4159 fn clone(&self) -> Self {
4164 pub struct NTFS_STATISTICS_EX
{
4165 pub LogFileFullExceptions
: u32,
4166 pub OtherExceptions
: u32,
4168 pub MftReadBytes
: u64,
4170 pub MftWriteBytes
: u64,
4171 pub MftWritesUserLevel
: NTFS_STATISTICS_EX_4
,
4172 pub MftWritesFlushForLogFileFull
: u32,
4173 pub MftWritesLazyWriter
: u32,
4174 pub MftWritesUserRequest
: u32,
4175 pub Mft2Writes
: u64,
4176 pub Mft2WriteBytes
: u64,
4177 pub Mft2WritesUserLevel
: NTFS_STATISTICS_EX_2
,
4178 pub Mft2WritesFlushForLogFileFull
: u32,
4179 pub Mft2WritesLazyWriter
: u32,
4180 pub Mft2WritesUserRequest
: u32,
4181 pub RootIndexReads
: u64,
4182 pub RootIndexReadBytes
: u64,
4183 pub RootIndexWrites
: u64,
4184 pub RootIndexWriteBytes
: u64,
4185 pub BitmapReads
: u64,
4186 pub BitmapReadBytes
: u64,
4187 pub BitmapWrites
: u64,
4188 pub BitmapWriteBytes
: u64,
4189 pub BitmapWritesFlushForLogFileFull
: u32,
4190 pub BitmapWritesLazyWriter
: u32,
4191 pub BitmapWritesUserRequest
: u32,
4192 pub BitmapWritesUserLevel
: NTFS_STATISTICS_EX_1
,
4193 pub MftBitmapReads
: u64,
4194 pub MftBitmapReadBytes
: u64,
4195 pub MftBitmapWrites
: u64,
4196 pub MftBitmapWriteBytes
: u64,
4197 pub MftBitmapWritesFlushForLogFileFull
: u32,
4198 pub MftBitmapWritesLazyWriter
: u32,
4199 pub MftBitmapWritesUserRequest
: u32,
4200 pub MftBitmapWritesUserLevel
: NTFS_STATISTICS_EX_3
,
4201 pub UserIndexReads
: u64,
4202 pub UserIndexReadBytes
: u64,
4203 pub UserIndexWrites
: u64,
4204 pub UserIndexWriteBytes
: u64,
4205 pub LogFileReads
: u64,
4206 pub LogFileReadBytes
: u64,
4207 pub LogFileWrites
: u64,
4208 pub LogFileWriteBytes
: u64,
4209 pub Allocate
: NTFS_STATISTICS_EX_0
,
4210 pub DiskResourcesExhausted
: u32,
4211 pub VolumeTrimCount
: u64,
4212 pub VolumeTrimTime
: u64,
4213 pub VolumeTrimByteCount
: u64,
4214 pub FileLevelTrimCount
: u64,
4215 pub FileLevelTrimTime
: u64,
4216 pub FileLevelTrimByteCount
: u64,
4217 pub VolumeTrimSkippedCount
: u64,
4218 pub VolumeTrimSkippedByteCount
: u64,
4219 pub NtfsFillStatInfoFromMftRecordCalledCount
: u64,
4220 pub NtfsFillStatInfoFromMftRecordBailedBecauseOfAttributeListCount
: u64,
4221 pub NtfsFillStatInfoFromMftRecordBailedBecauseOfNonResReparsePointCount
: u64,
4223 impl ::core
::marker
::Copy
for NTFS_STATISTICS_EX {}
4224 impl ::core
::clone
::Clone
for NTFS_STATISTICS_EX
{
4225 fn clone(&self) -> Self {
4230 pub struct NTFS_STATISTICS_EX_0
{
4232 pub RunsReturned
: u32,
4234 pub HintsHonored
: u32,
4238 pub HintsClusters
: u64,
4239 pub CacheClusters
: u64,
4240 pub CacheMissClusters
: u64,
4242 impl ::core
::marker
::Copy
for NTFS_STATISTICS_EX_0 {}
4243 impl ::core
::clone
::Clone
for NTFS_STATISTICS_EX_0
{
4244 fn clone(&self) -> Self {
4249 pub struct NTFS_STATISTICS_EX_1
{
4255 impl ::core
::marker
::Copy
for NTFS_STATISTICS_EX_1 {}
4256 impl ::core
::clone
::Clone
for NTFS_STATISTICS_EX_1
{
4257 fn clone(&self) -> Self {
4262 pub struct NTFS_STATISTICS_EX_2
{
4268 impl ::core
::marker
::Copy
for NTFS_STATISTICS_EX_2 {}
4269 impl ::core
::clone
::Clone
for NTFS_STATISTICS_EX_2
{
4270 fn clone(&self) -> Self {
4275 pub struct NTFS_STATISTICS_EX_3
{
4281 impl ::core
::marker
::Copy
for NTFS_STATISTICS_EX_3 {}
4282 impl ::core
::clone
::Clone
for NTFS_STATISTICS_EX_3
{
4283 fn clone(&self) -> Self {
4288 pub struct NTFS_STATISTICS_EX_4
{
4294 impl ::core
::marker
::Copy
for NTFS_STATISTICS_EX_4 {}
4295 impl ::core
::clone
::Clone
for NTFS_STATISTICS_EX_4
{
4296 fn clone(&self) -> Self {
4301 pub struct NTFS_VOLUME_DATA_BUFFER
{
4302 pub VolumeSerialNumber
: i64,
4303 pub NumberSectors
: i64,
4304 pub TotalClusters
: i64,
4305 pub FreeClusters
: i64,
4306 pub TotalReserved
: i64,
4307 pub BytesPerSector
: u32,
4308 pub BytesPerCluster
: u32,
4309 pub BytesPerFileRecordSegment
: u32,
4310 pub ClustersPerFileRecordSegment
: u32,
4311 pub MftValidDataLength
: i64,
4312 pub MftStartLcn
: i64,
4313 pub Mft2StartLcn
: i64,
4314 pub MftZoneStart
: i64,
4315 pub MftZoneEnd
: i64,
4317 impl ::core
::marker
::Copy
for NTFS_VOLUME_DATA_BUFFER {}
4318 impl ::core
::clone
::Clone
for NTFS_VOLUME_DATA_BUFFER
{
4319 fn clone(&self) -> Self {
4323 pub const OBSOLETE_DISK_GET_WRITE_CACHE_STATE
: u32 = 475356u32;
4324 pub const OBSOLETE_IOCTL_STORAGE_RESET_BUS
: u32 = 3002368u32;
4325 pub const OBSOLETE_IOCTL_STORAGE_RESET_DEVICE
: u32 = 3002372u32;
4326 pub const OFFLOAD_READ_FLAG_ALL_ZERO_BEYOND_CURRENT_RANGE
: u32 = 1u32;
4327 pub const OPLOCK_LEVEL_CACHE_HANDLE
: u32 = 2u32;
4328 pub const OPLOCK_LEVEL_CACHE_READ
: u32 = 1u32;
4329 pub const OPLOCK_LEVEL_CACHE_WRITE
: u32 = 4u32;
4330 pub const PARTIITON_OS_DATA
: u32 = 41u32;
4331 pub const PARTITION_BSP
: u32 = 43u32;
4332 pub const PARTITION_DM
: u32 = 84u32;
4333 pub const PARTITION_DPP
: u32 = 44u32;
4334 pub const PARTITION_ENTRY_UNUSED
: u32 = 0u32;
4335 pub const PARTITION_EXTENDED
: u32 = 5u32;
4336 pub const PARTITION_EZDRIVE
: u32 = 85u32;
4337 pub const PARTITION_FAT32
: u32 = 11u32;
4338 pub const PARTITION_FAT32_XINT13
: u32 = 12u32;
4339 pub const PARTITION_FAT_12
: u32 = 1u32;
4340 pub const PARTITION_FAT_16
: u32 = 4u32;
4341 pub const PARTITION_GPT
: u32 = 238u32;
4342 pub const PARTITION_HUGE
: u32 = 6u32;
4343 pub const PARTITION_IFS
: u32 = 7u32;
4345 #[cfg(feature = "Win32_Foundation")]
4346 pub struct PARTITION_INFORMATION
{
4347 pub StartingOffset
: i64,
4348 pub PartitionLength
: i64,
4349 pub HiddenSectors
: u32,
4350 pub PartitionNumber
: u32,
4351 pub PartitionType
: u8,
4352 pub BootIndicator
: super::super::Foundation
::BOOLEAN
,
4353 pub RecognizedPartition
: super::super::Foundation
::BOOLEAN
,
4354 pub RewritePartition
: super::super::Foundation
::BOOLEAN
,
4356 #[cfg(feature = "Win32_Foundation")]
4357 impl ::core
::marker
::Copy
for PARTITION_INFORMATION {}
4358 #[cfg(feature = "Win32_Foundation")]
4359 impl ::core
::clone
::Clone
for PARTITION_INFORMATION
{
4360 fn clone(&self) -> Self {
4365 #[cfg(feature = "Win32_Foundation")]
4366 pub struct PARTITION_INFORMATION_EX
{
4367 pub PartitionStyle
: PARTITION_STYLE
,
4368 pub StartingOffset
: i64,
4369 pub PartitionLength
: i64,
4370 pub PartitionNumber
: u32,
4371 pub RewritePartition
: super::super::Foundation
::BOOLEAN
,
4372 pub IsServicePartition
: super::super::Foundation
::BOOLEAN
,
4373 pub Anonymous
: PARTITION_INFORMATION_EX_0
,
4375 #[cfg(feature = "Win32_Foundation")]
4376 impl ::core
::marker
::Copy
for PARTITION_INFORMATION_EX {}
4377 #[cfg(feature = "Win32_Foundation")]
4378 impl ::core
::clone
::Clone
for PARTITION_INFORMATION_EX
{
4379 fn clone(&self) -> Self {
4384 #[cfg(feature = "Win32_Foundation")]
4385 pub union PARTITION_INFORMATION_EX_0
{
4386 pub Mbr
: PARTITION_INFORMATION_MBR
,
4387 pub Gpt
: PARTITION_INFORMATION_GPT
,
4389 #[cfg(feature = "Win32_Foundation")]
4390 impl ::core
::marker
::Copy
for PARTITION_INFORMATION_EX_0 {}
4391 #[cfg(feature = "Win32_Foundation")]
4392 impl ::core
::clone
::Clone
for PARTITION_INFORMATION_EX_0
{
4393 fn clone(&self) -> Self {
4398 pub struct PARTITION_INFORMATION_GPT
{
4399 pub PartitionType
: ::windows_sys
::core
::GUID
,
4400 pub PartitionId
: ::windows_sys
::core
::GUID
,
4401 pub Attributes
: GPT_ATTRIBUTES
,
4402 pub Name
: [u16; 36],
4404 impl ::core
::marker
::Copy
for PARTITION_INFORMATION_GPT {}
4405 impl ::core
::clone
::Clone
for PARTITION_INFORMATION_GPT
{
4406 fn clone(&self) -> Self {
4411 #[cfg(feature = "Win32_Foundation")]
4412 pub struct PARTITION_INFORMATION_MBR
{
4413 pub PartitionType
: u8,
4414 pub BootIndicator
: super::super::Foundation
::BOOLEAN
,
4415 pub RecognizedPartition
: super::super::Foundation
::BOOLEAN
,
4416 pub HiddenSectors
: u32,
4417 pub PartitionId
: ::windows_sys
::core
::GUID
,
4419 #[cfg(feature = "Win32_Foundation")]
4420 impl ::core
::marker
::Copy
for PARTITION_INFORMATION_MBR {}
4421 #[cfg(feature = "Win32_Foundation")]
4422 impl ::core
::clone
::Clone
for PARTITION_INFORMATION_MBR
{
4423 fn clone(&self) -> Self {
4427 pub const PARTITION_LDM
: u32 = 66u32;
4428 pub const PARTITION_MAIN_OS
: u32 = 40u32;
4429 pub const PARTITION_MSFT_RECOVERY
: u32 = 39u32;
4430 pub const PARTITION_NTFT
: u32 = 128u32;
4431 pub const PARTITION_OS2BOOTMGR
: u32 = 10u32;
4432 pub const PARTITION_PREP
: u32 = 65u32;
4433 pub const PARTITION_PRE_INSTALLED
: u32 = 42u32;
4434 pub const PARTITION_SPACES
: u32 = 231u32;
4435 pub const PARTITION_SPACES_DATA
: u32 = 215u32;
4436 pub type PARTITION_STYLE
= i32;
4437 pub const PARTITION_STYLE_MBR
: PARTITION_STYLE
= 0i32;
4438 pub const PARTITION_STYLE_GPT
: PARTITION_STYLE
= 1i32;
4439 pub const PARTITION_STYLE_RAW
: PARTITION_STYLE
= 2i32;
4440 pub const PARTITION_SYSTEM
: u32 = 239u32;
4441 pub const PARTITION_UNIX
: u32 = 99u32;
4442 pub const PARTITION_WINDOWS_SYSTEM
: u32 = 45u32;
4443 pub const PARTITION_XENIX_1
: u32 = 2u32;
4444 pub const PARTITION_XENIX_2
: u32 = 3u32;
4445 pub const PARTITION_XINT13
: u32 = 14u32;
4446 pub const PARTITION_XINT13_EXTENDED
: u32 = 15u32;
4448 pub struct PATHNAME_BUFFER
{
4449 pub PathNameLength
: u32,
4452 impl ::core
::marker
::Copy
for PATHNAME_BUFFER {}
4453 impl ::core
::clone
::Clone
for PATHNAME_BUFFER
{
4454 fn clone(&self) -> Self {
4459 pub struct PERF_BIN
{
4460 pub NumberOfBins
: u32,
4462 pub BinsRanges
: [BIN_RANGE
; 1],
4464 impl ::core
::marker
::Copy
for PERF_BIN {}
4465 impl ::core
::clone
::Clone
for PERF_BIN
{
4466 fn clone(&self) -> Self {
4471 pub struct PERSISTENT_RESERVE_COMMAND
{
4474 pub Anonymous
: PERSISTENT_RESERVE_COMMAND_0
,
4476 impl ::core
::marker
::Copy
for PERSISTENT_RESERVE_COMMAND {}
4477 impl ::core
::clone
::Clone
for PERSISTENT_RESERVE_COMMAND
{
4478 fn clone(&self) -> Self {
4483 pub union PERSISTENT_RESERVE_COMMAND_0
{
4484 pub PR_IN
: PERSISTENT_RESERVE_COMMAND_0_0
,
4485 pub PR_OUT
: PERSISTENT_RESERVE_COMMAND_0_1
,
4487 impl ::core
::marker
::Copy
for PERSISTENT_RESERVE_COMMAND_0 {}
4488 impl ::core
::clone
::Clone
for PERSISTENT_RESERVE_COMMAND_0
{
4489 fn clone(&self) -> Self {
4494 pub struct PERSISTENT_RESERVE_COMMAND_0_0
{
4496 pub AllocationLength
: u16,
4498 impl ::core
::marker
::Copy
for PERSISTENT_RESERVE_COMMAND_0_0 {}
4499 impl ::core
::clone
::Clone
for PERSISTENT_RESERVE_COMMAND_0_0
{
4500 fn clone(&self) -> Self {
4505 pub struct PERSISTENT_RESERVE_COMMAND_0_1
{
4508 pub ParameterList
: [u8; 1],
4510 impl ::core
::marker
::Copy
for PERSISTENT_RESERVE_COMMAND_0_1 {}
4511 impl ::core
::clone
::Clone
for PERSISTENT_RESERVE_COMMAND_0_1
{
4512 fn clone(&self) -> Self {
4516 pub const PERSISTENT_VOLUME_STATE_BACKED_BY_WIM
: u32 = 64u32;
4517 pub const PERSISTENT_VOLUME_STATE_CHKDSK_RAN_ONCE
: u32 = 1024u32;
4518 pub const PERSISTENT_VOLUME_STATE_CONTAINS_BACKING_WIM
: u32 = 32u32;
4519 pub const PERSISTENT_VOLUME_STATE_DAX_FORMATTED
: u32 = 4096u32;
4520 pub const PERSISTENT_VOLUME_STATE_GLOBAL_METADATA_NO_SEEK_PENALTY
: u32 = 4u32;
4521 pub const PERSISTENT_VOLUME_STATE_LOCAL_METADATA_NO_SEEK_PENALTY
: u32 = 8u32;
4522 pub const PERSISTENT_VOLUME_STATE_MODIFIED_BY_CHKDSK
: u32 = 2048u32;
4523 pub const PERSISTENT_VOLUME_STATE_NO_HEAT_GATHERING
: u32 = 16u32;
4524 pub const PERSISTENT_VOLUME_STATE_NO_WRITE_AUTO_TIERING
: u32 = 128u32;
4525 pub const PERSISTENT_VOLUME_STATE_REALLOCATE_ALL_DATA_WRITES
: u32 = 512u32;
4526 pub const PERSISTENT_VOLUME_STATE_SHORT_NAME_CREATION_DISABLED
: u32 = 1u32;
4527 pub const PERSISTENT_VOLUME_STATE_TXF_DISABLED
: u32 = 256u32;
4528 pub const PERSISTENT_VOLUME_STATE_VOLUME_SCRUB_DISABLED
: u32 = 2u32;
4530 pub struct PHYSICAL_ELEMENT_STATUS
{
4533 pub DescriptorCount
: u32,
4534 pub ReturnedDescriptorCount
: u32,
4535 pub ElementIdentifierBeingDepoped
: u32,
4537 pub Descriptors
: [PHYSICAL_ELEMENT_STATUS_DESCRIPTOR
; 1],
4539 impl ::core
::marker
::Copy
for PHYSICAL_ELEMENT_STATUS {}
4540 impl ::core
::clone
::Clone
for PHYSICAL_ELEMENT_STATUS
{
4541 fn clone(&self) -> Self {
4546 pub struct PHYSICAL_ELEMENT_STATUS_DESCRIPTOR
{
4549 pub ElementIdentifier
: u32,
4550 pub PhysicalElementType
: u8,
4551 pub PhysicalElementHealth
: u8,
4552 pub Reserved1
: [u8; 2],
4553 pub AssociatedCapacity
: u64,
4554 pub Reserved2
: [u32; 4],
4556 impl ::core
::marker
::Copy
for PHYSICAL_ELEMENT_STATUS_DESCRIPTOR {}
4557 impl ::core
::clone
::Clone
for PHYSICAL_ELEMENT_STATUS_DESCRIPTOR
{
4558 fn clone(&self) -> Self {
4563 pub struct PHYSICAL_ELEMENT_STATUS_REQUEST
{
4566 pub StartingElement
: u32,
4569 pub Reserved
: [u8; 2],
4571 impl ::core
::marker
::Copy
for PHYSICAL_ELEMENT_STATUS_REQUEST {}
4572 impl ::core
::clone
::Clone
for PHYSICAL_ELEMENT_STATUS_REQUEST
{
4573 fn clone(&self) -> Self {
4577 pub type PIO_IRP_EXT_PROCESS_TRACKED_OFFSET_CALLBACK
= unsafe extern "system" fn(sourcecontext
: *const IO_IRP_EXT_TRACK_OFFSET_HEADER
, targetcontext
: *mut IO_IRP_EXT_TRACK_OFFSET_HEADER
, relativeoffset
: i64);
4579 pub struct PLEX_READ_DATA_REQUEST
{
4580 pub ByteOffset
: i64,
4581 pub ByteLength
: u32,
4582 pub PlexNumber
: u32,
4584 impl ::core
::marker
::Copy
for PLEX_READ_DATA_REQUEST {}
4585 impl ::core
::clone
::Clone
for PLEX_READ_DATA_REQUEST
{
4586 fn clone(&self) -> Self {
4591 #[cfg(feature = "Win32_Foundation")]
4592 pub struct PREVENT_MEDIA_REMOVAL
{
4593 pub PreventMediaRemoval
: super::super::Foundation
::BOOLEAN
,
4595 #[cfg(feature = "Win32_Foundation")]
4596 impl ::core
::marker
::Copy
for PREVENT_MEDIA_REMOVAL {}
4597 #[cfg(feature = "Win32_Foundation")]
4598 impl ::core
::clone
::Clone
for PREVENT_MEDIA_REMOVAL
{
4599 fn clone(&self) -> Self {
4603 pub const PRODUCT_ID_LENGTH
: u32 = 16u32;
4604 pub const PROJFS_PROTOCOL_VERSION
: u32 = 3u32;
4606 pub struct QUERY_BAD_RANGES_INPUT
{
4609 pub Ranges
: [QUERY_BAD_RANGES_INPUT_RANGE
; 1],
4611 impl ::core
::marker
::Copy
for QUERY_BAD_RANGES_INPUT {}
4612 impl ::core
::clone
::Clone
for QUERY_BAD_RANGES_INPUT
{
4613 fn clone(&self) -> Self {
4618 pub struct QUERY_BAD_RANGES_INPUT_RANGE
{
4619 pub StartOffset
: u64,
4620 pub LengthInBytes
: u64,
4622 impl ::core
::marker
::Copy
for QUERY_BAD_RANGES_INPUT_RANGE {}
4623 impl ::core
::clone
::Clone
for QUERY_BAD_RANGES_INPUT_RANGE
{
4624 fn clone(&self) -> Self {
4629 pub struct QUERY_BAD_RANGES_OUTPUT
{
4631 pub NumBadRanges
: u32,
4632 pub NextOffsetToLookUp
: u64,
4633 pub BadRanges
: [QUERY_BAD_RANGES_OUTPUT_RANGE
; 1],
4635 impl ::core
::marker
::Copy
for QUERY_BAD_RANGES_OUTPUT {}
4636 impl ::core
::clone
::Clone
for QUERY_BAD_RANGES_OUTPUT
{
4637 fn clone(&self) -> Self {
4642 pub struct QUERY_BAD_RANGES_OUTPUT_RANGE
{
4645 pub StartOffset
: u64,
4646 pub LengthInBytes
: u64,
4648 impl ::core
::marker
::Copy
for QUERY_BAD_RANGES_OUTPUT_RANGE {}
4649 impl ::core
::clone
::Clone
for QUERY_BAD_RANGES_OUTPUT_RANGE
{
4650 fn clone(&self) -> Self {
4654 pub const QUERY_DEPENDENT_VOLUME_REQUEST_FLAG_GUEST_VOLUMES
: u32 = 2u32;
4655 pub const QUERY_DEPENDENT_VOLUME_REQUEST_FLAG_HOST_VOLUMES
: u32 = 1u32;
4656 pub type QUERY_FILE_LAYOUT_FILTER_TYPE
= i32;
4657 pub const QUERY_FILE_LAYOUT_FILTER_TYPE_NONE
: QUERY_FILE_LAYOUT_FILTER_TYPE
= 0i32;
4658 pub const QUERY_FILE_LAYOUT_FILTER_TYPE_CLUSTERS
: QUERY_FILE_LAYOUT_FILTER_TYPE
= 1i32;
4659 pub const QUERY_FILE_LAYOUT_FILTER_TYPE_FILEID
: QUERY_FILE_LAYOUT_FILTER_TYPE
= 2i32;
4660 pub const QUERY_FILE_LAYOUT_FILTER_TYPE_STORAGE_RESERVE_ID
: QUERY_FILE_LAYOUT_FILTER_TYPE
= 3i32;
4661 pub const QUERY_FILE_LAYOUT_NUM_FILTER_TYPES
: QUERY_FILE_LAYOUT_FILTER_TYPE
= 4i32;
4662 pub const QUERY_FILE_LAYOUT_INCLUDE_EXTENTS
: u32 = 8u32;
4663 pub const QUERY_FILE_LAYOUT_INCLUDE_EXTRA_INFO
: u32 = 16u32;
4664 pub const QUERY_FILE_LAYOUT_INCLUDE_FILES_WITH_DSC_ATTRIBUTE
: u32 = 4096u32;
4665 pub const QUERY_FILE_LAYOUT_INCLUDE_FULL_PATH_IN_NAMES
: u32 = 64u32;
4666 pub const QUERY_FILE_LAYOUT_INCLUDE_NAMES
: u32 = 2u32;
4667 pub const QUERY_FILE_LAYOUT_INCLUDE_ONLY_FILES_WITH_SPECIFIC_ATTRIBUTES
: u32 = 2048u32;
4668 pub const QUERY_FILE_LAYOUT_INCLUDE_STREAMS
: u32 = 4u32;
4669 pub const QUERY_FILE_LAYOUT_INCLUDE_STREAMS_WITH_NO_CLUSTERS_ALLOCATED
: u32 = 32u32;
4670 pub const QUERY_FILE_LAYOUT_INCLUDE_STREAM_INFORMATION
: u32 = 128u32;
4671 pub const QUERY_FILE_LAYOUT_INCLUDE_STREAM_INFORMATION_FOR_DATA_ATTRIBUTE
: u32 = 8192u32;
4672 pub const QUERY_FILE_LAYOUT_INCLUDE_STREAM_INFORMATION_FOR_DSC_ATTRIBUTE
: u32 = 256u32;
4673 pub const QUERY_FILE_LAYOUT_INCLUDE_STREAM_INFORMATION_FOR_EA_ATTRIBUTE
: u32 = 32768u32;
4674 pub const QUERY_FILE_LAYOUT_INCLUDE_STREAM_INFORMATION_FOR_EFS_ATTRIBUTE
: u32 = 1024u32;
4675 pub const QUERY_FILE_LAYOUT_INCLUDE_STREAM_INFORMATION_FOR_REPARSE_ATTRIBUTE
: u32 = 16384u32;
4676 pub const QUERY_FILE_LAYOUT_INCLUDE_STREAM_INFORMATION_FOR_TXF_ATTRIBUTE
: u32 = 512u32;
4678 pub struct QUERY_FILE_LAYOUT_INPUT
{
4679 pub Anonymous
: QUERY_FILE_LAYOUT_INPUT_0
,
4681 pub FilterType
: QUERY_FILE_LAYOUT_FILTER_TYPE
,
4683 pub Filter
: QUERY_FILE_LAYOUT_INPUT_1
,
4685 impl ::core
::marker
::Copy
for QUERY_FILE_LAYOUT_INPUT {}
4686 impl ::core
::clone
::Clone
for QUERY_FILE_LAYOUT_INPUT
{
4687 fn clone(&self) -> Self {
4692 pub union QUERY_FILE_LAYOUT_INPUT_0
{
4693 pub FilterEntryCount
: u32,
4694 pub NumberOfPairs
: u32,
4696 impl ::core
::marker
::Copy
for QUERY_FILE_LAYOUT_INPUT_0 {}
4697 impl ::core
::clone
::Clone
for QUERY_FILE_LAYOUT_INPUT_0
{
4698 fn clone(&self) -> Self {
4703 pub union QUERY_FILE_LAYOUT_INPUT_1
{
4704 pub ClusterRanges
: [CLUSTER_RANGE
; 1],
4705 pub FileReferenceRanges
: [FILE_REFERENCE_RANGE
; 1],
4706 pub StorageReserveIds
: [STORAGE_RESERVE_ID
; 1],
4708 impl ::core
::marker
::Copy
for QUERY_FILE_LAYOUT_INPUT_1 {}
4709 impl ::core
::clone
::Clone
for QUERY_FILE_LAYOUT_INPUT_1
{
4710 fn clone(&self) -> Self {
4715 pub struct QUERY_FILE_LAYOUT_OUTPUT
{
4716 pub FileEntryCount
: u32,
4717 pub FirstFileOffset
: u32,
4721 impl ::core
::marker
::Copy
for QUERY_FILE_LAYOUT_OUTPUT {}
4722 impl ::core
::clone
::Clone
for QUERY_FILE_LAYOUT_OUTPUT
{
4723 fn clone(&self) -> Self {
4727 pub const QUERY_FILE_LAYOUT_REPARSE_DATA_INVALID
: u32 = 1u32;
4728 pub const QUERY_FILE_LAYOUT_REPARSE_TAG_INVALID
: u32 = 2u32;
4729 pub const QUERY_FILE_LAYOUT_RESTART
: u32 = 1u32;
4730 pub const QUERY_FILE_LAYOUT_SINGLE_INSTANCED
: u32 = 1u32;
4731 pub const QUERY_STORAGE_CLASSES_FLAGS_MEASURE_READ
: u32 = 1073741824u32;
4732 pub const QUERY_STORAGE_CLASSES_FLAGS_MEASURE_WRITE
: u32 = 2147483648u32;
4733 pub const QUERY_STORAGE_CLASSES_FLAGS_NO_DEFRAG_VOLUME
: u32 = 536870912u32;
4734 pub const READ_ATTRIBUTES
: u32 = 208u32;
4735 pub const READ_ATTRIBUTE_BUFFER_SIZE
: u32 = 512u32;
4736 pub const READ_COMPRESSION_INFO_VALID
: u32 = 32u32;
4737 pub const READ_COPY_NUMBER_BYPASS_CACHE_FLAG
: u32 = 256u32;
4738 pub const READ_COPY_NUMBER_KEY
: u32 = 1380142592u32;
4740 pub struct READ_ELEMENT_ADDRESS_INFO
{
4741 pub NumberOfElements
: u32,
4742 pub ElementStatus
: [CHANGER_ELEMENT_STATUS
; 1],
4744 impl ::core
::marker
::Copy
for READ_ELEMENT_ADDRESS_INFO {}
4745 impl ::core
::clone
::Clone
for READ_ELEMENT_ADDRESS_INFO
{
4746 fn clone(&self) -> Self {
4751 pub struct READ_FILE_USN_DATA
{
4752 pub MinMajorVersion
: u16,
4753 pub MaxMajorVersion
: u16,
4755 impl ::core
::marker
::Copy
for READ_FILE_USN_DATA {}
4756 impl ::core
::clone
::Clone
for READ_FILE_USN_DATA
{
4757 fn clone(&self) -> Self {
4761 pub const READ_THRESHOLDS
: u32 = 209u32;
4762 pub const READ_THRESHOLD_BUFFER_SIZE
: u32 = 512u32;
4764 pub struct READ_USN_JOURNAL_DATA_V0
{
4766 pub ReasonMask
: u32,
4767 pub ReturnOnlyOnClose
: u32,
4769 pub BytesToWaitFor
: u64,
4770 pub UsnJournalID
: u64,
4772 impl ::core
::marker
::Copy
for READ_USN_JOURNAL_DATA_V0 {}
4773 impl ::core
::clone
::Clone
for READ_USN_JOURNAL_DATA_V0
{
4774 fn clone(&self) -> Self {
4779 pub struct READ_USN_JOURNAL_DATA_V1
{
4781 pub ReasonMask
: u32,
4782 pub ReturnOnlyOnClose
: u32,
4784 pub BytesToWaitFor
: u64,
4785 pub UsnJournalID
: u64,
4786 pub MinMajorVersion
: u16,
4787 pub MaxMajorVersion
: u16,
4789 impl ::core
::marker
::Copy
for READ_USN_JOURNAL_DATA_V1 {}
4790 impl ::core
::clone
::Clone
for READ_USN_JOURNAL_DATA_V1
{
4791 fn clone(&self) -> Self {
4796 pub struct REASSIGN_BLOCKS
{
4799 pub BlockNumber
: [u32; 1],
4801 impl ::core
::marker
::Copy
for REASSIGN_BLOCKS {}
4802 impl ::core
::clone
::Clone
for REASSIGN_BLOCKS
{
4803 fn clone(&self) -> Self {
4807 #[repr(C, packed(1))]
4808 pub struct REASSIGN_BLOCKS_EX
{
4811 pub BlockNumber
: [i64; 1],
4813 impl ::core
::marker
::Copy
for REASSIGN_BLOCKS_EX {}
4814 impl ::core
::clone
::Clone
for REASSIGN_BLOCKS_EX
{
4815 fn clone(&self) -> Self {
4819 pub const RECOVERED_READS_VALID
: u32 = 4u32;
4820 pub const RECOVERED_WRITES_VALID
: u32 = 1u32;
4821 pub type REFS_SMR_VOLUME_GC_ACTION
= i32;
4822 pub const SmrGcActionStart
: REFS_SMR_VOLUME_GC_ACTION
= 1i32;
4823 pub const SmrGcActionStartFullSpeed
: REFS_SMR_VOLUME_GC_ACTION
= 2i32;
4824 pub const SmrGcActionPause
: REFS_SMR_VOLUME_GC_ACTION
= 3i32;
4825 pub const SmrGcActionStop
: REFS_SMR_VOLUME_GC_ACTION
= 4i32;
4826 pub type REFS_SMR_VOLUME_GC_METHOD
= i32;
4827 pub const SmrGcMethodCompaction
: REFS_SMR_VOLUME_GC_METHOD
= 1i32;
4828 pub const SmrGcMethodCompression
: REFS_SMR_VOLUME_GC_METHOD
= 2i32;
4829 pub const SmrGcMethodRotation
: REFS_SMR_VOLUME_GC_METHOD
= 3i32;
4831 pub struct REFS_SMR_VOLUME_GC_PARAMETERS
{
4834 pub Action
: REFS_SMR_VOLUME_GC_ACTION
,
4835 pub Method
: REFS_SMR_VOLUME_GC_METHOD
,
4836 pub IoGranularity
: u32,
4837 pub CompressionFormat
: u32,
4838 pub Unused
: [u64; 8],
4840 impl ::core
::marker
::Copy
for REFS_SMR_VOLUME_GC_PARAMETERS {}
4841 impl ::core
::clone
::Clone
for REFS_SMR_VOLUME_GC_PARAMETERS
{
4842 fn clone(&self) -> Self {
4846 pub const REFS_SMR_VOLUME_GC_PARAMETERS_VERSION_V1
: u32 = 1u32;
4847 pub type REFS_SMR_VOLUME_GC_STATE
= i32;
4848 pub const SmrGcStateInactive
: REFS_SMR_VOLUME_GC_STATE
= 0i32;
4849 pub const SmrGcStatePaused
: REFS_SMR_VOLUME_GC_STATE
= 1i32;
4850 pub const SmrGcStateActive
: REFS_SMR_VOLUME_GC_STATE
= 2i32;
4851 pub const SmrGcStateActiveFullSpeed
: REFS_SMR_VOLUME_GC_STATE
= 3i32;
4853 pub struct REFS_SMR_VOLUME_INFO_OUTPUT
{
4856 pub SizeOfRandomlyWritableTier
: i64,
4857 pub FreeSpaceInRandomlyWritableTier
: i64,
4858 pub SizeofSMRTier
: i64,
4859 pub FreeSpaceInSMRTier
: i64,
4860 pub UsableFreeSpaceInSMRTier
: i64,
4861 pub VolumeGcState
: REFS_SMR_VOLUME_GC_STATE
,
4862 pub VolumeGcLastStatus
: u32,
4863 pub CurrentGcBandFillPercentage
: u32,
4864 pub Unused
: [u64; 6],
4866 impl ::core
::marker
::Copy
for REFS_SMR_VOLUME_INFO_OUTPUT {}
4867 impl ::core
::clone
::Clone
for REFS_SMR_VOLUME_INFO_OUTPUT
{
4868 fn clone(&self) -> Self {
4872 pub const REFS_SMR_VOLUME_INFO_OUTPUT_VERSION_V0
: u32 = 0u32;
4873 pub const REFS_SMR_VOLUME_INFO_OUTPUT_VERSION_V1
: u32 = 1u32;
4875 pub struct REFS_VOLUME_DATA_BUFFER
{
4877 pub MajorVersion
: u32,
4878 pub MinorVersion
: u32,
4879 pub BytesPerPhysicalSector
: u32,
4880 pub VolumeSerialNumber
: i64,
4881 pub NumberSectors
: i64,
4882 pub TotalClusters
: i64,
4883 pub FreeClusters
: i64,
4884 pub TotalReserved
: i64,
4885 pub BytesPerSector
: u32,
4886 pub BytesPerCluster
: u32,
4887 pub MaximumSizeOfResidentFile
: i64,
4888 pub FastTierDataFillRatio
: u16,
4889 pub SlowTierDataFillRatio
: u16,
4890 pub DestagesFastTierToSlowTierRate
: u32,
4891 pub Reserved
: [i64; 9],
4893 impl ::core
::marker
::Copy
for REFS_VOLUME_DATA_BUFFER {}
4894 impl ::core
::clone
::Clone
for REFS_VOLUME_DATA_BUFFER
{
4895 fn clone(&self) -> Self {
4900 pub struct REMOVE_ELEMENT_AND_TRUNCATE_REQUEST
{
4903 pub RequestCapacity
: u64,
4904 pub ElementIdentifier
: u32,
4907 impl ::core
::marker
::Copy
for REMOVE_ELEMENT_AND_TRUNCATE_REQUEST {}
4908 impl ::core
::clone
::Clone
for REMOVE_ELEMENT_AND_TRUNCATE_REQUEST
{
4909 fn clone(&self) -> Self {
4914 pub struct REPAIR_COPIES_INPUT
{
4917 pub FileOffset
: i64,
4919 pub SourceCopy
: u32,
4920 pub NumberOfRepairCopies
: u32,
4921 pub RepairCopies
: [u32; 1],
4923 impl ::core
::marker
::Copy
for REPAIR_COPIES_INPUT {}
4924 impl ::core
::clone
::Clone
for REPAIR_COPIES_INPUT
{
4925 fn clone(&self) -> Self {
4930 pub struct REPAIR_COPIES_OUTPUT
{
4933 pub ResumeFileOffset
: i64,
4935 impl ::core
::marker
::Copy
for REPAIR_COPIES_OUTPUT {}
4936 impl ::core
::clone
::Clone
for REPAIR_COPIES_OUTPUT
{
4937 fn clone(&self) -> Self {
4941 pub const REPLACE_ALTERNATE
: u32 = 11u32;
4942 pub const REPLACE_PRIMARY
: u32 = 10u32;
4943 pub const REQUEST_OPLOCK_CURRENT_VERSION
: u32 = 1u32;
4945 pub struct REQUEST_OPLOCK_INPUT_BUFFER
{
4946 pub StructureVersion
: u16,
4947 pub StructureLength
: u16,
4948 pub RequestedOplockLevel
: u32,
4951 impl ::core
::marker
::Copy
for REQUEST_OPLOCK_INPUT_BUFFER {}
4952 impl ::core
::clone
::Clone
for REQUEST_OPLOCK_INPUT_BUFFER
{
4953 fn clone(&self) -> Self {
4957 pub const REQUEST_OPLOCK_INPUT_FLAG_ACK
: u32 = 2u32;
4958 pub const REQUEST_OPLOCK_INPUT_FLAG_COMPLETE_ACK_ON_CLOSE
: u32 = 4u32;
4959 pub const REQUEST_OPLOCK_INPUT_FLAG_REQUEST
: u32 = 1u32;
4961 pub struct REQUEST_OPLOCK_OUTPUT_BUFFER
{
4962 pub StructureVersion
: u16,
4963 pub StructureLength
: u16,
4964 pub OriginalOplockLevel
: u32,
4965 pub NewOplockLevel
: u32,
4967 pub AccessMode
: u32,
4970 impl ::core
::marker
::Copy
for REQUEST_OPLOCK_OUTPUT_BUFFER {}
4971 impl ::core
::clone
::Clone
for REQUEST_OPLOCK_OUTPUT_BUFFER
{
4972 fn clone(&self) -> Self {
4976 pub const REQUEST_OPLOCK_OUTPUT_FLAG_ACK_REQUIRED
: u32 = 1u32;
4977 pub const REQUEST_OPLOCK_OUTPUT_FLAG_MODES_PROVIDED
: u32 = 2u32;
4979 pub struct REQUEST_RAW_ENCRYPTED_DATA
{
4980 pub FileOffset
: i64,
4983 impl ::core
::marker
::Copy
for REQUEST_RAW_ENCRYPTED_DATA {}
4984 impl ::core
::clone
::Clone
for REQUEST_RAW_ENCRYPTED_DATA
{
4985 fn clone(&self) -> Self {
4989 pub const RETRACT_IEPORT
: u32 = 3u32;
4991 pub struct RETRIEVAL_POINTERS_AND_REFCOUNT_BUFFER
{
4992 pub ExtentCount
: u32,
4993 pub StartingVcn
: i64,
4994 pub Extents
: [RETRIEVAL_POINTERS_AND_REFCOUNT_BUFFER_0
; 1],
4996 impl ::core
::marker
::Copy
for RETRIEVAL_POINTERS_AND_REFCOUNT_BUFFER {}
4997 impl ::core
::clone
::Clone
for RETRIEVAL_POINTERS_AND_REFCOUNT_BUFFER
{
4998 fn clone(&self) -> Self {
5003 pub struct RETRIEVAL_POINTERS_AND_REFCOUNT_BUFFER_0
{
5006 pub ReferenceCount
: u32,
5008 impl ::core
::marker
::Copy
for RETRIEVAL_POINTERS_AND_REFCOUNT_BUFFER_0 {}
5009 impl ::core
::clone
::Clone
for RETRIEVAL_POINTERS_AND_REFCOUNT_BUFFER_0
{
5010 fn clone(&self) -> Self {
5015 pub struct RETRIEVAL_POINTERS_BUFFER
{
5016 pub ExtentCount
: u32,
5017 pub StartingVcn
: i64,
5018 pub Extents
: [RETRIEVAL_POINTERS_BUFFER_0
; 1],
5020 impl ::core
::marker
::Copy
for RETRIEVAL_POINTERS_BUFFER {}
5021 impl ::core
::clone
::Clone
for RETRIEVAL_POINTERS_BUFFER
{
5022 fn clone(&self) -> Self {
5027 pub struct RETRIEVAL_POINTERS_BUFFER_0
{
5031 impl ::core
::marker
::Copy
for RETRIEVAL_POINTERS_BUFFER_0 {}
5032 impl ::core
::clone
::Clone
for RETRIEVAL_POINTERS_BUFFER_0
{
5033 fn clone(&self) -> Self {
5038 pub struct RETRIEVAL_POINTER_BASE
{
5039 pub FileAreaOffset
: i64,
5041 impl ::core
::marker
::Copy
for RETRIEVAL_POINTER_BASE {}
5042 impl ::core
::clone
::Clone
for RETRIEVAL_POINTER_BASE
{
5043 fn clone(&self) -> Self {
5048 pub struct RETRIEVAL_POINTER_COUNT
{
5049 pub ExtentCount
: u32,
5051 impl ::core
::marker
::Copy
for RETRIEVAL_POINTER_COUNT {}
5052 impl ::core
::clone
::Clone
for RETRIEVAL_POINTER_COUNT
{
5053 fn clone(&self) -> Self {
5057 pub const RETURN_SMART_STATUS
: u32 = 218u32;
5058 pub const REVISION_LENGTH
: u32 = 4u32;
5059 pub const SAVE_ATTRIBUTE_VALUES
: u32 = 211u32;
5061 pub struct SCM_BUS_DEDICATED_MEMORY_DEVICES_INFO
{
5064 pub DeviceCount
: u32,
5065 pub Devices
: [SCM_BUS_DEDICATED_MEMORY_DEVICE_INFO
; 1],
5067 impl ::core
::marker
::Copy
for SCM_BUS_DEDICATED_MEMORY_DEVICES_INFO {}
5068 impl ::core
::clone
::Clone
for SCM_BUS_DEDICATED_MEMORY_DEVICES_INFO
{
5069 fn clone(&self) -> Self {
5074 pub struct SCM_BUS_DEDICATED_MEMORY_DEVICE_INFO
{
5075 pub DeviceGuid
: ::windows_sys
::core
::GUID
,
5076 pub DeviceNumber
: u32,
5077 pub Flags
: SCM_BUS_DEDICATED_MEMORY_DEVICE_INFO_0
,
5078 pub DeviceSize
: u64,
5080 impl ::core
::marker
::Copy
for SCM_BUS_DEDICATED_MEMORY_DEVICE_INFO {}
5081 impl ::core
::clone
::Clone
for SCM_BUS_DEDICATED_MEMORY_DEVICE_INFO
{
5082 fn clone(&self) -> Self {
5087 pub struct SCM_BUS_DEDICATED_MEMORY_DEVICE_INFO_0
{
5090 impl ::core
::marker
::Copy
for SCM_BUS_DEDICATED_MEMORY_DEVICE_INFO_0 {}
5091 impl ::core
::clone
::Clone
for SCM_BUS_DEDICATED_MEMORY_DEVICE_INFO_0
{
5092 fn clone(&self) -> Self {
5097 #[cfg(feature = "Win32_Foundation")]
5098 pub struct SCM_BUS_DEDICATED_MEMORY_STATE
{
5099 pub ActivateState
: super::super::Foundation
::BOOLEAN
,
5101 #[cfg(feature = "Win32_Foundation")]
5102 impl ::core
::marker
::Copy
for SCM_BUS_DEDICATED_MEMORY_STATE {}
5103 #[cfg(feature = "Win32_Foundation")]
5104 impl ::core
::clone
::Clone
for SCM_BUS_DEDICATED_MEMORY_STATE
{
5105 fn clone(&self) -> Self {
5109 pub type SCM_BUS_FIRMWARE_ACTIVATION_STATE
= i32;
5110 pub const ScmBusFirmwareActivationState_Idle
: SCM_BUS_FIRMWARE_ACTIVATION_STATE
= 0i32;
5111 pub const ScmBusFirmwareActivationState_Armed
: SCM_BUS_FIRMWARE_ACTIVATION_STATE
= 1i32;
5112 pub const ScmBusFirmwareActivationState_Busy
: SCM_BUS_FIRMWARE_ACTIVATION_STATE
= 2i32;
5113 pub type SCM_BUS_PROPERTY_ID
= i32;
5114 pub const ScmBusProperty_RuntimeFwActivationInfo
: SCM_BUS_PROPERTY_ID
= 0i32;
5115 pub const ScmBusProperty_DedicatedMemoryInfo
: SCM_BUS_PROPERTY_ID
= 1i32;
5116 pub const ScmBusProperty_DedicatedMemoryState
: SCM_BUS_PROPERTY_ID
= 2i32;
5117 pub const ScmBusProperty_Max
: SCM_BUS_PROPERTY_ID
= 3i32;
5119 pub struct SCM_BUS_PROPERTY_QUERY
{
5122 pub PropertyId
: SCM_BUS_PROPERTY_ID
,
5123 pub QueryType
: SCM_BUS_QUERY_TYPE
,
5124 pub AdditionalParameters
: [u8; 1],
5126 impl ::core
::marker
::Copy
for SCM_BUS_PROPERTY_QUERY {}
5127 impl ::core
::clone
::Clone
for SCM_BUS_PROPERTY_QUERY
{
5128 fn clone(&self) -> Self {
5133 pub struct SCM_BUS_PROPERTY_SET
{
5136 pub PropertyId
: SCM_BUS_PROPERTY_ID
,
5137 pub SetType
: SCM_BUS_SET_TYPE
,
5138 pub AdditionalParameters
: [u8; 1],
5140 impl ::core
::marker
::Copy
for SCM_BUS_PROPERTY_SET {}
5141 impl ::core
::clone
::Clone
for SCM_BUS_PROPERTY_SET
{
5142 fn clone(&self) -> Self {
5146 pub type SCM_BUS_QUERY_TYPE
= i32;
5147 pub const ScmBusQuery_Descriptor
: SCM_BUS_QUERY_TYPE
= 0i32;
5148 pub const ScmBusQuery_IsSupported
: SCM_BUS_QUERY_TYPE
= 1i32;
5149 pub const ScmBusQuery_Max
: SCM_BUS_QUERY_TYPE
= 2i32;
5151 #[cfg(feature = "Win32_Foundation")]
5152 pub struct SCM_BUS_RUNTIME_FW_ACTIVATION_INFO
{
5155 pub RuntimeFwActivationSupported
: super::super::Foundation
::BOOLEAN
,
5156 pub FirmwareActivationState
: SCM_BUS_FIRMWARE_ACTIVATION_STATE
,
5157 pub FirmwareActivationCapability
: SCM_BUS_RUNTIME_FW_ACTIVATION_INFO_0
,
5158 pub EstimatedFirmwareActivationTimeInUSecs
: u64,
5159 pub EstimatedProcessorAccessQuiesceTimeInUSecs
: u64,
5160 pub EstimatedIOAccessQuiesceTimeInUSecs
: u64,
5161 pub PlatformSupportedMaxIOAccessQuiesceTimeInUSecs
: u64,
5163 #[cfg(feature = "Win32_Foundation")]
5164 impl ::core
::marker
::Copy
for SCM_BUS_RUNTIME_FW_ACTIVATION_INFO {}
5165 #[cfg(feature = "Win32_Foundation")]
5166 impl ::core
::clone
::Clone
for SCM_BUS_RUNTIME_FW_ACTIVATION_INFO
{
5167 fn clone(&self) -> Self {
5172 #[cfg(feature = "Win32_Foundation")]
5173 pub struct SCM_BUS_RUNTIME_FW_ACTIVATION_INFO_0
{
5176 #[cfg(feature = "Win32_Foundation")]
5177 impl ::core
::marker
::Copy
for SCM_BUS_RUNTIME_FW_ACTIVATION_INFO_0 {}
5178 #[cfg(feature = "Win32_Foundation")]
5179 impl ::core
::clone
::Clone
for SCM_BUS_RUNTIME_FW_ACTIVATION_INFO_0
{
5180 fn clone(&self) -> Self {
5184 pub type SCM_BUS_SET_TYPE
= i32;
5185 pub const ScmBusSet_Descriptor
: SCM_BUS_SET_TYPE
= 0i32;
5186 pub const ScmBusSet_IsSupported
: SCM_BUS_SET_TYPE
= 1i32;
5187 pub const ScmBusSet_Max
: SCM_BUS_SET_TYPE
= 2i32;
5189 pub struct SCM_INTERLEAVED_PD_INFO
{
5190 pub DeviceHandle
: u32,
5191 pub DeviceGuid
: ::windows_sys
::core
::GUID
,
5193 impl ::core
::marker
::Copy
for SCM_INTERLEAVED_PD_INFO {}
5194 impl ::core
::clone
::Clone
for SCM_INTERLEAVED_PD_INFO
{
5195 fn clone(&self) -> Self {
5200 pub struct SCM_LD_INTERLEAVE_SET_INFO
{
5203 pub InterleaveSetSize
: u32,
5204 pub InterleaveSet
: [SCM_INTERLEAVED_PD_INFO
; 1],
5206 impl ::core
::marker
::Copy
for SCM_LD_INTERLEAVE_SET_INFO {}
5207 impl ::core
::clone
::Clone
for SCM_LD_INTERLEAVE_SET_INFO
{
5208 fn clone(&self) -> Self {
5213 pub struct SCM_LOGICAL_DEVICES
{
5216 pub DeviceCount
: u32,
5217 pub Devices
: [SCM_LOGICAL_DEVICE_INSTANCE
; 1],
5219 impl ::core
::marker
::Copy
for SCM_LOGICAL_DEVICES {}
5220 impl ::core
::clone
::Clone
for SCM_LOGICAL_DEVICES
{
5221 fn clone(&self) -> Self {
5226 pub struct SCM_LOGICAL_DEVICE_INSTANCE
{
5229 pub DeviceGuid
: ::windows_sys
::core
::GUID
,
5230 pub SymbolicLink
: [u16; 256],
5232 impl ::core
::marker
::Copy
for SCM_LOGICAL_DEVICE_INSTANCE {}
5233 impl ::core
::clone
::Clone
for SCM_LOGICAL_DEVICE_INSTANCE
{
5234 fn clone(&self) -> Self {
5238 pub const SCM_MAX_SYMLINK_LEN_IN_CHARS
: u32 = 256u32;
5240 pub struct SCM_PD_DESCRIPTOR_HEADER
{
5244 impl ::core
::marker
::Copy
for SCM_PD_DESCRIPTOR_HEADER {}
5245 impl ::core
::clone
::Clone
for SCM_PD_DESCRIPTOR_HEADER
{
5246 fn clone(&self) -> Self {
5251 pub struct SCM_PD_DEVICE_HANDLE
{
5254 pub DeviceGuid
: ::windows_sys
::core
::GUID
,
5255 pub DeviceHandle
: u32,
5257 impl ::core
::marker
::Copy
for SCM_PD_DEVICE_HANDLE {}
5258 impl ::core
::clone
::Clone
for SCM_PD_DEVICE_HANDLE
{
5259 fn clone(&self) -> Self {
5264 #[cfg(feature = "Win32_Foundation")]
5265 pub struct SCM_PD_DEVICE_INFO
{
5268 pub DeviceGuid
: ::windows_sys
::core
::GUID
,
5269 pub UnsafeShutdownCount
: u32,
5270 pub PersistentMemorySizeInBytes
: u64,
5271 pub VolatileMemorySizeInBytes
: u64,
5272 pub TotalMemorySizeInBytes
: u64,
5273 pub SlotNumber
: u32,
5274 pub DeviceHandle
: u32,
5275 pub PhysicalId
: u16,
5276 pub NumberOfFormatInterfaceCodes
: u8,
5277 pub FormatInterfaceCodes
: [u16; 8],
5280 pub SubsystemDeviceId
: u32,
5281 pub SubsystemVendorId
: u32,
5282 pub ManufacturingLocation
: u8,
5283 pub ManufacturingWeek
: u8,
5284 pub ManufacturingYear
: u8,
5285 pub SerialNumber4Byte
: u32,
5286 pub SerialNumberLengthInChars
: u32,
5287 pub SerialNumber
: [super::super::Foundation
::CHAR
; 1],
5289 #[cfg(feature = "Win32_Foundation")]
5290 impl ::core
::marker
::Copy
for SCM_PD_DEVICE_INFO {}
5291 #[cfg(feature = "Win32_Foundation")]
5292 impl ::core
::clone
::Clone
for SCM_PD_DEVICE_INFO
{
5293 fn clone(&self) -> Self {
5298 pub struct SCM_PD_DEVICE_SPECIFIC_INFO
{
5301 pub NumberOfProperties
: u32,
5302 pub DeviceSpecificProperties
: [SCM_PD_DEVICE_SPECIFIC_PROPERTY
; 1],
5304 impl ::core
::marker
::Copy
for SCM_PD_DEVICE_SPECIFIC_INFO {}
5305 impl ::core
::clone
::Clone
for SCM_PD_DEVICE_SPECIFIC_INFO
{
5306 fn clone(&self) -> Self {
5311 pub struct SCM_PD_DEVICE_SPECIFIC_PROPERTY
{
5312 pub Name
: [u16; 128],
5315 impl ::core
::marker
::Copy
for SCM_PD_DEVICE_SPECIFIC_PROPERTY {}
5316 impl ::core
::clone
::Clone
for SCM_PD_DEVICE_SPECIFIC_PROPERTY
{
5317 fn clone(&self) -> Self {
5322 pub struct SCM_PD_FIRMWARE_ACTIVATE
{
5328 impl ::core
::marker
::Copy
for SCM_PD_FIRMWARE_ACTIVATE {}
5329 impl ::core
::clone
::Clone
for SCM_PD_FIRMWARE_ACTIVATE
{
5330 fn clone(&self) -> Self {
5334 pub type SCM_PD_FIRMWARE_ACTIVATION_STATE
= i32;
5335 pub const ScmPdFirmwareActivationState_Idle
: SCM_PD_FIRMWARE_ACTIVATION_STATE
= 0i32;
5336 pub const ScmPdFirmwareActivationState_Armed
: SCM_PD_FIRMWARE_ACTIVATION_STATE
= 1i32;
5337 pub const ScmPdFirmwareActivationState_Busy
: SCM_PD_FIRMWARE_ACTIVATION_STATE
= 2i32;
5339 pub struct SCM_PD_FIRMWARE_DOWNLOAD
{
5344 pub Reserved
: [u8; 3],
5346 pub FirmwareImageSizeInBytes
: u32,
5347 pub FirmwareImage
: [u8; 1],
5349 impl ::core
::marker
::Copy
for SCM_PD_FIRMWARE_DOWNLOAD {}
5350 impl ::core
::clone
::Clone
for SCM_PD_FIRMWARE_DOWNLOAD
{
5351 fn clone(&self) -> Self {
5356 pub struct SCM_PD_FIRMWARE_INFO
{
5360 pub NextActiveSlot
: u8,
5362 pub Slots
: [SCM_PD_FIRMWARE_SLOT_INFO
; 1],
5364 impl ::core
::marker
::Copy
for SCM_PD_FIRMWARE_INFO {}
5365 impl ::core
::clone
::Clone
for SCM_PD_FIRMWARE_INFO
{
5366 fn clone(&self) -> Self {
5370 pub const SCM_PD_FIRMWARE_LAST_DOWNLOAD
: u32 = 1u32;
5371 pub const SCM_PD_FIRMWARE_REVISION_LENGTH_BYTES
: u32 = 32u32;
5373 pub struct SCM_PD_FIRMWARE_SLOT_INFO
{
5378 pub Reserved1
: [u8; 6],
5379 pub Revision
: [u8; 32],
5381 impl ::core
::marker
::Copy
for SCM_PD_FIRMWARE_SLOT_INFO {}
5382 impl ::core
::clone
::Clone
for SCM_PD_FIRMWARE_SLOT_INFO
{
5383 fn clone(&self) -> Self {
5388 pub struct SCM_PD_FRU_ID_STRING
{
5391 pub IdentifierSize
: u32,
5392 pub Identifier
: [u8; 1],
5394 impl ::core
::marker
::Copy
for SCM_PD_FRU_ID_STRING {}
5395 impl ::core
::clone
::Clone
for SCM_PD_FRU_ID_STRING
{
5396 fn clone(&self) -> Self {
5401 pub struct SCM_PD_HEALTH_NOTIFICATION_DATA
{
5402 pub DeviceGuid
: ::windows_sys
::core
::GUID
,
5404 impl ::core
::marker
::Copy
for SCM_PD_HEALTH_NOTIFICATION_DATA {}
5405 impl ::core
::clone
::Clone
for SCM_PD_HEALTH_NOTIFICATION_DATA
{
5406 fn clone(&self) -> Self {
5410 pub type SCM_PD_HEALTH_STATUS
= i32;
5411 pub const ScmPhysicalDeviceHealth_Unknown
: SCM_PD_HEALTH_STATUS
= 0i32;
5412 pub const ScmPhysicalDeviceHealth_Unhealthy
: SCM_PD_HEALTH_STATUS
= 1i32;
5413 pub const ScmPhysicalDeviceHealth_Warning
: SCM_PD_HEALTH_STATUS
= 2i32;
5414 pub const ScmPhysicalDeviceHealth_Healthy
: SCM_PD_HEALTH_STATUS
= 3i32;
5415 pub const ScmPhysicalDeviceHealth_Max
: SCM_PD_HEALTH_STATUS
= 4i32;
5416 pub type SCM_PD_LAST_FW_ACTIVATION_STATUS
= i32;
5417 pub const ScmPdLastFwActivationStatus_None
: SCM_PD_LAST_FW_ACTIVATION_STATUS
= 0i32;
5418 pub const ScmPdLastFwActivationStatus_Success
: SCM_PD_LAST_FW_ACTIVATION_STATUS
= 1i32;
5419 pub const ScmPdLastFwActivationStatus_FwNotFound
: SCM_PD_LAST_FW_ACTIVATION_STATUS
= 2i32;
5420 pub const ScmPdLastFwActivationStatus_ColdRebootRequired
: SCM_PD_LAST_FW_ACTIVATION_STATUS
= 3i32;
5421 pub const ScmPdLastFwActivaitonStatus_ActivationInProgress
: SCM_PD_LAST_FW_ACTIVATION_STATUS
= 4i32;
5422 pub const ScmPdLastFwActivaitonStatus_Retry
: SCM_PD_LAST_FW_ACTIVATION_STATUS
= 5i32;
5423 pub const ScmPdLastFwActivaitonStatus_FwUnsupported
: SCM_PD_LAST_FW_ACTIVATION_STATUS
= 6i32;
5424 pub const ScmPdLastFwActivaitonStatus_UnknownError
: SCM_PD_LAST_FW_ACTIVATION_STATUS
= 7i32;
5426 pub struct SCM_PD_LOCATION_STRING
{
5429 pub Location
: [u16; 1],
5431 impl ::core
::marker
::Copy
for SCM_PD_LOCATION_STRING {}
5432 impl ::core
::clone
::Clone
for SCM_PD_LOCATION_STRING
{
5433 fn clone(&self) -> Self {
5438 pub struct SCM_PD_MANAGEMENT_STATUS
{
5441 pub Health
: SCM_PD_HEALTH_STATUS
,
5442 pub NumberOfOperationalStatus
: u32,
5443 pub NumberOfAdditionalReasons
: u32,
5444 pub OperationalStatus
: [SCM_PD_OPERATIONAL_STATUS
; 16],
5445 pub AdditionalReasons
: [SCM_PD_OPERATIONAL_STATUS_REASON
; 1],
5447 impl ::core
::marker
::Copy
for SCM_PD_MANAGEMENT_STATUS {}
5448 impl ::core
::clone
::Clone
for SCM_PD_MANAGEMENT_STATUS
{
5449 fn clone(&self) -> Self {
5453 pub const SCM_PD_MAX_OPERATIONAL_STATUS
: u32 = 16u32;
5454 pub type SCM_PD_MEDIA_REINITIALIZATION_STATUS
= i32;
5455 pub const ScmPhysicalDeviceReinit_Success
: SCM_PD_MEDIA_REINITIALIZATION_STATUS
= 0i32;
5456 pub const ScmPhysicalDeviceReinit_RebootNeeded
: SCM_PD_MEDIA_REINITIALIZATION_STATUS
= 1i32;
5457 pub const ScmPhysicalDeviceReinit_ColdBootNeeded
: SCM_PD_MEDIA_REINITIALIZATION_STATUS
= 2i32;
5458 pub const ScmPhysicalDeviceReinit_Max
: SCM_PD_MEDIA_REINITIALIZATION_STATUS
= 3i32;
5459 pub type SCM_PD_OPERATIONAL_STATUS
= i32;
5460 pub const ScmPhysicalDeviceOpStatus_Unknown
: SCM_PD_OPERATIONAL_STATUS
= 0i32;
5461 pub const ScmPhysicalDeviceOpStatus_Ok
: SCM_PD_OPERATIONAL_STATUS
= 1i32;
5462 pub const ScmPhysicalDeviceOpStatus_PredictingFailure
: SCM_PD_OPERATIONAL_STATUS
= 2i32;
5463 pub const ScmPhysicalDeviceOpStatus_InService
: SCM_PD_OPERATIONAL_STATUS
= 3i32;
5464 pub const ScmPhysicalDeviceOpStatus_HardwareError
: SCM_PD_OPERATIONAL_STATUS
= 4i32;
5465 pub const ScmPhysicalDeviceOpStatus_NotUsable
: SCM_PD_OPERATIONAL_STATUS
= 5i32;
5466 pub const ScmPhysicalDeviceOpStatus_TransientError
: SCM_PD_OPERATIONAL_STATUS
= 6i32;
5467 pub const ScmPhysicalDeviceOpStatus_Missing
: SCM_PD_OPERATIONAL_STATUS
= 7i32;
5468 pub const ScmPhysicalDeviceOpStatus_Max
: SCM_PD_OPERATIONAL_STATUS
= 8i32;
5469 pub type SCM_PD_OPERATIONAL_STATUS_REASON
= i32;
5470 pub const ScmPhysicalDeviceOpReason_Unknown
: SCM_PD_OPERATIONAL_STATUS_REASON
= 0i32;
5471 pub const ScmPhysicalDeviceOpReason_Media
: SCM_PD_OPERATIONAL_STATUS_REASON
= 1i32;
5472 pub const ScmPhysicalDeviceOpReason_ThresholdExceeded
: SCM_PD_OPERATIONAL_STATUS_REASON
= 2i32;
5473 pub const ScmPhysicalDeviceOpReason_LostData
: SCM_PD_OPERATIONAL_STATUS_REASON
= 3i32;
5474 pub const ScmPhysicalDeviceOpReason_EnergySource
: SCM_PD_OPERATIONAL_STATUS_REASON
= 4i32;
5475 pub const ScmPhysicalDeviceOpReason_Configuration
: SCM_PD_OPERATIONAL_STATUS_REASON
= 5i32;
5476 pub const ScmPhysicalDeviceOpReason_DeviceController
: SCM_PD_OPERATIONAL_STATUS_REASON
= 6i32;
5477 pub const ScmPhysicalDeviceOpReason_MediaController
: SCM_PD_OPERATIONAL_STATUS_REASON
= 7i32;
5478 pub const ScmPhysicalDeviceOpReason_Component
: SCM_PD_OPERATIONAL_STATUS_REASON
= 8i32;
5479 pub const ScmPhysicalDeviceOpReason_BackgroundOperation
: SCM_PD_OPERATIONAL_STATUS_REASON
= 9i32;
5480 pub const ScmPhysicalDeviceOpReason_InvalidFirmware
: SCM_PD_OPERATIONAL_STATUS_REASON
= 10i32;
5481 pub const ScmPhysicalDeviceOpReason_HealthCheck
: SCM_PD_OPERATIONAL_STATUS_REASON
= 11i32;
5482 pub const ScmPhysicalDeviceOpReason_LostDataPersistence
: SCM_PD_OPERATIONAL_STATUS_REASON
= 12i32;
5483 pub const ScmPhysicalDeviceOpReason_DisabledByPlatform
: SCM_PD_OPERATIONAL_STATUS_REASON
= 13i32;
5484 pub const ScmPhysicalDeviceOpReason_PermanentError
: SCM_PD_OPERATIONAL_STATUS_REASON
= 14i32;
5485 pub const ScmPhysicalDeviceOpReason_LostWritePersistence
: SCM_PD_OPERATIONAL_STATUS_REASON
= 15i32;
5486 pub const ScmPhysicalDeviceOpReason_FatalError
: SCM_PD_OPERATIONAL_STATUS_REASON
= 16i32;
5487 pub const ScmPhysicalDeviceOpReason_DataPersistenceLossImminent
: SCM_PD_OPERATIONAL_STATUS_REASON
= 17i32;
5488 pub const ScmPhysicalDeviceOpReason_WritePersistenceLossImminent
: SCM_PD_OPERATIONAL_STATUS_REASON
= 18i32;
5489 pub const ScmPhysicalDeviceOpReason_MediaRemainingSpareBlock
: SCM_PD_OPERATIONAL_STATUS_REASON
= 19i32;
5490 pub const ScmPhysicalDeviceOpReason_PerformanceDegradation
: SCM_PD_OPERATIONAL_STATUS_REASON
= 20i32;
5491 pub const ScmPhysicalDeviceOpReason_ExcessiveTemperature
: SCM_PD_OPERATIONAL_STATUS_REASON
= 21i32;
5492 pub const ScmPhysicalDeviceOpReason_InternalFailure
: SCM_PD_OPERATIONAL_STATUS_REASON
= 22i32;
5493 pub const ScmPhysicalDeviceOpReason_Max
: SCM_PD_OPERATIONAL_STATUS_REASON
= 23i32;
5495 pub struct SCM_PD_PASSTHROUGH_INPUT
{
5498 pub ProtocolGuid
: ::windows_sys
::core
::GUID
,
5502 impl ::core
::marker
::Copy
for SCM_PD_PASSTHROUGH_INPUT {}
5503 impl ::core
::clone
::Clone
for SCM_PD_PASSTHROUGH_INPUT
{
5504 fn clone(&self) -> Self {
5509 pub struct SCM_PD_PASSTHROUGH_INVDIMM_INPUT
{
5511 pub OpcodeParametersLength
: u32,
5512 pub OpcodeParameters
: [u8; 1],
5514 impl ::core
::marker
::Copy
for SCM_PD_PASSTHROUGH_INVDIMM_INPUT {}
5515 impl ::core
::clone
::Clone
for SCM_PD_PASSTHROUGH_INVDIMM_INPUT
{
5516 fn clone(&self) -> Self {
5521 pub struct SCM_PD_PASSTHROUGH_INVDIMM_OUTPUT
{
5522 pub GeneralStatus
: u16,
5523 pub ExtendedStatus
: u16,
5524 pub OutputDataLength
: u32,
5525 pub OutputData
: [u8; 1],
5527 impl ::core
::marker
::Copy
for SCM_PD_PASSTHROUGH_INVDIMM_OUTPUT {}
5528 impl ::core
::clone
::Clone
for SCM_PD_PASSTHROUGH_INVDIMM_OUTPUT
{
5529 fn clone(&self) -> Self {
5534 pub struct SCM_PD_PASSTHROUGH_OUTPUT
{
5537 pub ProtocolGuid
: ::windows_sys
::core
::GUID
,
5541 impl ::core
::marker
::Copy
for SCM_PD_PASSTHROUGH_OUTPUT {}
5542 impl ::core
::clone
::Clone
for SCM_PD_PASSTHROUGH_OUTPUT
{
5543 fn clone(&self) -> Self {
5547 pub type SCM_PD_PROPERTY_ID
= i32;
5548 pub const ScmPhysicalDeviceProperty_DeviceInfo
: SCM_PD_PROPERTY_ID
= 0i32;
5549 pub const ScmPhysicalDeviceProperty_ManagementStatus
: SCM_PD_PROPERTY_ID
= 1i32;
5550 pub const ScmPhysicalDeviceProperty_FirmwareInfo
: SCM_PD_PROPERTY_ID
= 2i32;
5551 pub const ScmPhysicalDeviceProperty_LocationString
: SCM_PD_PROPERTY_ID
= 3i32;
5552 pub const ScmPhysicalDeviceProperty_DeviceSpecificInfo
: SCM_PD_PROPERTY_ID
= 4i32;
5553 pub const ScmPhysicalDeviceProperty_DeviceHandle
: SCM_PD_PROPERTY_ID
= 5i32;
5554 pub const ScmPhysicalDeviceProperty_FruIdString
: SCM_PD_PROPERTY_ID
= 6i32;
5555 pub const ScmPhysicalDeviceProperty_RuntimeFwActivationInfo
: SCM_PD_PROPERTY_ID
= 7i32;
5556 pub const ScmPhysicalDeviceProperty_RuntimeFwActivationArmState
: SCM_PD_PROPERTY_ID
= 8i32;
5557 pub const ScmPhysicalDeviceProperty_Max
: SCM_PD_PROPERTY_ID
= 9i32;
5558 pub const SCM_PD_PROPERTY_NAME_LENGTH_IN_CHARS
: u32 = 128u32;
5560 pub struct SCM_PD_PROPERTY_QUERY
{
5563 pub PropertyId
: SCM_PD_PROPERTY_ID
,
5564 pub QueryType
: SCM_PD_QUERY_TYPE
,
5565 pub AdditionalParameters
: [u8; 1],
5567 impl ::core
::marker
::Copy
for SCM_PD_PROPERTY_QUERY {}
5568 impl ::core
::clone
::Clone
for SCM_PD_PROPERTY_QUERY
{
5569 fn clone(&self) -> Self {
5574 pub struct SCM_PD_PROPERTY_SET
{
5577 pub PropertyId
: SCM_PD_PROPERTY_ID
,
5578 pub SetType
: SCM_PD_SET_TYPE
,
5579 pub AdditionalParameters
: [u8; 1],
5581 impl ::core
::marker
::Copy
for SCM_PD_PROPERTY_SET {}
5582 impl ::core
::clone
::Clone
for SCM_PD_PROPERTY_SET
{
5583 fn clone(&self) -> Self {
5587 pub type SCM_PD_QUERY_TYPE
= i32;
5588 pub const ScmPhysicalDeviceQuery_Descriptor
: SCM_PD_QUERY_TYPE
= 0i32;
5589 pub const ScmPhysicalDeviceQuery_IsSupported
: SCM_PD_QUERY_TYPE
= 1i32;
5590 pub const ScmPhysicalDeviceQuery_Max
: SCM_PD_QUERY_TYPE
= 2i32;
5592 pub struct SCM_PD_REINITIALIZE_MEDIA_INPUT
{
5595 pub Options
: SCM_PD_REINITIALIZE_MEDIA_INPUT_0
,
5597 impl ::core
::marker
::Copy
for SCM_PD_REINITIALIZE_MEDIA_INPUT {}
5598 impl ::core
::clone
::Clone
for SCM_PD_REINITIALIZE_MEDIA_INPUT
{
5599 fn clone(&self) -> Self {
5604 pub struct SCM_PD_REINITIALIZE_MEDIA_INPUT_0
{
5607 impl ::core
::marker
::Copy
for SCM_PD_REINITIALIZE_MEDIA_INPUT_0 {}
5608 impl ::core
::clone
::Clone
for SCM_PD_REINITIALIZE_MEDIA_INPUT_0
{
5609 fn clone(&self) -> Self {
5614 pub struct SCM_PD_REINITIALIZE_MEDIA_OUTPUT
{
5617 pub Status
: SCM_PD_MEDIA_REINITIALIZATION_STATUS
,
5619 impl ::core
::marker
::Copy
for SCM_PD_REINITIALIZE_MEDIA_OUTPUT {}
5620 impl ::core
::clone
::Clone
for SCM_PD_REINITIALIZE_MEDIA_OUTPUT
{
5621 fn clone(&self) -> Self {
5626 #[cfg(feature = "Win32_Foundation")]
5627 pub struct SCM_PD_RUNTIME_FW_ACTIVATION_ARM_STATE
{
5628 pub ArmState
: super::super::Foundation
::BOOLEAN
,
5630 #[cfg(feature = "Win32_Foundation")]
5631 impl ::core
::marker
::Copy
for SCM_PD_RUNTIME_FW_ACTIVATION_ARM_STATE {}
5632 #[cfg(feature = "Win32_Foundation")]
5633 impl ::core
::clone
::Clone
for SCM_PD_RUNTIME_FW_ACTIVATION_ARM_STATE
{
5634 fn clone(&self) -> Self {
5639 pub struct SCM_PD_RUNTIME_FW_ACTIVATION_INFO
{
5642 pub LastFirmwareActivationStatus
: SCM_PD_LAST_FW_ACTIVATION_STATUS
,
5643 pub FirmwareActivationState
: SCM_PD_FIRMWARE_ACTIVATION_STATE
,
5645 impl ::core
::marker
::Copy
for SCM_PD_RUNTIME_FW_ACTIVATION_INFO {}
5646 impl ::core
::clone
::Clone
for SCM_PD_RUNTIME_FW_ACTIVATION_INFO
{
5647 fn clone(&self) -> Self {
5651 pub type SCM_PD_SET_TYPE
= i32;
5652 pub const ScmPhysicalDeviceSet_Descriptor
: SCM_PD_SET_TYPE
= 0i32;
5653 pub const ScmPhysicalDeviceSet_IsSupported
: SCM_PD_SET_TYPE
= 1i32;
5654 pub const ScmPhysicalDeviceSet_Max
: SCM_PD_SET_TYPE
= 2i32;
5656 pub struct SCM_PHYSICAL_DEVICES
{
5659 pub DeviceCount
: u32,
5660 pub Devices
: [SCM_PHYSICAL_DEVICE_INSTANCE
; 1],
5662 impl ::core
::marker
::Copy
for SCM_PHYSICAL_DEVICES {}
5663 impl ::core
::clone
::Clone
for SCM_PHYSICAL_DEVICES
{
5664 fn clone(&self) -> Self {
5669 pub struct SCM_PHYSICAL_DEVICE_INSTANCE
{
5672 pub NfitHandle
: u32,
5673 pub SymbolicLink
: [u16; 256],
5675 impl ::core
::marker
::Copy
for SCM_PHYSICAL_DEVICE_INSTANCE {}
5676 impl ::core
::clone
::Clone
for SCM_PHYSICAL_DEVICE_INSTANCE
{
5677 fn clone(&self) -> Self {
5682 pub struct SCM_REGION
{
5686 pub NfitHandle
: u32,
5687 pub LogicalDeviceGuid
: ::windows_sys
::core
::GUID
,
5688 pub AddressRangeType
: ::windows_sys
::core
::GUID
,
5689 pub AssociatedId
: u32,
5691 pub StartingDPA
: u64,
5694 pub RegionOffset
: u64,
5696 impl ::core
::marker
::Copy
for SCM_REGION {}
5697 impl ::core
::clone
::Clone
for SCM_REGION
{
5698 fn clone(&self) -> Self {
5703 pub struct SCM_REGIONS
{
5706 pub RegionCount
: u32,
5707 pub Regions
: [SCM_REGION
; 1],
5709 impl ::core
::marker
::Copy
for SCM_REGIONS {}
5710 impl ::core
::clone
::Clone
for SCM_REGIONS
{
5711 fn clone(&self) -> Self {
5715 pub type SCM_REGION_FLAG
= i32;
5716 pub const ScmRegionFlagNone
: SCM_REGION_FLAG
= 0i32;
5717 pub const ScmRegionFlagLabel
: SCM_REGION_FLAG
= 1i32;
5719 pub struct SD_CHANGE_MACHINE_SID_INPUT
{
5720 pub CurrentMachineSIDOffset
: u16,
5721 pub CurrentMachineSIDLength
: u16,
5722 pub NewMachineSIDOffset
: u16,
5723 pub NewMachineSIDLength
: u16,
5725 impl ::core
::marker
::Copy
for SD_CHANGE_MACHINE_SID_INPUT {}
5726 impl ::core
::clone
::Clone
for SD_CHANGE_MACHINE_SID_INPUT
{
5727 fn clone(&self) -> Self {
5732 pub struct SD_CHANGE_MACHINE_SID_OUTPUT
{
5733 pub NumSDChangedSuccess
: u64,
5734 pub NumSDChangedFail
: u64,
5735 pub NumSDUnused
: u64,
5736 pub NumSDTotal
: u64,
5737 pub NumMftSDChangedSuccess
: u64,
5738 pub NumMftSDChangedFail
: u64,
5739 pub NumMftSDTotal
: u64,
5741 impl ::core
::marker
::Copy
for SD_CHANGE_MACHINE_SID_OUTPUT {}
5742 impl ::core
::clone
::Clone
for SD_CHANGE_MACHINE_SID_OUTPUT
{
5743 fn clone(&self) -> Self {
5748 pub struct SD_ENUM_SDS_ENTRY
{
5750 pub SecurityId
: u32,
5753 pub Descriptor
: [u8; 1],
5755 impl ::core
::marker
::Copy
for SD_ENUM_SDS_ENTRY {}
5756 impl ::core
::clone
::Clone
for SD_ENUM_SDS_ENTRY
{
5757 fn clone(&self) -> Self {
5762 pub struct SD_ENUM_SDS_INPUT
{
5763 pub StartingOffset
: u64,
5764 pub MaxSDEntriesToReturn
: u64,
5766 impl ::core
::marker
::Copy
for SD_ENUM_SDS_INPUT {}
5767 impl ::core
::clone
::Clone
for SD_ENUM_SDS_INPUT
{
5768 fn clone(&self) -> Self {
5773 pub struct SD_ENUM_SDS_OUTPUT
{
5774 pub NextOffset
: u64,
5775 pub NumSDEntriesReturned
: u64,
5776 pub NumSDBytesReturned
: u64,
5777 pub SDEntry
: [SD_ENUM_SDS_ENTRY
; 1],
5779 impl ::core
::marker
::Copy
for SD_ENUM_SDS_OUTPUT {}
5780 impl ::core
::clone
::Clone
for SD_ENUM_SDS_OUTPUT
{
5781 fn clone(&self) -> Self {
5786 pub struct SD_GLOBAL_CHANGE_INPUT
{
5788 pub ChangeType
: u32,
5789 pub Anonymous
: SD_GLOBAL_CHANGE_INPUT_0
,
5791 impl ::core
::marker
::Copy
for SD_GLOBAL_CHANGE_INPUT {}
5792 impl ::core
::clone
::Clone
for SD_GLOBAL_CHANGE_INPUT
{
5793 fn clone(&self) -> Self {
5798 pub union SD_GLOBAL_CHANGE_INPUT_0
{
5799 pub SdChange
: SD_CHANGE_MACHINE_SID_INPUT
,
5800 pub SdQueryStats
: SD_QUERY_STATS_INPUT
,
5801 pub SdEnumSds
: SD_ENUM_SDS_INPUT
,
5803 impl ::core
::marker
::Copy
for SD_GLOBAL_CHANGE_INPUT_0 {}
5804 impl ::core
::clone
::Clone
for SD_GLOBAL_CHANGE_INPUT_0
{
5805 fn clone(&self) -> Self {
5810 pub struct SD_GLOBAL_CHANGE_OUTPUT
{
5812 pub ChangeType
: u32,
5813 pub Anonymous
: SD_GLOBAL_CHANGE_OUTPUT_0
,
5815 impl ::core
::marker
::Copy
for SD_GLOBAL_CHANGE_OUTPUT {}
5816 impl ::core
::clone
::Clone
for SD_GLOBAL_CHANGE_OUTPUT
{
5817 fn clone(&self) -> Self {
5822 pub union SD_GLOBAL_CHANGE_OUTPUT_0
{
5823 pub SdChange
: SD_CHANGE_MACHINE_SID_OUTPUT
,
5824 pub SdQueryStats
: SD_QUERY_STATS_OUTPUT
,
5825 pub SdEnumSds
: SD_ENUM_SDS_OUTPUT
,
5827 impl ::core
::marker
::Copy
for SD_GLOBAL_CHANGE_OUTPUT_0 {}
5828 impl ::core
::clone
::Clone
for SD_GLOBAL_CHANGE_OUTPUT_0
{
5829 fn clone(&self) -> Self {
5833 pub const SD_GLOBAL_CHANGE_TYPE_ENUM_SDS
: u32 = 131072u32;
5834 pub const SD_GLOBAL_CHANGE_TYPE_MACHINE_SID
: u32 = 1u32;
5835 pub const SD_GLOBAL_CHANGE_TYPE_QUERY_STATS
: u32 = 65536u32;
5837 pub struct SD_QUERY_STATS_INPUT
{
5840 impl ::core
::marker
::Copy
for SD_QUERY_STATS_INPUT {}
5841 impl ::core
::clone
::Clone
for SD_QUERY_STATS_INPUT
{
5842 fn clone(&self) -> Self {
5847 pub struct SD_QUERY_STATS_OUTPUT
{
5848 pub SdsStreamSize
: u64,
5849 pub SdsAllocationSize
: u64,
5850 pub SiiStreamSize
: u64,
5851 pub SiiAllocationSize
: u64,
5852 pub SdhStreamSize
: u64,
5853 pub SdhAllocationSize
: u64,
5854 pub NumSDTotal
: u64,
5855 pub NumSDUnused
: u64,
5857 impl ::core
::marker
::Copy
for SD_QUERY_STATS_OUTPUT {}
5858 impl ::core
::clone
::Clone
for SD_QUERY_STATS_OUTPUT
{
5859 fn clone(&self) -> Self {
5863 pub const SEARCH_ALL
: u32 = 0u32;
5864 pub const SEARCH_ALL_NO_SEQ
: u32 = 4u32;
5865 pub const SEARCH_ALTERNATE
: u32 = 2u32;
5866 pub const SEARCH_ALT_NO_SEQ
: u32 = 6u32;
5867 pub const SEARCH_PRIMARY
: u32 = 1u32;
5868 pub const SEARCH_PRI_NO_SEQ
: u32 = 5u32;
5869 #[repr(C, packed(1))]
5870 pub struct SENDCMDINPARAMS
{
5871 pub cBufferSize
: u32,
5872 pub irDriveRegs
: IDEREGS
,
5873 pub bDriveNumber
: u8,
5874 pub bReserved
: [u8; 3],
5875 pub dwReserved
: [u32; 4],
5876 pub bBuffer
: [u8; 1],
5878 impl ::core
::marker
::Copy
for SENDCMDINPARAMS {}
5879 impl ::core
::clone
::Clone
for SENDCMDINPARAMS
{
5880 fn clone(&self) -> Self {
5884 #[repr(C, packed(1))]
5885 pub struct SENDCMDOUTPARAMS
{
5886 pub cBufferSize
: u32,
5887 pub DriverStatus
: DRIVERSTATUS
,
5888 pub bBuffer
: [u8; 1],
5890 impl ::core
::marker
::Copy
for SENDCMDOUTPARAMS {}
5891 impl ::core
::clone
::Clone
for SENDCMDOUTPARAMS
{
5892 fn clone(&self) -> Self {
5896 pub const SERIAL_NUMBER_LENGTH
: u32 = 32u32;
5898 pub struct SET_DAX_ALLOC_ALIGNMENT_HINT_INPUT
{
5900 pub AlignmentShift
: u32,
5901 pub FileOffsetToAlign
: u64,
5902 pub FallbackAlignmentShift
: u32,
5904 impl ::core
::marker
::Copy
for SET_DAX_ALLOC_ALIGNMENT_HINT_INPUT {}
5905 impl ::core
::clone
::Clone
for SET_DAX_ALLOC_ALIGNMENT_HINT_INPUT
{
5906 fn clone(&self) -> Self {
5911 #[cfg(feature = "Win32_Foundation")]
5912 pub struct SET_DISK_ATTRIBUTES
{
5914 pub Persist
: super::super::Foundation
::BOOLEAN
,
5915 pub Reserved1
: [u8; 3],
5916 pub Attributes
: u64,
5917 pub AttributesMask
: u64,
5918 pub Reserved2
: [u32; 4],
5920 #[cfg(feature = "Win32_Foundation")]
5921 impl ::core
::marker
::Copy
for SET_DISK_ATTRIBUTES {}
5922 #[cfg(feature = "Win32_Foundation")]
5923 impl ::core
::clone
::Clone
for SET_DISK_ATTRIBUTES
{
5924 fn clone(&self) -> Self {
5929 pub struct SET_PARTITION_INFORMATION
{
5930 pub PartitionType
: u8,
5932 impl ::core
::marker
::Copy
for SET_PARTITION_INFORMATION {}
5933 impl ::core
::clone
::Clone
for SET_PARTITION_INFORMATION
{
5934 fn clone(&self) -> Self {
5939 pub struct SET_PARTITION_INFORMATION_EX
{
5940 pub PartitionStyle
: PARTITION_STYLE
,
5941 pub Anonymous
: SET_PARTITION_INFORMATION_EX_0
,
5943 impl ::core
::marker
::Copy
for SET_PARTITION_INFORMATION_EX {}
5944 impl ::core
::clone
::Clone
for SET_PARTITION_INFORMATION_EX
{
5945 fn clone(&self) -> Self {
5950 pub union SET_PARTITION_INFORMATION_EX_0
{
5951 pub Mbr
: SET_PARTITION_INFORMATION
,
5952 pub Gpt
: PARTITION_INFORMATION_GPT
,
5954 impl ::core
::marker
::Copy
for SET_PARTITION_INFORMATION_EX_0 {}
5955 impl ::core
::clone
::Clone
for SET_PARTITION_INFORMATION_EX_0
{
5956 fn clone(&self) -> Self {
5960 pub const SET_PURGE_FAILURE_MODE_DISABLED
: u32 = 2u32;
5961 pub const SET_PURGE_FAILURE_MODE_ENABLED
: u32 = 1u32;
5963 pub struct SET_PURGE_FAILURE_MODE_INPUT
{
5966 impl ::core
::marker
::Copy
for SET_PURGE_FAILURE_MODE_INPUT {}
5967 impl ::core
::clone
::Clone
for SET_PURGE_FAILURE_MODE_INPUT
{
5968 fn clone(&self) -> Self {
5972 pub const SET_REPAIR_DISABLED_AND_BUGCHECK_ON_CORRUPT
: u32 = 16u32;
5973 pub const SET_REPAIR_ENABLED
: u32 = 1u32;
5974 pub const SET_REPAIR_VALID_MASK
: u32 = 25u32;
5975 pub const SET_REPAIR_WARN_ABOUT_DATA_LOSS
: u32 = 8u32;
5977 pub struct SHRINK_VOLUME_INFORMATION
{
5978 pub ShrinkRequestType
: SHRINK_VOLUME_REQUEST_TYPES
,
5980 pub NewNumberOfSectors
: i64,
5982 impl ::core
::marker
::Copy
for SHRINK_VOLUME_INFORMATION {}
5983 impl ::core
::clone
::Clone
for SHRINK_VOLUME_INFORMATION
{
5984 fn clone(&self) -> Self {
5988 pub type SHRINK_VOLUME_REQUEST_TYPES
= i32;
5989 pub const ShrinkPrepare
: SHRINK_VOLUME_REQUEST_TYPES
= 1i32;
5990 pub const ShrinkCommit
: SHRINK_VOLUME_REQUEST_TYPES
= 2i32;
5991 pub const ShrinkAbort
: SHRINK_VOLUME_REQUEST_TYPES
= 3i32;
5993 pub struct SI_COPYFILE
{
5994 pub SourceFileNameLength
: u32,
5995 pub DestinationFileNameLength
: u32,
5997 pub FileNameBuffer
: [u16; 1],
5999 impl ::core
::marker
::Copy
for SI_COPYFILE {}
6000 impl ::core
::clone
::Clone
for SI_COPYFILE
{
6001 fn clone(&self) -> Self {
6005 pub const SMART_ABORT_OFFLINE_SELFTEST
: u32 = 127u32;
6006 pub const SMART_CMD
: u32 = 176u32;
6007 pub const SMART_CYL_HI
: u32 = 194u32;
6008 pub const SMART_CYL_LOW
: u32 = 79u32;
6009 pub const SMART_ERROR_NO_MEM
: u32 = 7u32;
6010 pub const SMART_EXTENDED_SELFTEST_CAPTIVE
: u32 = 130u32;
6011 pub const SMART_EXTENDED_SELFTEST_OFFLINE
: u32 = 2u32;
6012 pub const SMART_GET_VERSION
: u32 = 475264u32;
6013 pub const SMART_IDE_ERROR
: u32 = 1u32;
6014 pub const SMART_INVALID_BUFFER
: u32 = 4u32;
6015 pub const SMART_INVALID_COMMAND
: u32 = 3u32;
6016 pub const SMART_INVALID_DRIVE
: u32 = 5u32;
6017 pub const SMART_INVALID_FLAG
: u32 = 2u32;
6018 pub const SMART_INVALID_IOCTL
: u32 = 6u32;
6019 pub const SMART_INVALID_REGISTER
: u32 = 8u32;
6020 pub const SMART_LOG_SECTOR_SIZE
: u32 = 512u32;
6021 pub const SMART_NOT_SUPPORTED
: u32 = 9u32;
6022 pub const SMART_NO_ERROR
: u32 = 0u32;
6023 pub const SMART_NO_IDE_DEVICE
: u32 = 10u32;
6024 pub const SMART_OFFLINE_ROUTINE_OFFLINE
: u32 = 0u32;
6025 pub const SMART_RCV_DRIVE_DATA
: u32 = 508040u32;
6026 pub const SMART_RCV_DRIVE_DATA_EX
: u32 = 458892u32;
6027 pub const SMART_READ_LOG
: u32 = 213u32;
6028 pub const SMART_SEND_DRIVE_COMMAND
: u32 = 508036u32;
6029 pub const SMART_SHORT_SELFTEST_CAPTIVE
: u32 = 129u32;
6030 pub const SMART_SHORT_SELFTEST_OFFLINE
: u32 = 1u32;
6031 pub const SMART_WRITE_LOG
: u32 = 214u32;
6033 pub struct SMB_SHARE_FLUSH_AND_PURGE_INPUT
{
6036 impl ::core
::marker
::Copy
for SMB_SHARE_FLUSH_AND_PURGE_INPUT {}
6037 impl ::core
::clone
::Clone
for SMB_SHARE_FLUSH_AND_PURGE_INPUT
{
6038 fn clone(&self) -> Self {
6043 pub struct SMB_SHARE_FLUSH_AND_PURGE_OUTPUT
{
6044 pub cEntriesPurged
: u32,
6046 impl ::core
::marker
::Copy
for SMB_SHARE_FLUSH_AND_PURGE_OUTPUT {}
6047 impl ::core
::clone
::Clone
for SMB_SHARE_FLUSH_AND_PURGE_OUTPUT
{
6048 fn clone(&self) -> Self {
6052 pub const SPACES_TRACKED_OFFSET_HEADER_FLAG
: u32 = 2u32;
6053 pub const SRB_TYPE_SCSI_REQUEST_BLOCK
: u32 = 0u32;
6054 pub const SRB_TYPE_STORAGE_REQUEST_BLOCK
: u32 = 1u32;
6056 pub struct STARTING_LCN_INPUT_BUFFER
{
6057 pub StartingLcn
: i64,
6059 impl ::core
::marker
::Copy
for STARTING_LCN_INPUT_BUFFER {}
6060 impl ::core
::clone
::Clone
for STARTING_LCN_INPUT_BUFFER
{
6061 fn clone(&self) -> Self {
6066 pub struct STARTING_LCN_INPUT_BUFFER_EX
{
6067 pub StartingLcn
: i64,
6070 impl ::core
::marker
::Copy
for STARTING_LCN_INPUT_BUFFER_EX {}
6071 impl ::core
::clone
::Clone
for STARTING_LCN_INPUT_BUFFER_EX
{
6072 fn clone(&self) -> Self {
6077 pub struct STARTING_VCN_INPUT_BUFFER
{
6078 pub StartingVcn
: i64,
6080 impl ::core
::marker
::Copy
for STARTING_VCN_INPUT_BUFFER {}
6081 impl ::core
::clone
::Clone
for STARTING_VCN_INPUT_BUFFER
{
6082 fn clone(&self) -> Self {
6087 pub struct STORAGE_ACCESS_ALIGNMENT_DESCRIPTOR
{
6090 pub BytesPerCacheLine
: u32,
6091 pub BytesOffsetForCacheAlignment
: u32,
6092 pub BytesPerLogicalSector
: u32,
6093 pub BytesPerPhysicalSector
: u32,
6094 pub BytesOffsetForSectorAlignment
: u32,
6096 impl ::core
::marker
::Copy
for STORAGE_ACCESS_ALIGNMENT_DESCRIPTOR {}
6097 impl ::core
::clone
::Clone
for STORAGE_ACCESS_ALIGNMENT_DESCRIPTOR
{
6098 fn clone(&self) -> Self {
6103 #[cfg(feature = "Win32_Foundation")]
6104 pub struct STORAGE_ADAPTER_DESCRIPTOR
{
6107 pub MaximumTransferLength
: u32,
6108 pub MaximumPhysicalPages
: u32,
6109 pub AlignmentMask
: u32,
6110 pub AdapterUsesPio
: super::super::Foundation
::BOOLEAN
,
6111 pub AdapterScansDown
: super::super::Foundation
::BOOLEAN
,
6112 pub CommandQueueing
: super::super::Foundation
::BOOLEAN
,
6113 pub AcceleratedTransfer
: super::super::Foundation
::BOOLEAN
,
6115 pub BusMajorVersion
: u16,
6116 pub BusMinorVersion
: u16,
6118 pub AddressType
: u8,
6120 #[cfg(feature = "Win32_Foundation")]
6121 impl ::core
::marker
::Copy
for STORAGE_ADAPTER_DESCRIPTOR {}
6122 #[cfg(feature = "Win32_Foundation")]
6123 impl ::core
::clone
::Clone
for STORAGE_ADAPTER_DESCRIPTOR
{
6124 fn clone(&self) -> Self {
6129 pub struct STORAGE_ADAPTER_SERIAL_NUMBER
{
6132 pub SerialNumber
: [u16; 128],
6134 impl ::core
::marker
::Copy
for STORAGE_ADAPTER_SERIAL_NUMBER {}
6135 impl ::core
::clone
::Clone
for STORAGE_ADAPTER_SERIAL_NUMBER
{
6136 fn clone(&self) -> Self {
6140 pub const STORAGE_ADAPTER_SERIAL_NUMBER_V1_MAX_LENGTH
: u32 = 128u32;
6141 pub const STORAGE_ADDRESS_TYPE_BTL8
: u32 = 0u32;
6143 #[cfg(feature = "Win32_Foundation")]
6144 pub struct STORAGE_ALLOCATE_BC_STREAM_INPUT
{
6146 pub RequestsPerPeriod
: u32,
6148 pub RetryFailures
: super::super::Foundation
::BOOLEAN
,
6149 pub Discardable
: super::super::Foundation
::BOOLEAN
,
6150 pub Reserved1
: [super::super::Foundation
::BOOLEAN
; 2],
6151 pub AccessType
: u32,
6152 pub AccessMode
: u32,
6154 #[cfg(feature = "Win32_Foundation")]
6155 impl ::core
::marker
::Copy
for STORAGE_ALLOCATE_BC_STREAM_INPUT {}
6156 #[cfg(feature = "Win32_Foundation")]
6157 impl ::core
::clone
::Clone
for STORAGE_ALLOCATE_BC_STREAM_INPUT
{
6158 fn clone(&self) -> Self {
6163 pub struct STORAGE_ALLOCATE_BC_STREAM_OUTPUT
{
6164 pub RequestSize
: u64,
6165 pub NumOutStandingRequests
: u32,
6167 impl ::core
::marker
::Copy
for STORAGE_ALLOCATE_BC_STREAM_OUTPUT {}
6168 impl ::core
::clone
::Clone
for STORAGE_ALLOCATE_BC_STREAM_OUTPUT
{
6169 fn clone(&self) -> Self {
6173 pub type STORAGE_ASSOCIATION_TYPE
= i32;
6174 pub const StorageIdAssocDevice
: STORAGE_ASSOCIATION_TYPE
= 0i32;
6175 pub const StorageIdAssocPort
: STORAGE_ASSOCIATION_TYPE
= 1i32;
6176 pub const StorageIdAssocTarget
: STORAGE_ASSOCIATION_TYPE
= 2i32;
6177 pub const STORAGE_ATTRIBUTE_ASYNC_EVENT_NOTIFICATION
: u32 = 16u32;
6178 pub const STORAGE_ATTRIBUTE_BLOCK_IO
: u32 = 2u32;
6179 pub const STORAGE_ATTRIBUTE_BYTE_ADDRESSABLE_IO
: u32 = 1u32;
6180 pub const STORAGE_ATTRIBUTE_DYNAMIC_PERSISTENCE
: u32 = 4u32;
6182 pub struct STORAGE_ATTRIBUTE_MGMT
{
6185 pub Action
: STORAGE_ATTRIBUTE_MGMT_ACTION
,
6188 impl ::core
::marker
::Copy
for STORAGE_ATTRIBUTE_MGMT {}
6189 impl ::core
::clone
::Clone
for STORAGE_ATTRIBUTE_MGMT
{
6190 fn clone(&self) -> Self {
6194 pub type STORAGE_ATTRIBUTE_MGMT_ACTION
= i32;
6195 pub const StorAttributeMgmt_ClearAttribute
: STORAGE_ATTRIBUTE_MGMT_ACTION
= 0i32;
6196 pub const StorAttributeMgmt_SetAttribute
: STORAGE_ATTRIBUTE_MGMT_ACTION
= 1i32;
6197 pub const StorAttributeMgmt_ResetAttribute
: STORAGE_ATTRIBUTE_MGMT_ACTION
= 2i32;
6198 pub const STORAGE_ATTRIBUTE_PERF_SIZE_INDEPENDENT
: u32 = 32u32;
6199 pub const STORAGE_ATTRIBUTE_VOLATILE
: u32 = 8u32;
6201 pub struct STORAGE_BREAK_RESERVATION_REQUEST
{
6208 impl ::core
::marker
::Copy
for STORAGE_BREAK_RESERVATION_REQUEST {}
6209 impl ::core
::clone
::Clone
for STORAGE_BREAK_RESERVATION_REQUEST
{
6210 fn clone(&self) -> Self {
6215 pub struct STORAGE_BUS_RESET_REQUEST
{
6218 impl ::core
::marker
::Copy
for STORAGE_BUS_RESET_REQUEST {}
6219 impl ::core
::clone
::Clone
for STORAGE_BUS_RESET_REQUEST
{
6220 fn clone(&self) -> Self {
6224 pub type STORAGE_COMPONENT_HEALTH_STATUS
= i32;
6225 pub const HealthStatusUnknown
: STORAGE_COMPONENT_HEALTH_STATUS
= 0i32;
6226 pub const HealthStatusNormal
: STORAGE_COMPONENT_HEALTH_STATUS
= 1i32;
6227 pub const HealthStatusThrottled
: STORAGE_COMPONENT_HEALTH_STATUS
= 2i32;
6228 pub const HealthStatusWarning
: STORAGE_COMPONENT_HEALTH_STATUS
= 3i32;
6229 pub const HealthStatusDisabled
: STORAGE_COMPONENT_HEALTH_STATUS
= 4i32;
6230 pub const HealthStatusFailed
: STORAGE_COMPONENT_HEALTH_STATUS
= 5i32;
6231 pub const STORAGE_COMPONENT_ROLE_CACHE
: u32 = 1u32;
6232 pub const STORAGE_COMPONENT_ROLE_DATA
: u32 = 4u32;
6233 pub const STORAGE_COMPONENT_ROLE_TIERING
: u32 = 2u32;
6235 pub struct STORAGE_COUNTER
{
6236 pub Type
: STORAGE_COUNTER_TYPE
,
6237 pub Value
: STORAGE_COUNTER_0
,
6239 impl ::core
::marker
::Copy
for STORAGE_COUNTER {}
6240 impl ::core
::clone
::Clone
for STORAGE_COUNTER
{
6241 fn clone(&self) -> Self {
6246 pub union STORAGE_COUNTER_0
{
6247 pub ManufactureDate
: STORAGE_COUNTER_0_0
,
6248 pub AsUlonglong
: u64,
6250 impl ::core
::marker
::Copy
for STORAGE_COUNTER_0 {}
6251 impl ::core
::clone
::Clone
for STORAGE_COUNTER_0
{
6252 fn clone(&self) -> Self {
6257 pub struct STORAGE_COUNTER_0_0
{
6261 impl ::core
::marker
::Copy
for STORAGE_COUNTER_0_0 {}
6262 impl ::core
::clone
::Clone
for STORAGE_COUNTER_0_0
{
6263 fn clone(&self) -> Self {
6268 pub struct STORAGE_COUNTERS
{
6271 pub NumberOfCounters
: u32,
6272 pub Counters
: [STORAGE_COUNTER
; 1],
6274 impl ::core
::marker
::Copy
for STORAGE_COUNTERS {}
6275 impl ::core
::clone
::Clone
for STORAGE_COUNTERS
{
6276 fn clone(&self) -> Self {
6280 pub type STORAGE_COUNTER_TYPE
= i32;
6281 pub const StorageCounterTypeUnknown
: STORAGE_COUNTER_TYPE
= 0i32;
6282 pub const StorageCounterTypeTemperatureCelsius
: STORAGE_COUNTER_TYPE
= 1i32;
6283 pub const StorageCounterTypeTemperatureCelsiusMax
: STORAGE_COUNTER_TYPE
= 2i32;
6284 pub const StorageCounterTypeReadErrorsTotal
: STORAGE_COUNTER_TYPE
= 3i32;
6285 pub const StorageCounterTypeReadErrorsCorrected
: STORAGE_COUNTER_TYPE
= 4i32;
6286 pub const StorageCounterTypeReadErrorsUncorrected
: STORAGE_COUNTER_TYPE
= 5i32;
6287 pub const StorageCounterTypeWriteErrorsTotal
: STORAGE_COUNTER_TYPE
= 6i32;
6288 pub const StorageCounterTypeWriteErrorsCorrected
: STORAGE_COUNTER_TYPE
= 7i32;
6289 pub const StorageCounterTypeWriteErrorsUncorrected
: STORAGE_COUNTER_TYPE
= 8i32;
6290 pub const StorageCounterTypeManufactureDate
: STORAGE_COUNTER_TYPE
= 9i32;
6291 pub const StorageCounterTypeStartStopCycleCount
: STORAGE_COUNTER_TYPE
= 10i32;
6292 pub const StorageCounterTypeStartStopCycleCountMax
: STORAGE_COUNTER_TYPE
= 11i32;
6293 pub const StorageCounterTypeLoadUnloadCycleCount
: STORAGE_COUNTER_TYPE
= 12i32;
6294 pub const StorageCounterTypeLoadUnloadCycleCountMax
: STORAGE_COUNTER_TYPE
= 13i32;
6295 pub const StorageCounterTypeWearPercentage
: STORAGE_COUNTER_TYPE
= 14i32;
6296 pub const StorageCounterTypeWearPercentageWarning
: STORAGE_COUNTER_TYPE
= 15i32;
6297 pub const StorageCounterTypeWearPercentageMax
: STORAGE_COUNTER_TYPE
= 16i32;
6298 pub const StorageCounterTypePowerOnHours
: STORAGE_COUNTER_TYPE
= 17i32;
6299 pub const StorageCounterTypeReadLatency100NSMax
: STORAGE_COUNTER_TYPE
= 18i32;
6300 pub const StorageCounterTypeWriteLatency100NSMax
: STORAGE_COUNTER_TYPE
= 19i32;
6301 pub const StorageCounterTypeFlushLatency100NSMax
: STORAGE_COUNTER_TYPE
= 20i32;
6302 pub const StorageCounterTypeMax
: STORAGE_COUNTER_TYPE
= 21i32;
6303 pub type STORAGE_CRYPTO_ALGORITHM_ID
= i32;
6304 pub const StorageCryptoAlgorithmUnknown
: STORAGE_CRYPTO_ALGORITHM_ID
= 0i32;
6305 pub const StorageCryptoAlgorithmXTSAES
: STORAGE_CRYPTO_ALGORITHM_ID
= 1i32;
6306 pub const StorageCryptoAlgorithmBitlockerAESCBC
: STORAGE_CRYPTO_ALGORITHM_ID
= 2i32;
6307 pub const StorageCryptoAlgorithmAESECB
: STORAGE_CRYPTO_ALGORITHM_ID
= 3i32;
6308 pub const StorageCryptoAlgorithmESSIVAESCBC
: STORAGE_CRYPTO_ALGORITHM_ID
= 4i32;
6309 pub const StorageCryptoAlgorithmMax
: STORAGE_CRYPTO_ALGORITHM_ID
= 5i32;
6311 pub struct STORAGE_CRYPTO_CAPABILITY
{
6314 pub CryptoCapabilityIndex
: u32,
6315 pub AlgorithmId
: STORAGE_CRYPTO_ALGORITHM_ID
,
6316 pub KeySize
: STORAGE_CRYPTO_KEY_SIZE
,
6317 pub DataUnitSizeBitmask
: u32,
6319 impl ::core
::marker
::Copy
for STORAGE_CRYPTO_CAPABILITY {}
6320 impl ::core
::clone
::Clone
for STORAGE_CRYPTO_CAPABILITY
{
6321 fn clone(&self) -> Self {
6325 pub const STORAGE_CRYPTO_CAPABILITY_VERSION_1
: u32 = 1u32;
6327 pub struct STORAGE_CRYPTO_DESCRIPTOR
{
6330 pub NumKeysSupported
: u32,
6331 pub NumCryptoCapabilities
: u32,
6332 pub CryptoCapabilities
: [STORAGE_CRYPTO_CAPABILITY
; 1],
6334 impl ::core
::marker
::Copy
for STORAGE_CRYPTO_DESCRIPTOR {}
6335 impl ::core
::clone
::Clone
for STORAGE_CRYPTO_DESCRIPTOR
{
6336 fn clone(&self) -> Self {
6340 pub const STORAGE_CRYPTO_DESCRIPTOR_VERSION_1
: u32 = 1u32;
6341 pub type STORAGE_CRYPTO_KEY_SIZE
= i32;
6342 pub const StorageCryptoKeySizeUnknown
: STORAGE_CRYPTO_KEY_SIZE
= 0i32;
6343 pub const StorageCryptoKeySize128Bits
: STORAGE_CRYPTO_KEY_SIZE
= 1i32;
6344 pub const StorageCryptoKeySize192Bits
: STORAGE_CRYPTO_KEY_SIZE
= 2i32;
6345 pub const StorageCryptoKeySize256Bits
: STORAGE_CRYPTO_KEY_SIZE
= 3i32;
6346 pub const StorageCryptoKeySize512Bits
: STORAGE_CRYPTO_KEY_SIZE
= 4i32;
6348 pub struct STORAGE_DESCRIPTOR_HEADER
{
6352 impl ::core
::marker
::Copy
for STORAGE_DESCRIPTOR_HEADER {}
6353 impl ::core
::clone
::Clone
for STORAGE_DESCRIPTOR_HEADER
{
6354 fn clone(&self) -> Self {
6359 pub struct STORAGE_DEVICE_ATTRIBUTES_DESCRIPTOR
{
6362 pub Attributes
: u64,
6364 impl ::core
::marker
::Copy
for STORAGE_DEVICE_ATTRIBUTES_DESCRIPTOR {}
6365 impl ::core
::clone
::Clone
for STORAGE_DEVICE_ATTRIBUTES_DESCRIPTOR
{
6366 fn clone(&self) -> Self {
6371 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_FileSystem"))]
6372 pub struct STORAGE_DEVICE_DESCRIPTOR
{
6376 pub DeviceTypeModifier
: u8,
6377 pub RemovableMedia
: super::super::Foundation
::BOOLEAN
,
6378 pub CommandQueueing
: super::super::Foundation
::BOOLEAN
,
6379 pub VendorIdOffset
: u32,
6380 pub ProductIdOffset
: u32,
6381 pub ProductRevisionOffset
: u32,
6382 pub SerialNumberOffset
: u32,
6383 pub BusType
: super::super::Storage
::FileSystem
::STORAGE_BUS_TYPE
,
6384 pub RawPropertiesLength
: u32,
6385 pub RawDeviceProperties
: [u8; 1],
6387 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_FileSystem"))]
6388 impl ::core
::marker
::Copy
for STORAGE_DEVICE_DESCRIPTOR {}
6389 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_FileSystem"))]
6390 impl ::core
::clone
::Clone
for STORAGE_DEVICE_DESCRIPTOR
{
6391 fn clone(&self) -> Self {
6396 pub struct STORAGE_DEVICE_FAULT_DOMAIN_DESCRIPTOR
{
6399 pub NumberOfFaultDomains
: u32,
6400 pub FaultDomainIds
: [::windows_sys
::core
::GUID
; 1],
6402 impl ::core
::marker
::Copy
for STORAGE_DEVICE_FAULT_DOMAIN_DESCRIPTOR {}
6403 impl ::core
::clone
::Clone
for STORAGE_DEVICE_FAULT_DOMAIN_DESCRIPTOR
{
6404 fn clone(&self) -> Self {
6408 pub const STORAGE_DEVICE_FLAGS_PAGE_83_DEVICEGUID
: u32 = 4u32;
6409 pub const STORAGE_DEVICE_FLAGS_RANDOM_DEVICEGUID_REASON_CONFLICT
: u32 = 1u32;
6410 pub const STORAGE_DEVICE_FLAGS_RANDOM_DEVICEGUID_REASON_NOHWID
: u32 = 2u32;
6411 pub type STORAGE_DEVICE_FORM_FACTOR
= i32;
6412 pub const FormFactorUnknown
: STORAGE_DEVICE_FORM_FACTOR
= 0i32;
6413 pub const FormFactor3_5
: STORAGE_DEVICE_FORM_FACTOR
= 1i32;
6414 pub const FormFactor2_5
: STORAGE_DEVICE_FORM_FACTOR
= 2i32;
6415 pub const FormFactor1_8
: STORAGE_DEVICE_FORM_FACTOR
= 3i32;
6416 pub const FormFactor1_8Less
: STORAGE_DEVICE_FORM_FACTOR
= 4i32;
6417 pub const FormFactorEmbedded
: STORAGE_DEVICE_FORM_FACTOR
= 5i32;
6418 pub const FormFactorMemoryCard
: STORAGE_DEVICE_FORM_FACTOR
= 6i32;
6419 pub const FormFactormSata
: STORAGE_DEVICE_FORM_FACTOR
= 7i32;
6420 pub const FormFactorM_2
: STORAGE_DEVICE_FORM_FACTOR
= 8i32;
6421 pub const FormFactorPCIeBoard
: STORAGE_DEVICE_FORM_FACTOR
= 9i32;
6422 pub const FormFactorDimm
: STORAGE_DEVICE_FORM_FACTOR
= 10i32;
6424 pub struct STORAGE_DEVICE_ID_DESCRIPTOR
{
6427 pub NumberOfIdentifiers
: u32,
6428 pub Identifiers
: [u8; 1],
6430 impl ::core
::marker
::Copy
for STORAGE_DEVICE_ID_DESCRIPTOR {}
6431 impl ::core
::clone
::Clone
for STORAGE_DEVICE_ID_DESCRIPTOR
{
6432 fn clone(&self) -> Self {
6437 pub struct STORAGE_DEVICE_IO_CAPABILITY_DESCRIPTOR
{
6440 pub LunMaxIoCount
: u32,
6441 pub AdapterMaxIoCount
: u32,
6443 impl ::core
::marker
::Copy
for STORAGE_DEVICE_IO_CAPABILITY_DESCRIPTOR {}
6444 impl ::core
::clone
::Clone
for STORAGE_DEVICE_IO_CAPABILITY_DESCRIPTOR
{
6445 fn clone(&self) -> Self {
6450 pub struct STORAGE_DEVICE_LED_STATE_DESCRIPTOR
{
6455 impl ::core
::marker
::Copy
for STORAGE_DEVICE_LED_STATE_DESCRIPTOR {}
6456 impl ::core
::clone
::Clone
for STORAGE_DEVICE_LED_STATE_DESCRIPTOR
{
6457 fn clone(&self) -> Self {
6462 pub struct STORAGE_DEVICE_LOCATION_DESCRIPTOR
{
6465 pub Location
: DEVICE_LOCATION
,
6466 pub StringOffset
: u32,
6468 impl ::core
::marker
::Copy
for STORAGE_DEVICE_LOCATION_DESCRIPTOR {}
6469 impl ::core
::clone
::Clone
for STORAGE_DEVICE_LOCATION_DESCRIPTOR
{
6470 fn clone(&self) -> Self {
6475 pub struct STORAGE_DEVICE_MANAGEMENT_STATUS
{
6478 pub Health
: STORAGE_DISK_HEALTH_STATUS
,
6479 pub NumberOfOperationalStatus
: u32,
6480 pub NumberOfAdditionalReasons
: u32,
6481 pub OperationalStatus
: [STORAGE_DISK_OPERATIONAL_STATUS
; 16],
6482 pub AdditionalReasons
: [STORAGE_OPERATIONAL_REASON
; 1],
6484 impl ::core
::marker
::Copy
for STORAGE_DEVICE_MANAGEMENT_STATUS {}
6485 impl ::core
::clone
::Clone
for STORAGE_DEVICE_MANAGEMENT_STATUS
{
6486 fn clone(&self) -> Self {
6490 pub const STORAGE_DEVICE_MAX_OPERATIONAL_STATUS
: u32 = 16u32;
6491 pub const STORAGE_DEVICE_NUMA_NODE_UNKNOWN
: u32 = 4294967295u32;
6493 pub struct STORAGE_DEVICE_NUMA_PROPERTY
{
6498 impl ::core
::marker
::Copy
for STORAGE_DEVICE_NUMA_PROPERTY {}
6499 impl ::core
::clone
::Clone
for STORAGE_DEVICE_NUMA_PROPERTY
{
6500 fn clone(&self) -> Self {
6505 pub struct STORAGE_DEVICE_NUMBER
{
6506 pub DeviceType
: u32,
6507 pub DeviceNumber
: u32,
6508 pub PartitionNumber
: u32,
6510 impl ::core
::marker
::Copy
for STORAGE_DEVICE_NUMBER {}
6511 impl ::core
::clone
::Clone
for STORAGE_DEVICE_NUMBER
{
6512 fn clone(&self) -> Self {
6517 pub struct STORAGE_DEVICE_NUMBERS
{
6520 pub NumberOfDevices
: u32,
6521 pub Devices
: [STORAGE_DEVICE_NUMBER
; 1],
6523 impl ::core
::marker
::Copy
for STORAGE_DEVICE_NUMBERS {}
6524 impl ::core
::clone
::Clone
for STORAGE_DEVICE_NUMBERS
{
6525 fn clone(&self) -> Self {
6530 pub struct STORAGE_DEVICE_NUMBER_EX
{
6534 pub DeviceType
: u32,
6535 pub DeviceNumber
: u32,
6536 pub DeviceGuid
: ::windows_sys
::core
::GUID
,
6537 pub PartitionNumber
: u32,
6539 impl ::core
::marker
::Copy
for STORAGE_DEVICE_NUMBER_EX {}
6540 impl ::core
::clone
::Clone
for STORAGE_DEVICE_NUMBER_EX
{
6541 fn clone(&self) -> Self {
6546 pub struct STORAGE_DEVICE_POWER_CAP
{
6549 pub Units
: STORAGE_DEVICE_POWER_CAP_UNITS
,
6552 impl ::core
::marker
::Copy
for STORAGE_DEVICE_POWER_CAP {}
6553 impl ::core
::clone
::Clone
for STORAGE_DEVICE_POWER_CAP
{
6554 fn clone(&self) -> Self {
6558 pub type STORAGE_DEVICE_POWER_CAP_UNITS
= i32;
6559 pub const StorageDevicePowerCapUnitsPercent
: STORAGE_DEVICE_POWER_CAP_UNITS
= 0i32;
6560 pub const StorageDevicePowerCapUnitsMilliwatts
: STORAGE_DEVICE_POWER_CAP_UNITS
= 1i32;
6561 pub const STORAGE_DEVICE_POWER_CAP_VERSION_V1
: u32 = 1u32;
6563 pub struct STORAGE_DEVICE_RESILIENCY_DESCRIPTOR
{
6566 pub NameOffset
: u32,
6567 pub NumberOfLogicalCopies
: u32,
6568 pub NumberOfPhysicalCopies
: u32,
6569 pub PhysicalDiskRedundancy
: u32,
6570 pub NumberOfColumns
: u32,
6571 pub Interleave
: u32,
6573 impl ::core
::marker
::Copy
for STORAGE_DEVICE_RESILIENCY_DESCRIPTOR {}
6574 impl ::core
::clone
::Clone
for STORAGE_DEVICE_RESILIENCY_DESCRIPTOR
{
6575 fn clone(&self) -> Self {
6580 #[cfg(feature = "Win32_Foundation")]
6581 pub struct STORAGE_DEVICE_SELF_ENCRYPTION_PROPERTY
{
6584 pub SupportsSelfEncryption
: super::super::Foundation
::BOOLEAN
,
6586 #[cfg(feature = "Win32_Foundation")]
6587 impl ::core
::marker
::Copy
for STORAGE_DEVICE_SELF_ENCRYPTION_PROPERTY {}
6588 #[cfg(feature = "Win32_Foundation")]
6589 impl ::core
::clone
::Clone
for STORAGE_DEVICE_SELF_ENCRYPTION_PROPERTY
{
6590 fn clone(&self) -> Self {
6595 pub struct STORAGE_DEVICE_TIERING_DESCRIPTOR
{
6599 pub TotalNumberOfTiers
: u32,
6600 pub NumberOfTiersReturned
: u32,
6601 pub Tiers
: [STORAGE_TIER
; 1],
6603 impl ::core
::marker
::Copy
for STORAGE_DEVICE_TIERING_DESCRIPTOR {}
6604 impl ::core
::clone
::Clone
for STORAGE_DEVICE_TIERING_DESCRIPTOR
{
6605 fn clone(&self) -> Self {
6610 pub struct STORAGE_DEVICE_UNSAFE_SHUTDOWN_COUNT
{
6613 pub UnsafeShutdownCount
: u32,
6615 impl ::core
::marker
::Copy
for STORAGE_DEVICE_UNSAFE_SHUTDOWN_COUNT {}
6616 impl ::core
::clone
::Clone
for STORAGE_DEVICE_UNSAFE_SHUTDOWN_COUNT
{
6617 fn clone(&self) -> Self {
6622 pub struct STORAGE_DIAGNOSTIC_DATA
{
6625 pub ProviderId
: ::windows_sys
::core
::GUID
,
6626 pub BufferSize
: u32,
6628 pub DiagnosticDataBuffer
: [u8; 1],
6630 impl ::core
::marker
::Copy
for STORAGE_DIAGNOSTIC_DATA {}
6631 impl ::core
::clone
::Clone
for STORAGE_DIAGNOSTIC_DATA
{
6632 fn clone(&self) -> Self {
6636 pub const STORAGE_DIAGNOSTIC_FLAG_ADAPTER_REQUEST
: u32 = 1u32;
6637 pub type STORAGE_DIAGNOSTIC_LEVEL
= i32;
6638 pub const StorageDiagnosticLevelDefault
: STORAGE_DIAGNOSTIC_LEVEL
= 0i32;
6639 pub const StorageDiagnosticLevelMax
: STORAGE_DIAGNOSTIC_LEVEL
= 1i32;
6641 pub struct STORAGE_DIAGNOSTIC_REQUEST
{
6645 pub TargetType
: STORAGE_DIAGNOSTIC_TARGET_TYPE
,
6646 pub Level
: STORAGE_DIAGNOSTIC_LEVEL
,
6648 impl ::core
::marker
::Copy
for STORAGE_DIAGNOSTIC_REQUEST {}
6649 impl ::core
::clone
::Clone
for STORAGE_DIAGNOSTIC_REQUEST
{
6650 fn clone(&self) -> Self {
6654 pub type STORAGE_DIAGNOSTIC_TARGET_TYPE
= i32;
6655 pub const StorageDiagnosticTargetTypeUndefined
: STORAGE_DIAGNOSTIC_TARGET_TYPE
= 0i32;
6656 pub const StorageDiagnosticTargetTypePort
: STORAGE_DIAGNOSTIC_TARGET_TYPE
= 1i32;
6657 pub const StorageDiagnosticTargetTypeMiniport
: STORAGE_DIAGNOSTIC_TARGET_TYPE
= 2i32;
6658 pub const StorageDiagnosticTargetTypeHbaFirmware
: STORAGE_DIAGNOSTIC_TARGET_TYPE
= 3i32;
6659 pub const StorageDiagnosticTargetTypeMax
: STORAGE_DIAGNOSTIC_TARGET_TYPE
= 4i32;
6660 pub type STORAGE_DISK_HEALTH_STATUS
= i32;
6661 pub const DiskHealthUnknown
: STORAGE_DISK_HEALTH_STATUS
= 0i32;
6662 pub const DiskHealthUnhealthy
: STORAGE_DISK_HEALTH_STATUS
= 1i32;
6663 pub const DiskHealthWarning
: STORAGE_DISK_HEALTH_STATUS
= 2i32;
6664 pub const DiskHealthHealthy
: STORAGE_DISK_HEALTH_STATUS
= 3i32;
6665 pub const DiskHealthMax
: STORAGE_DISK_HEALTH_STATUS
= 4i32;
6666 pub type STORAGE_DISK_OPERATIONAL_STATUS
= i32;
6667 pub const DiskOpStatusNone
: STORAGE_DISK_OPERATIONAL_STATUS
= 0i32;
6668 pub const DiskOpStatusUnknown
: STORAGE_DISK_OPERATIONAL_STATUS
= 1i32;
6669 pub const DiskOpStatusOk
: STORAGE_DISK_OPERATIONAL_STATUS
= 2i32;
6670 pub const DiskOpStatusPredictingFailure
: STORAGE_DISK_OPERATIONAL_STATUS
= 3i32;
6671 pub const DiskOpStatusInService
: STORAGE_DISK_OPERATIONAL_STATUS
= 4i32;
6672 pub const DiskOpStatusHardwareError
: STORAGE_DISK_OPERATIONAL_STATUS
= 5i32;
6673 pub const DiskOpStatusNotUsable
: STORAGE_DISK_OPERATIONAL_STATUS
= 6i32;
6674 pub const DiskOpStatusTransientError
: STORAGE_DISK_OPERATIONAL_STATUS
= 7i32;
6675 pub const DiskOpStatusMissing
: STORAGE_DISK_OPERATIONAL_STATUS
= 8i32;
6676 pub const STORAGE_EVENT_DEVICE_OPERATION
: u64 = 4u64;
6677 pub const STORAGE_EVENT_DEVICE_STATUS
: u64 = 2u64;
6678 pub const STORAGE_EVENT_MEDIA_STATUS
: u64 = 1u64;
6680 pub struct STORAGE_EVENT_NOTIFICATION
{
6685 impl ::core
::marker
::Copy
for STORAGE_EVENT_NOTIFICATION {}
6686 impl ::core
::clone
::Clone
for STORAGE_EVENT_NOTIFICATION
{
6687 fn clone(&self) -> Self {
6691 pub const STORAGE_EVENT_NOTIFICATION_VERSION_V1
: u32 = 1u32;
6693 #[cfg(feature = "Win32_Foundation")]
6694 pub struct STORAGE_FAILURE_PREDICTION_CONFIG
{
6697 pub Set
: super::super::Foundation
::BOOLEAN
,
6698 pub Enabled
: super::super::Foundation
::BOOLEAN
,
6701 #[cfg(feature = "Win32_Foundation")]
6702 impl ::core
::marker
::Copy
for STORAGE_FAILURE_PREDICTION_CONFIG {}
6703 #[cfg(feature = "Win32_Foundation")]
6704 impl ::core
::clone
::Clone
for STORAGE_FAILURE_PREDICTION_CONFIG
{
6705 fn clone(&self) -> Self {
6709 pub const STORAGE_FAILURE_PREDICTION_CONFIG_V1
: u32 = 1u32;
6711 pub struct STORAGE_FRU_ID_DESCRIPTOR
{
6714 pub IdentifierSize
: u32,
6715 pub Identifier
: [u8; 1],
6717 impl ::core
::marker
::Copy
for STORAGE_FRU_ID_DESCRIPTOR {}
6718 impl ::core
::clone
::Clone
for STORAGE_FRU_ID_DESCRIPTOR
{
6719 fn clone(&self) -> Self {
6724 pub struct STORAGE_GET_BC_PROPERTIES_OUTPUT
{
6725 pub MaximumRequestsPerPeriod
: u32,
6726 pub MinimumPeriod
: u32,
6727 pub MaximumRequestSize
: u64,
6728 pub EstimatedTimePerRequest
: u32,
6729 pub NumOutStandingRequests
: u32,
6730 pub RequestSize
: u64,
6732 impl ::core
::marker
::Copy
for STORAGE_GET_BC_PROPERTIES_OUTPUT {}
6733 impl ::core
::clone
::Clone
for STORAGE_GET_BC_PROPERTIES_OUTPUT
{
6734 fn clone(&self) -> Self {
6739 #[cfg(feature = "Win32_Foundation")]
6740 pub struct STORAGE_HOTPLUG_INFO
{
6742 pub MediaRemovable
: super::super::Foundation
::BOOLEAN
,
6743 pub MediaHotplug
: super::super::Foundation
::BOOLEAN
,
6744 pub DeviceHotplug
: super::super::Foundation
::BOOLEAN
,
6745 pub WriteCacheEnableOverride
: super::super::Foundation
::BOOLEAN
,
6747 #[cfg(feature = "Win32_Foundation")]
6748 impl ::core
::marker
::Copy
for STORAGE_HOTPLUG_INFO {}
6749 #[cfg(feature = "Win32_Foundation")]
6750 impl ::core
::clone
::Clone
for STORAGE_HOTPLUG_INFO
{
6751 fn clone(&self) -> Self {
6756 pub struct STORAGE_HW_ENDURANCE_DATA_DESCRIPTOR
{
6759 pub EnduranceInfo
: STORAGE_HW_ENDURANCE_INFO
,
6761 impl ::core
::marker
::Copy
for STORAGE_HW_ENDURANCE_DATA_DESCRIPTOR {}
6762 impl ::core
::clone
::Clone
for STORAGE_HW_ENDURANCE_DATA_DESCRIPTOR
{
6763 fn clone(&self) -> Self {
6768 pub struct STORAGE_HW_ENDURANCE_INFO
{
6769 pub ValidFields
: u32,
6771 pub Flags
: STORAGE_HW_ENDURANCE_INFO_0
,
6772 pub LifePercentage
: u32,
6773 pub BytesReadCount
: [u8; 16],
6774 pub ByteWriteCount
: [u8; 16],
6776 impl ::core
::marker
::Copy
for STORAGE_HW_ENDURANCE_INFO {}
6777 impl ::core
::clone
::Clone
for STORAGE_HW_ENDURANCE_INFO
{
6778 fn clone(&self) -> Self {
6783 pub struct STORAGE_HW_ENDURANCE_INFO_0
{
6786 impl ::core
::marker
::Copy
for STORAGE_HW_ENDURANCE_INFO_0 {}
6787 impl ::core
::clone
::Clone
for STORAGE_HW_ENDURANCE_INFO_0
{
6788 fn clone(&self) -> Self {
6793 pub struct STORAGE_HW_FIRMWARE_ACTIVATE
{
6798 pub Reserved0
: [u8; 3],
6800 impl ::core
::marker
::Copy
for STORAGE_HW_FIRMWARE_ACTIVATE {}
6801 impl ::core
::clone
::Clone
for STORAGE_HW_FIRMWARE_ACTIVATE
{
6802 fn clone(&self) -> Self {
6807 pub struct STORAGE_HW_FIRMWARE_DOWNLOAD
{
6812 pub Reserved
: [u8; 3],
6814 pub BufferSize
: u64,
6815 pub ImageBuffer
: [u8; 1],
6817 impl ::core
::marker
::Copy
for STORAGE_HW_FIRMWARE_DOWNLOAD {}
6818 impl ::core
::clone
::Clone
for STORAGE_HW_FIRMWARE_DOWNLOAD
{
6819 fn clone(&self) -> Self {
6824 pub struct STORAGE_HW_FIRMWARE_DOWNLOAD_V2
{
6829 pub Reserved
: [u8; 3],
6831 pub BufferSize
: u64,
6834 pub ImageBuffer
: [u8; 1],
6836 impl ::core
::marker
::Copy
for STORAGE_HW_FIRMWARE_DOWNLOAD_V2 {}
6837 impl ::core
::clone
::Clone
for STORAGE_HW_FIRMWARE_DOWNLOAD_V2
{
6838 fn clone(&self) -> Self {
6843 #[cfg(feature = "Win32_Foundation")]
6844 pub struct STORAGE_HW_FIRMWARE_INFO
{
6850 pub PendingActivateSlot
: u8,
6851 pub FirmwareShared
: super::super::Foundation
::BOOLEAN
,
6852 pub Reserved
: [u8; 3],
6853 pub ImagePayloadAlignment
: u32,
6854 pub ImagePayloadMaxSize
: u32,
6855 pub Slot
: [STORAGE_HW_FIRMWARE_SLOT_INFO
; 1],
6857 #[cfg(feature = "Win32_Foundation")]
6858 impl ::core
::marker
::Copy
for STORAGE_HW_FIRMWARE_INFO {}
6859 #[cfg(feature = "Win32_Foundation")]
6860 impl ::core
::clone
::Clone
for STORAGE_HW_FIRMWARE_INFO
{
6861 fn clone(&self) -> Self {
6866 pub struct STORAGE_HW_FIRMWARE_INFO_QUERY
{
6872 impl ::core
::marker
::Copy
for STORAGE_HW_FIRMWARE_INFO_QUERY {}
6873 impl ::core
::clone
::Clone
for STORAGE_HW_FIRMWARE_INFO_QUERY
{
6874 fn clone(&self) -> Self {
6878 pub const STORAGE_HW_FIRMWARE_INVALID_SLOT
: u32 = 255u32;
6879 pub const STORAGE_HW_FIRMWARE_REQUEST_FLAG_CONTROLLER
: u32 = 1u32;
6880 pub const STORAGE_HW_FIRMWARE_REQUEST_FLAG_FIRST_SEGMENT
: u32 = 4u32;
6881 pub const STORAGE_HW_FIRMWARE_REQUEST_FLAG_LAST_SEGMENT
: u32 = 2u32;
6882 pub const STORAGE_HW_FIRMWARE_REQUEST_FLAG_SWITCH_TO_EXISTING_FIRMWARE
: u32 = 2147483648u32;
6883 pub const STORAGE_HW_FIRMWARE_REVISION_LENGTH
: u32 = 16u32;
6885 pub struct STORAGE_HW_FIRMWARE_SLOT_INFO
{
6890 pub Reserved1
: [u8; 6],
6891 pub Revision
: [u8; 16],
6893 impl ::core
::marker
::Copy
for STORAGE_HW_FIRMWARE_SLOT_INFO {}
6894 impl ::core
::clone
::Clone
for STORAGE_HW_FIRMWARE_SLOT_INFO
{
6895 fn clone(&self) -> Self {
6900 pub struct STORAGE_IDENTIFIER
{
6901 pub CodeSet
: STORAGE_IDENTIFIER_CODE_SET
,
6902 pub Type
: STORAGE_IDENTIFIER_TYPE
,
6903 pub IdentifierSize
: u16,
6904 pub NextOffset
: u16,
6905 pub Association
: STORAGE_ASSOCIATION_TYPE
,
6906 pub Identifier
: [u8; 1],
6908 impl ::core
::marker
::Copy
for STORAGE_IDENTIFIER {}
6909 impl ::core
::clone
::Clone
for STORAGE_IDENTIFIER
{
6910 fn clone(&self) -> Self {
6914 pub type STORAGE_IDENTIFIER_CODE_SET
= i32;
6915 pub const StorageIdCodeSetReserved
: STORAGE_IDENTIFIER_CODE_SET
= 0i32;
6916 pub const StorageIdCodeSetBinary
: STORAGE_IDENTIFIER_CODE_SET
= 1i32;
6917 pub const StorageIdCodeSetAscii
: STORAGE_IDENTIFIER_CODE_SET
= 2i32;
6918 pub const StorageIdCodeSetUtf8
: STORAGE_IDENTIFIER_CODE_SET
= 3i32;
6919 pub type STORAGE_IDENTIFIER_TYPE
= i32;
6920 pub const StorageIdTypeVendorSpecific
: STORAGE_IDENTIFIER_TYPE
= 0i32;
6921 pub const StorageIdTypeVendorId
: STORAGE_IDENTIFIER_TYPE
= 1i32;
6922 pub const StorageIdTypeEUI64
: STORAGE_IDENTIFIER_TYPE
= 2i32;
6923 pub const StorageIdTypeFCPHName
: STORAGE_IDENTIFIER_TYPE
= 3i32;
6924 pub const StorageIdTypePortRelative
: STORAGE_IDENTIFIER_TYPE
= 4i32;
6925 pub const StorageIdTypeTargetPortGroup
: STORAGE_IDENTIFIER_TYPE
= 5i32;
6926 pub const StorageIdTypeLogicalUnitGroup
: STORAGE_IDENTIFIER_TYPE
= 6i32;
6927 pub const StorageIdTypeMD5LogicalUnitIdentifier
: STORAGE_IDENTIFIER_TYPE
= 7i32;
6928 pub const StorageIdTypeScsiNameString
: STORAGE_IDENTIFIER_TYPE
= 8i32;
6930 pub struct STORAGE_IDLE_POWER
{
6934 pub D3IdleTimeout
: u32,
6936 impl ::core
::marker
::Copy
for STORAGE_IDLE_POWER {}
6937 impl ::core
::clone
::Clone
for STORAGE_IDLE_POWER
{
6938 fn clone(&self) -> Self {
6943 pub struct STORAGE_IDLE_POWERUP_REASON
{
6946 pub PowerupReason
: STORAGE_POWERUP_REASON_TYPE
,
6948 impl ::core
::marker
::Copy
for STORAGE_IDLE_POWERUP_REASON {}
6949 impl ::core
::clone
::Clone
for STORAGE_IDLE_POWERUP_REASON
{
6950 fn clone(&self) -> Self {
6954 pub const STORAGE_IDLE_POWERUP_REASON_VERSION_V1
: u32 = 1u32;
6955 pub type STORAGE_ID_NAA_FORMAT
= i32;
6956 pub const StorageIdNAAFormatIEEEExtended
: STORAGE_ID_NAA_FORMAT
= 2i32;
6957 pub const StorageIdNAAFormatIEEERegistered
: STORAGE_ID_NAA_FORMAT
= 3i32;
6958 pub const StorageIdNAAFormatIEEEERegisteredExtended
: STORAGE_ID_NAA_FORMAT
= 5i32;
6960 pub struct STORAGE_LB_PROVISIONING_MAP_RESOURCES
{
6964 pub Reserved1
: [u8; 3],
6966 pub Reserved3
: [u8; 3],
6967 pub AvailableMappingResources
: u64,
6968 pub UsedMappingResources
: u64,
6970 impl ::core
::marker
::Copy
for STORAGE_LB_PROVISIONING_MAP_RESOURCES {}
6971 impl ::core
::clone
::Clone
for STORAGE_LB_PROVISIONING_MAP_RESOURCES
{
6972 fn clone(&self) -> Self {
6977 pub struct STORAGE_MEDIA_SERIAL_NUMBER_DATA
{
6979 pub SerialNumberLength
: u16,
6980 pub SerialNumber
: [u8; 1],
6982 impl ::core
::marker
::Copy
for STORAGE_MEDIA_SERIAL_NUMBER_DATA {}
6983 impl ::core
::clone
::Clone
for STORAGE_MEDIA_SERIAL_NUMBER_DATA
{
6984 fn clone(&self) -> Self {
6988 pub type STORAGE_MEDIA_TYPE
= i32;
6989 pub const DDS_4mm
: STORAGE_MEDIA_TYPE
= 32i32;
6990 pub const MiniQic
: STORAGE_MEDIA_TYPE
= 33i32;
6991 pub const Travan
: STORAGE_MEDIA_TYPE
= 34i32;
6992 pub const QIC
: STORAGE_MEDIA_TYPE
= 35i32;
6993 pub const MP_8mm
: STORAGE_MEDIA_TYPE
= 36i32;
6994 pub const AME_8mm
: STORAGE_MEDIA_TYPE
= 37i32;
6995 pub const AIT1_8mm
: STORAGE_MEDIA_TYPE
= 38i32;
6996 pub const DLT
: STORAGE_MEDIA_TYPE
= 39i32;
6997 pub const NCTP
: STORAGE_MEDIA_TYPE
= 40i32;
6998 pub const IBM_3480
: STORAGE_MEDIA_TYPE
= 41i32;
6999 pub const IBM_3490E
: STORAGE_MEDIA_TYPE
= 42i32;
7000 pub const IBM_Magstar_3590
: STORAGE_MEDIA_TYPE
= 43i32;
7001 pub const IBM_Magstar_MP
: STORAGE_MEDIA_TYPE
= 44i32;
7002 pub const STK_DATA_D3
: STORAGE_MEDIA_TYPE
= 45i32;
7003 pub const SONY_DTF
: STORAGE_MEDIA_TYPE
= 46i32;
7004 pub const DV_6mm
: STORAGE_MEDIA_TYPE
= 47i32;
7005 pub const DMI
: STORAGE_MEDIA_TYPE
= 48i32;
7006 pub const SONY_D2
: STORAGE_MEDIA_TYPE
= 49i32;
7007 pub const CLEANER_CARTRIDGE
: STORAGE_MEDIA_TYPE
= 50i32;
7008 pub const CD_ROM
: STORAGE_MEDIA_TYPE
= 51i32;
7009 pub const CD_R
: STORAGE_MEDIA_TYPE
= 52i32;
7010 pub const CD_RW
: STORAGE_MEDIA_TYPE
= 53i32;
7011 pub const DVD_ROM
: STORAGE_MEDIA_TYPE
= 54i32;
7012 pub const DVD_R
: STORAGE_MEDIA_TYPE
= 55i32;
7013 pub const DVD_RW
: STORAGE_MEDIA_TYPE
= 56i32;
7014 pub const MO_3_RW
: STORAGE_MEDIA_TYPE
= 57i32;
7015 pub const MO_5_WO
: STORAGE_MEDIA_TYPE
= 58i32;
7016 pub const MO_5_RW
: STORAGE_MEDIA_TYPE
= 59i32;
7017 pub const MO_5_LIMDOW
: STORAGE_MEDIA_TYPE
= 60i32;
7018 pub const PC_5_WO
: STORAGE_MEDIA_TYPE
= 61i32;
7019 pub const PC_5_RW
: STORAGE_MEDIA_TYPE
= 62i32;
7020 pub const PD_5_RW
: STORAGE_MEDIA_TYPE
= 63i32;
7021 pub const ABL_5_WO
: STORAGE_MEDIA_TYPE
= 64i32;
7022 pub const PINNACLE_APEX_5_RW
: STORAGE_MEDIA_TYPE
= 65i32;
7023 pub const SONY_12_WO
: STORAGE_MEDIA_TYPE
= 66i32;
7024 pub const PHILIPS_12_WO
: STORAGE_MEDIA_TYPE
= 67i32;
7025 pub const HITACHI_12_WO
: STORAGE_MEDIA_TYPE
= 68i32;
7026 pub const CYGNET_12_WO
: STORAGE_MEDIA_TYPE
= 69i32;
7027 pub const KODAK_14_WO
: STORAGE_MEDIA_TYPE
= 70i32;
7028 pub const MO_NFR_525
: STORAGE_MEDIA_TYPE
= 71i32;
7029 pub const NIKON_12_RW
: STORAGE_MEDIA_TYPE
= 72i32;
7030 pub const IOMEGA_ZIP
: STORAGE_MEDIA_TYPE
= 73i32;
7031 pub const IOMEGA_JAZ
: STORAGE_MEDIA_TYPE
= 74i32;
7032 pub const SYQUEST_EZ135
: STORAGE_MEDIA_TYPE
= 75i32;
7033 pub const SYQUEST_EZFLYER
: STORAGE_MEDIA_TYPE
= 76i32;
7034 pub const SYQUEST_SYJET
: STORAGE_MEDIA_TYPE
= 77i32;
7035 pub const AVATAR_F2
: STORAGE_MEDIA_TYPE
= 78i32;
7036 pub const MP2_8mm
: STORAGE_MEDIA_TYPE
= 79i32;
7037 pub const DST_S
: STORAGE_MEDIA_TYPE
= 80i32;
7038 pub const DST_M
: STORAGE_MEDIA_TYPE
= 81i32;
7039 pub const DST_L
: STORAGE_MEDIA_TYPE
= 82i32;
7040 pub const VXATape_1
: STORAGE_MEDIA_TYPE
= 83i32;
7041 pub const VXATape_2
: STORAGE_MEDIA_TYPE
= 84i32;
7042 pub const STK_9840
: STORAGE_MEDIA_TYPE
= 85i32;
7043 pub const LTO_Ultrium
: STORAGE_MEDIA_TYPE
= 86i32;
7044 pub const LTO_Accelis
: STORAGE_MEDIA_TYPE
= 87i32;
7045 pub const DVD_RAM
: STORAGE_MEDIA_TYPE
= 88i32;
7046 pub const AIT_8mm
: STORAGE_MEDIA_TYPE
= 89i32;
7047 pub const ADR_1
: STORAGE_MEDIA_TYPE
= 90i32;
7048 pub const ADR_2
: STORAGE_MEDIA_TYPE
= 91i32;
7049 pub const STK_9940
: STORAGE_MEDIA_TYPE
= 92i32;
7050 pub const SAIT
: STORAGE_MEDIA_TYPE
= 93i32;
7051 pub const VXATape
: STORAGE_MEDIA_TYPE
= 94i32;
7053 pub struct STORAGE_MEDIUM_PRODUCT_TYPE_DESCRIPTOR
{
7056 pub MediumProductType
: u32,
7058 impl ::core
::marker
::Copy
for STORAGE_MEDIUM_PRODUCT_TYPE_DESCRIPTOR {}
7059 impl ::core
::clone
::Clone
for STORAGE_MEDIUM_PRODUCT_TYPE_DESCRIPTOR
{
7060 fn clone(&self) -> Self {
7065 #[cfg(feature = "Win32_Foundation")]
7066 pub struct STORAGE_MINIPORT_DESCRIPTOR
{
7069 pub Portdriver
: STORAGE_PORT_CODE_SET
,
7070 pub LUNResetSupported
: super::super::Foundation
::BOOLEAN
,
7071 pub TargetResetSupported
: super::super::Foundation
::BOOLEAN
,
7072 pub IoTimeoutValue
: u16,
7073 pub ExtraIoInfoSupported
: super::super::Foundation
::BOOLEAN
,
7074 pub Flags
: STORAGE_MINIPORT_DESCRIPTOR_0
,
7075 pub Reserved0
: [u8; 2],
7078 #[cfg(feature = "Win32_Foundation")]
7079 impl ::core
::marker
::Copy
for STORAGE_MINIPORT_DESCRIPTOR {}
7080 #[cfg(feature = "Win32_Foundation")]
7081 impl ::core
::clone
::Clone
for STORAGE_MINIPORT_DESCRIPTOR
{
7082 fn clone(&self) -> Self {
7087 #[cfg(feature = "Win32_Foundation")]
7088 pub union STORAGE_MINIPORT_DESCRIPTOR_0
{
7089 pub Anonymous
: STORAGE_MINIPORT_DESCRIPTOR_0_0
,
7092 #[cfg(feature = "Win32_Foundation")]
7093 impl ::core
::marker
::Copy
for STORAGE_MINIPORT_DESCRIPTOR_0 {}
7094 #[cfg(feature = "Win32_Foundation")]
7095 impl ::core
::clone
::Clone
for STORAGE_MINIPORT_DESCRIPTOR_0
{
7096 fn clone(&self) -> Self {
7101 #[cfg(feature = "Win32_Foundation")]
7102 pub struct STORAGE_MINIPORT_DESCRIPTOR_0_0
{
7105 #[cfg(feature = "Win32_Foundation")]
7106 impl ::core
::marker
::Copy
for STORAGE_MINIPORT_DESCRIPTOR_0_0 {}
7107 #[cfg(feature = "Win32_Foundation")]
7108 impl ::core
::clone
::Clone
for STORAGE_MINIPORT_DESCRIPTOR_0_0
{
7109 fn clone(&self) -> Self {
7113 pub const STORAGE_OFFLOAD_MAX_TOKEN_LENGTH
: u32 = 512u32;
7115 pub struct STORAGE_OFFLOAD_READ_OUTPUT
{
7116 pub OffloadReadFlags
: u32,
7118 pub LengthProtected
: u64,
7119 pub TokenLength
: u32,
7120 pub Token
: STORAGE_OFFLOAD_TOKEN
,
7122 impl ::core
::marker
::Copy
for STORAGE_OFFLOAD_READ_OUTPUT {}
7123 impl ::core
::clone
::Clone
for STORAGE_OFFLOAD_READ_OUTPUT
{
7124 fn clone(&self) -> Self {
7128 pub const STORAGE_OFFLOAD_READ_RANGE_TRUNCATED
: u32 = 1u32;
7130 pub struct STORAGE_OFFLOAD_TOKEN
{
7131 pub TokenType
: [u8; 4],
7132 pub Reserved
: [u8; 2],
7133 pub TokenIdLength
: [u8; 2],
7134 pub Anonymous
: STORAGE_OFFLOAD_TOKEN_0
,
7136 impl ::core
::marker
::Copy
for STORAGE_OFFLOAD_TOKEN {}
7137 impl ::core
::clone
::Clone
for STORAGE_OFFLOAD_TOKEN
{
7138 fn clone(&self) -> Self {
7143 pub union STORAGE_OFFLOAD_TOKEN_0
{
7144 pub StorageOffloadZeroDataToken
: STORAGE_OFFLOAD_TOKEN_0_0
,
7145 pub Token
: [u8; 504],
7147 impl ::core
::marker
::Copy
for STORAGE_OFFLOAD_TOKEN_0 {}
7148 impl ::core
::clone
::Clone
for STORAGE_OFFLOAD_TOKEN_0
{
7149 fn clone(&self) -> Self {
7154 pub struct STORAGE_OFFLOAD_TOKEN_0_0
{
7155 pub Reserved2
: [u8; 504],
7157 impl ::core
::marker
::Copy
for STORAGE_OFFLOAD_TOKEN_0_0 {}
7158 impl ::core
::clone
::Clone
for STORAGE_OFFLOAD_TOKEN_0_0
{
7159 fn clone(&self) -> Self {
7163 pub const STORAGE_OFFLOAD_TOKEN_ID_LENGTH
: u32 = 504u32;
7164 pub const STORAGE_OFFLOAD_TOKEN_INVALID
: u32 = 2u32;
7165 pub const STORAGE_OFFLOAD_TOKEN_TYPE_ZERO_DATA
: u32 = 4294901761u32;
7167 pub struct STORAGE_OFFLOAD_WRITE_OUTPUT
{
7168 pub OffloadWriteFlags
: u32,
7170 pub LengthCopied
: u64,
7172 impl ::core
::marker
::Copy
for STORAGE_OFFLOAD_WRITE_OUTPUT {}
7173 impl ::core
::clone
::Clone
for STORAGE_OFFLOAD_WRITE_OUTPUT
{
7174 fn clone(&self) -> Self {
7178 pub const STORAGE_OFFLOAD_WRITE_RANGE_TRUNCATED
: u32 = 1u32;
7180 pub struct STORAGE_OPERATIONAL_REASON
{
7183 pub Reason
: STORAGE_OPERATIONAL_STATUS_REASON
,
7184 pub RawBytes
: STORAGE_OPERATIONAL_REASON_0
,
7186 impl ::core
::marker
::Copy
for STORAGE_OPERATIONAL_REASON {}
7187 impl ::core
::clone
::Clone
for STORAGE_OPERATIONAL_REASON
{
7188 fn clone(&self) -> Self {
7193 pub union STORAGE_OPERATIONAL_REASON_0
{
7194 pub ScsiSenseKey
: STORAGE_OPERATIONAL_REASON_0_1
,
7195 pub NVDIMM_N
: STORAGE_OPERATIONAL_REASON_0_0
,
7198 impl ::core
::marker
::Copy
for STORAGE_OPERATIONAL_REASON_0 {}
7199 impl ::core
::clone
::Clone
for STORAGE_OPERATIONAL_REASON_0
{
7200 fn clone(&self) -> Self {
7205 pub struct STORAGE_OPERATIONAL_REASON_0_0
{
7206 pub CriticalHealth
: u8,
7207 pub ModuleHealth
: [u8; 2],
7208 pub ErrorThresholdStatus
: u8,
7210 impl ::core
::marker
::Copy
for STORAGE_OPERATIONAL_REASON_0_0 {}
7211 impl ::core
::clone
::Clone
for STORAGE_OPERATIONAL_REASON_0_0
{
7212 fn clone(&self) -> Self {
7217 pub struct STORAGE_OPERATIONAL_REASON_0_1
{
7223 impl ::core
::marker
::Copy
for STORAGE_OPERATIONAL_REASON_0_1 {}
7224 impl ::core
::clone
::Clone
for STORAGE_OPERATIONAL_REASON_0_1
{
7225 fn clone(&self) -> Self {
7229 pub type STORAGE_OPERATIONAL_STATUS_REASON
= i32;
7230 pub const DiskOpReasonUnknown
: STORAGE_OPERATIONAL_STATUS_REASON
= 0i32;
7231 pub const DiskOpReasonScsiSenseCode
: STORAGE_OPERATIONAL_STATUS_REASON
= 1i32;
7232 pub const DiskOpReasonMedia
: STORAGE_OPERATIONAL_STATUS_REASON
= 2i32;
7233 pub const DiskOpReasonIo
: STORAGE_OPERATIONAL_STATUS_REASON
= 3i32;
7234 pub const DiskOpReasonThresholdExceeded
: STORAGE_OPERATIONAL_STATUS_REASON
= 4i32;
7235 pub const DiskOpReasonLostData
: STORAGE_OPERATIONAL_STATUS_REASON
= 5i32;
7236 pub const DiskOpReasonEnergySource
: STORAGE_OPERATIONAL_STATUS_REASON
= 6i32;
7237 pub const DiskOpReasonConfiguration
: STORAGE_OPERATIONAL_STATUS_REASON
= 7i32;
7238 pub const DiskOpReasonDeviceController
: STORAGE_OPERATIONAL_STATUS_REASON
= 8i32;
7239 pub const DiskOpReasonMediaController
: STORAGE_OPERATIONAL_STATUS_REASON
= 9i32;
7240 pub const DiskOpReasonComponent
: STORAGE_OPERATIONAL_STATUS_REASON
= 10i32;
7241 pub const DiskOpReasonNVDIMM_N
: STORAGE_OPERATIONAL_STATUS_REASON
= 11i32;
7242 pub const DiskOpReasonBackgroundOperation
: STORAGE_OPERATIONAL_STATUS_REASON
= 12i32;
7243 pub const DiskOpReasonInvalidFirmware
: STORAGE_OPERATIONAL_STATUS_REASON
= 13i32;
7244 pub const DiskOpReasonHealthCheck
: STORAGE_OPERATIONAL_STATUS_REASON
= 14i32;
7245 pub const DiskOpReasonLostDataPersistence
: STORAGE_OPERATIONAL_STATUS_REASON
= 15i32;
7246 pub const DiskOpReasonDisabledByPlatform
: STORAGE_OPERATIONAL_STATUS_REASON
= 16i32;
7247 pub const DiskOpReasonLostWritePersistence
: STORAGE_OPERATIONAL_STATUS_REASON
= 17i32;
7248 pub const DiskOpReasonDataPersistenceLossImminent
: STORAGE_OPERATIONAL_STATUS_REASON
= 18i32;
7249 pub const DiskOpReasonWritePersistenceLossImminent
: STORAGE_OPERATIONAL_STATUS_REASON
= 19i32;
7250 pub const DiskOpReasonMax
: STORAGE_OPERATIONAL_STATUS_REASON
= 20i32;
7252 #[cfg(feature = "Win32_Foundation")]
7253 pub struct STORAGE_PHYSICAL_ADAPTER_DATA
{
7255 pub HealthStatus
: STORAGE_COMPONENT_HEALTH_STATUS
,
7256 pub CommandProtocol
: STORAGE_PROTOCOL_TYPE
,
7257 pub SpecVersion
: STORAGE_SPEC_VERSION
,
7258 pub Vendor
: [u8; 8],
7259 pub Model
: [u8; 40],
7260 pub FirmwareRevision
: [u8; 16],
7261 pub PhysicalLocation
: [u8; 32],
7262 pub ExpanderConnected
: super::super::Foundation
::BOOLEAN
,
7263 pub Reserved0
: [u8; 3],
7264 pub Reserved1
: [u32; 3],
7266 #[cfg(feature = "Win32_Foundation")]
7267 impl ::core
::marker
::Copy
for STORAGE_PHYSICAL_ADAPTER_DATA {}
7268 #[cfg(feature = "Win32_Foundation")]
7269 impl ::core
::clone
::Clone
for STORAGE_PHYSICAL_ADAPTER_DATA
{
7270 fn clone(&self) -> Self {
7275 pub struct STORAGE_PHYSICAL_DEVICE_DATA
{
7278 pub HealthStatus
: STORAGE_COMPONENT_HEALTH_STATUS
,
7279 pub CommandProtocol
: STORAGE_PROTOCOL_TYPE
,
7280 pub SpecVersion
: STORAGE_SPEC_VERSION
,
7281 pub FormFactor
: STORAGE_DEVICE_FORM_FACTOR
,
7282 pub Vendor
: [u8; 8],
7283 pub Model
: [u8; 40],
7284 pub FirmwareRevision
: [u8; 16],
7286 pub PhysicalLocation
: [u8; 32],
7287 pub Reserved
: [u32; 2],
7289 impl ::core
::marker
::Copy
for STORAGE_PHYSICAL_DEVICE_DATA {}
7290 impl ::core
::clone
::Clone
for STORAGE_PHYSICAL_DEVICE_DATA
{
7291 fn clone(&self) -> Self {
7296 pub struct STORAGE_PHYSICAL_NODE_DATA
{
7298 pub AdapterCount
: u32,
7299 pub AdapterDataLength
: u32,
7300 pub AdapterDataOffset
: u32,
7301 pub DeviceCount
: u32,
7302 pub DeviceDataLength
: u32,
7303 pub DeviceDataOffset
: u32,
7304 pub Reserved
: [u32; 3],
7306 impl ::core
::marker
::Copy
for STORAGE_PHYSICAL_NODE_DATA {}
7307 impl ::core
::clone
::Clone
for STORAGE_PHYSICAL_NODE_DATA
{
7308 fn clone(&self) -> Self {
7313 pub struct STORAGE_PHYSICAL_TOPOLOGY_DESCRIPTOR
{
7318 pub Node
: [STORAGE_PHYSICAL_NODE_DATA
; 1],
7320 impl ::core
::marker
::Copy
for STORAGE_PHYSICAL_TOPOLOGY_DESCRIPTOR {}
7321 impl ::core
::clone
::Clone
for STORAGE_PHYSICAL_TOPOLOGY_DESCRIPTOR
{
7322 fn clone(&self) -> Self {
7326 pub type STORAGE_PORT_CODE_SET
= i32;
7327 pub const StoragePortCodeSetReserved
: STORAGE_PORT_CODE_SET
= 0i32;
7328 pub const StoragePortCodeSetStorport
: STORAGE_PORT_CODE_SET
= 1i32;
7329 pub const StoragePortCodeSetSCSIport
: STORAGE_PORT_CODE_SET
= 2i32;
7330 pub const StoragePortCodeSetSpaceport
: STORAGE_PORT_CODE_SET
= 3i32;
7331 pub const StoragePortCodeSetATAport
: STORAGE_PORT_CODE_SET
= 4i32;
7332 pub const StoragePortCodeSetUSBport
: STORAGE_PORT_CODE_SET
= 5i32;
7333 pub const StoragePortCodeSetSBP2port
: STORAGE_PORT_CODE_SET
= 6i32;
7334 pub const StoragePortCodeSetSDport
: STORAGE_PORT_CODE_SET
= 7i32;
7335 pub type STORAGE_POWERUP_REASON_TYPE
= i32;
7336 pub const StoragePowerupUnknown
: STORAGE_POWERUP_REASON_TYPE
= 0i32;
7337 pub const StoragePowerupIO
: STORAGE_POWERUP_REASON_TYPE
= 1i32;
7338 pub const StoragePowerupDeviceAttention
: STORAGE_POWERUP_REASON_TYPE
= 2i32;
7340 pub struct STORAGE_PREDICT_FAILURE
{
7341 pub PredictFailure
: u32,
7342 pub VendorSpecific
: [u8; 512],
7344 impl ::core
::marker
::Copy
for STORAGE_PREDICT_FAILURE {}
7345 impl ::core
::clone
::Clone
for STORAGE_PREDICT_FAILURE
{
7346 fn clone(&self) -> Self {
7351 pub struct STORAGE_PRIORITY_HINT_SUPPORT
{
7352 pub SupportFlags
: u32,
7354 impl ::core
::marker
::Copy
for STORAGE_PRIORITY_HINT_SUPPORT {}
7355 impl ::core
::clone
::Clone
for STORAGE_PRIORITY_HINT_SUPPORT
{
7356 fn clone(&self) -> Self {
7360 pub const STORAGE_PRIORITY_HINT_SUPPORTED
: u32 = 1u32;
7361 pub type STORAGE_PROPERTY_ID
= i32;
7362 pub const StorageDeviceProperty
: STORAGE_PROPERTY_ID
= 0i32;
7363 pub const StorageAdapterProperty
: STORAGE_PROPERTY_ID
= 1i32;
7364 pub const StorageDeviceIdProperty
: STORAGE_PROPERTY_ID
= 2i32;
7365 pub const StorageDeviceUniqueIdProperty
: STORAGE_PROPERTY_ID
= 3i32;
7366 pub const StorageDeviceWriteCacheProperty
: STORAGE_PROPERTY_ID
= 4i32;
7367 pub const StorageMiniportProperty
: STORAGE_PROPERTY_ID
= 5i32;
7368 pub const StorageAccessAlignmentProperty
: STORAGE_PROPERTY_ID
= 6i32;
7369 pub const StorageDeviceSeekPenaltyProperty
: STORAGE_PROPERTY_ID
= 7i32;
7370 pub const StorageDeviceTrimProperty
: STORAGE_PROPERTY_ID
= 8i32;
7371 pub const StorageDeviceWriteAggregationProperty
: STORAGE_PROPERTY_ID
= 9i32;
7372 pub const StorageDeviceDeviceTelemetryProperty
: STORAGE_PROPERTY_ID
= 10i32;
7373 pub const StorageDeviceLBProvisioningProperty
: STORAGE_PROPERTY_ID
= 11i32;
7374 pub const StorageDevicePowerProperty
: STORAGE_PROPERTY_ID
= 12i32;
7375 pub const StorageDeviceCopyOffloadProperty
: STORAGE_PROPERTY_ID
= 13i32;
7376 pub const StorageDeviceResiliencyProperty
: STORAGE_PROPERTY_ID
= 14i32;
7377 pub const StorageDeviceMediumProductType
: STORAGE_PROPERTY_ID
= 15i32;
7378 pub const StorageAdapterRpmbProperty
: STORAGE_PROPERTY_ID
= 16i32;
7379 pub const StorageAdapterCryptoProperty
: STORAGE_PROPERTY_ID
= 17i32;
7380 pub const StorageDeviceIoCapabilityProperty
: STORAGE_PROPERTY_ID
= 48i32;
7381 pub const StorageAdapterProtocolSpecificProperty
: STORAGE_PROPERTY_ID
= 49i32;
7382 pub const StorageDeviceProtocolSpecificProperty
: STORAGE_PROPERTY_ID
= 50i32;
7383 pub const StorageAdapterTemperatureProperty
: STORAGE_PROPERTY_ID
= 51i32;
7384 pub const StorageDeviceTemperatureProperty
: STORAGE_PROPERTY_ID
= 52i32;
7385 pub const StorageAdapterPhysicalTopologyProperty
: STORAGE_PROPERTY_ID
= 53i32;
7386 pub const StorageDevicePhysicalTopologyProperty
: STORAGE_PROPERTY_ID
= 54i32;
7387 pub const StorageDeviceAttributesProperty
: STORAGE_PROPERTY_ID
= 55i32;
7388 pub const StorageDeviceManagementStatus
: STORAGE_PROPERTY_ID
= 56i32;
7389 pub const StorageAdapterSerialNumberProperty
: STORAGE_PROPERTY_ID
= 57i32;
7390 pub const StorageDeviceLocationProperty
: STORAGE_PROPERTY_ID
= 58i32;
7391 pub const StorageDeviceNumaProperty
: STORAGE_PROPERTY_ID
= 59i32;
7392 pub const StorageDeviceZonedDeviceProperty
: STORAGE_PROPERTY_ID
= 60i32;
7393 pub const StorageDeviceUnsafeShutdownCount
: STORAGE_PROPERTY_ID
= 61i32;
7394 pub const StorageDeviceEnduranceProperty
: STORAGE_PROPERTY_ID
= 62i32;
7395 pub const StorageDeviceLedStateProperty
: STORAGE_PROPERTY_ID
= 63i32;
7396 pub const StorageDeviceSelfEncryptionProperty
: STORAGE_PROPERTY_ID
= 64i32;
7397 pub const StorageFruIdProperty
: STORAGE_PROPERTY_ID
= 65i32;
7399 pub struct STORAGE_PROPERTY_QUERY
{
7400 pub PropertyId
: STORAGE_PROPERTY_ID
,
7401 pub QueryType
: STORAGE_QUERY_TYPE
,
7402 pub AdditionalParameters
: [u8; 1],
7404 impl ::core
::marker
::Copy
for STORAGE_PROPERTY_QUERY {}
7405 impl ::core
::clone
::Clone
for STORAGE_PROPERTY_QUERY
{
7406 fn clone(&self) -> Self {
7411 pub struct STORAGE_PROPERTY_SET
{
7412 pub PropertyId
: STORAGE_PROPERTY_ID
,
7413 pub SetType
: STORAGE_SET_TYPE
,
7414 pub AdditionalParameters
: [u8; 1],
7416 impl ::core
::marker
::Copy
for STORAGE_PROPERTY_SET {}
7417 impl ::core
::clone
::Clone
for STORAGE_PROPERTY_SET
{
7418 fn clone(&self) -> Self {
7422 pub type STORAGE_PROTOCOL_ATA_DATA_TYPE
= i32;
7423 pub const AtaDataTypeUnknown
: STORAGE_PROTOCOL_ATA_DATA_TYPE
= 0i32;
7424 pub const AtaDataTypeIdentify
: STORAGE_PROTOCOL_ATA_DATA_TYPE
= 1i32;
7425 pub const AtaDataTypeLogPage
: STORAGE_PROTOCOL_ATA_DATA_TYPE
= 2i32;
7427 pub struct STORAGE_PROTOCOL_COMMAND
{
7430 pub ProtocolType
: STORAGE_PROTOCOL_TYPE
,
7432 pub ReturnStatus
: u32,
7434 pub CommandLength
: u32,
7435 pub ErrorInfoLength
: u32,
7436 pub DataToDeviceTransferLength
: u32,
7437 pub DataFromDeviceTransferLength
: u32,
7438 pub TimeOutValue
: u32,
7439 pub ErrorInfoOffset
: u32,
7440 pub DataToDeviceBufferOffset
: u32,
7441 pub DataFromDeviceBufferOffset
: u32,
7442 pub CommandSpecific
: u32,
7444 pub FixedProtocolReturnData
: u32,
7445 pub Reserved1
: [u32; 3],
7446 pub Command
: [u8; 1],
7448 impl ::core
::marker
::Copy
for STORAGE_PROTOCOL_COMMAND {}
7449 impl ::core
::clone
::Clone
for STORAGE_PROTOCOL_COMMAND
{
7450 fn clone(&self) -> Self {
7454 pub const STORAGE_PROTOCOL_COMMAND_FLAG_ADAPTER_REQUEST
: u32 = 2147483648u32;
7455 pub const STORAGE_PROTOCOL_COMMAND_LENGTH_NVME
: u32 = 64u32;
7457 pub struct STORAGE_PROTOCOL_DATA_DESCRIPTOR
{
7460 pub ProtocolSpecificData
: STORAGE_PROTOCOL_SPECIFIC_DATA
,
7462 impl ::core
::marker
::Copy
for STORAGE_PROTOCOL_DATA_DESCRIPTOR {}
7463 impl ::core
::clone
::Clone
for STORAGE_PROTOCOL_DATA_DESCRIPTOR
{
7464 fn clone(&self) -> Self {
7469 pub struct STORAGE_PROTOCOL_DATA_DESCRIPTOR_EXT
{
7472 pub ProtocolSpecificData
: STORAGE_PROTOCOL_SPECIFIC_DATA_EXT
,
7474 impl ::core
::marker
::Copy
for STORAGE_PROTOCOL_DATA_DESCRIPTOR_EXT {}
7475 impl ::core
::clone
::Clone
for STORAGE_PROTOCOL_DATA_DESCRIPTOR_EXT
{
7476 fn clone(&self) -> Self {
7481 pub union STORAGE_PROTOCOL_DATA_SUBVALUE_GET_LOG_PAGE
{
7482 pub Anonymous
: STORAGE_PROTOCOL_DATA_SUBVALUE_GET_LOG_PAGE_0
,
7485 impl ::core
::marker
::Copy
for STORAGE_PROTOCOL_DATA_SUBVALUE_GET_LOG_PAGE {}
7486 impl ::core
::clone
::Clone
for STORAGE_PROTOCOL_DATA_SUBVALUE_GET_LOG_PAGE
{
7487 fn clone(&self) -> Self {
7492 pub struct STORAGE_PROTOCOL_DATA_SUBVALUE_GET_LOG_PAGE_0
{
7495 impl ::core
::marker
::Copy
for STORAGE_PROTOCOL_DATA_SUBVALUE_GET_LOG_PAGE_0 {}
7496 impl ::core
::clone
::Clone
for STORAGE_PROTOCOL_DATA_SUBVALUE_GET_LOG_PAGE_0
{
7497 fn clone(&self) -> Self {
7501 pub type STORAGE_PROTOCOL_NVME_DATA_TYPE
= i32;
7502 pub const NVMeDataTypeUnknown
: STORAGE_PROTOCOL_NVME_DATA_TYPE
= 0i32;
7503 pub const NVMeDataTypeIdentify
: STORAGE_PROTOCOL_NVME_DATA_TYPE
= 1i32;
7504 pub const NVMeDataTypeLogPage
: STORAGE_PROTOCOL_NVME_DATA_TYPE
= 2i32;
7505 pub const NVMeDataTypeFeature
: STORAGE_PROTOCOL_NVME_DATA_TYPE
= 3i32;
7507 pub struct STORAGE_PROTOCOL_SPECIFIC_DATA
{
7508 pub ProtocolType
: STORAGE_PROTOCOL_TYPE
,
7510 pub ProtocolDataRequestValue
: u32,
7511 pub ProtocolDataRequestSubValue
: u32,
7512 pub ProtocolDataOffset
: u32,
7513 pub ProtocolDataLength
: u32,
7514 pub FixedProtocolReturnData
: u32,
7515 pub ProtocolDataRequestSubValue2
: u32,
7516 pub ProtocolDataRequestSubValue3
: u32,
7517 pub ProtocolDataRequestSubValue4
: u32,
7519 impl ::core
::marker
::Copy
for STORAGE_PROTOCOL_SPECIFIC_DATA {}
7520 impl ::core
::clone
::Clone
for STORAGE_PROTOCOL_SPECIFIC_DATA
{
7521 fn clone(&self) -> Self {
7526 pub struct STORAGE_PROTOCOL_SPECIFIC_DATA_EXT
{
7527 pub ProtocolType
: STORAGE_PROTOCOL_TYPE
,
7529 pub ProtocolDataValue
: u32,
7530 pub ProtocolDataSubValue
: u32,
7531 pub ProtocolDataOffset
: u32,
7532 pub ProtocolDataLength
: u32,
7533 pub FixedProtocolReturnData
: u32,
7534 pub ProtocolDataSubValue2
: u32,
7535 pub ProtocolDataSubValue3
: u32,
7536 pub ProtocolDataSubValue4
: u32,
7537 pub ProtocolDataSubValue5
: u32,
7538 pub Reserved
: [u32; 5],
7540 impl ::core
::marker
::Copy
for STORAGE_PROTOCOL_SPECIFIC_DATA_EXT {}
7541 impl ::core
::clone
::Clone
for STORAGE_PROTOCOL_SPECIFIC_DATA_EXT
{
7542 fn clone(&self) -> Self {
7546 pub const STORAGE_PROTOCOL_SPECIFIC_NVME_ADMIN_COMMAND
: u32 = 1u32;
7547 pub const STORAGE_PROTOCOL_SPECIFIC_NVME_NVM_COMMAND
: u32 = 2u32;
7548 pub const STORAGE_PROTOCOL_STATUS_BUSY
: u32 = 5u32;
7549 pub const STORAGE_PROTOCOL_STATUS_DATA_OVERRUN
: u32 = 6u32;
7550 pub const STORAGE_PROTOCOL_STATUS_ERROR
: u32 = 2u32;
7551 pub const STORAGE_PROTOCOL_STATUS_INSUFFICIENT_RESOURCES
: u32 = 7u32;
7552 pub const STORAGE_PROTOCOL_STATUS_INVALID_REQUEST
: u32 = 3u32;
7553 pub const STORAGE_PROTOCOL_STATUS_NOT_SUPPORTED
: u32 = 255u32;
7554 pub const STORAGE_PROTOCOL_STATUS_NO_DEVICE
: u32 = 4u32;
7555 pub const STORAGE_PROTOCOL_STATUS_PENDING
: u32 = 0u32;
7556 pub const STORAGE_PROTOCOL_STATUS_SUCCESS
: u32 = 1u32;
7557 pub const STORAGE_PROTOCOL_STATUS_THROTTLED_REQUEST
: u32 = 8u32;
7558 pub const STORAGE_PROTOCOL_STRUCTURE_VERSION
: u32 = 1u32;
7559 pub type STORAGE_PROTOCOL_TYPE
= i32;
7560 pub const ProtocolTypeUnknown
: STORAGE_PROTOCOL_TYPE
= 0i32;
7561 pub const ProtocolTypeScsi
: STORAGE_PROTOCOL_TYPE
= 1i32;
7562 pub const ProtocolTypeAta
: STORAGE_PROTOCOL_TYPE
= 2i32;
7563 pub const ProtocolTypeNvme
: STORAGE_PROTOCOL_TYPE
= 3i32;
7564 pub const ProtocolTypeSd
: STORAGE_PROTOCOL_TYPE
= 4i32;
7565 pub const ProtocolTypeUfs
: STORAGE_PROTOCOL_TYPE
= 5i32;
7566 pub const ProtocolTypeProprietary
: STORAGE_PROTOCOL_TYPE
= 126i32;
7567 pub const ProtocolTypeMaxReserved
: STORAGE_PROTOCOL_TYPE
= 127i32;
7568 pub type STORAGE_PROTOCOL_UFS_DATA_TYPE
= i32;
7569 pub const UfsDataTypeUnknown
: STORAGE_PROTOCOL_UFS_DATA_TYPE
= 0i32;
7570 pub const UfsDataTypeQueryDescriptor
: STORAGE_PROTOCOL_UFS_DATA_TYPE
= 1i32;
7571 pub const UfsDataTypeQueryAttribute
: STORAGE_PROTOCOL_UFS_DATA_TYPE
= 2i32;
7572 pub const UfsDataTypeQueryFlag
: STORAGE_PROTOCOL_UFS_DATA_TYPE
= 3i32;
7573 pub const UfsDataTypeQueryDmeAttribute
: STORAGE_PROTOCOL_UFS_DATA_TYPE
= 4i32;
7574 pub const UfsDataTypeQueryDmePeerAttribute
: STORAGE_PROTOCOL_UFS_DATA_TYPE
= 5i32;
7575 pub const UfsDataTypeMax
: STORAGE_PROTOCOL_UFS_DATA_TYPE
= 6i32;
7577 #[cfg(feature = "Win32_Storage_Vhd")]
7578 pub struct STORAGE_QUERY_DEPENDENT_VOLUME_LEV1_ENTRY
{
7579 pub EntryLength
: u32,
7580 pub DependencyTypeFlags
: u32,
7581 pub ProviderSpecificFlags
: u32,
7582 pub VirtualStorageType
: super::super::Storage
::Vhd
::VIRTUAL_STORAGE_TYPE
,
7584 #[cfg(feature = "Win32_Storage_Vhd")]
7585 impl ::core
::marker
::Copy
for STORAGE_QUERY_DEPENDENT_VOLUME_LEV1_ENTRY {}
7586 #[cfg(feature = "Win32_Storage_Vhd")]
7587 impl ::core
::clone
::Clone
for STORAGE_QUERY_DEPENDENT_VOLUME_LEV1_ENTRY
{
7588 fn clone(&self) -> Self {
7593 #[cfg(feature = "Win32_Storage_Vhd")]
7594 pub struct STORAGE_QUERY_DEPENDENT_VOLUME_LEV2_ENTRY
{
7595 pub EntryLength
: u32,
7596 pub DependencyTypeFlags
: u32,
7597 pub ProviderSpecificFlags
: u32,
7598 pub VirtualStorageType
: super::super::Storage
::Vhd
::VIRTUAL_STORAGE_TYPE
,
7599 pub AncestorLevel
: u32,
7600 pub HostVolumeNameOffset
: u32,
7601 pub HostVolumeNameSize
: u32,
7602 pub DependentVolumeNameOffset
: u32,
7603 pub DependentVolumeNameSize
: u32,
7604 pub RelativePathOffset
: u32,
7605 pub RelativePathSize
: u32,
7606 pub DependentDeviceNameOffset
: u32,
7607 pub DependentDeviceNameSize
: u32,
7609 #[cfg(feature = "Win32_Storage_Vhd")]
7610 impl ::core
::marker
::Copy
for STORAGE_QUERY_DEPENDENT_VOLUME_LEV2_ENTRY {}
7611 #[cfg(feature = "Win32_Storage_Vhd")]
7612 impl ::core
::clone
::Clone
for STORAGE_QUERY_DEPENDENT_VOLUME_LEV2_ENTRY
{
7613 fn clone(&self) -> Self {
7618 pub struct STORAGE_QUERY_DEPENDENT_VOLUME_REQUEST
{
7619 pub RequestLevel
: u32,
7620 pub RequestFlags
: u32,
7622 impl ::core
::marker
::Copy
for STORAGE_QUERY_DEPENDENT_VOLUME_REQUEST {}
7623 impl ::core
::clone
::Clone
for STORAGE_QUERY_DEPENDENT_VOLUME_REQUEST
{
7624 fn clone(&self) -> Self {
7629 #[cfg(feature = "Win32_Storage_Vhd")]
7630 pub struct STORAGE_QUERY_DEPENDENT_VOLUME_RESPONSE
{
7631 pub ResponseLevel
: u32,
7632 pub NumberEntries
: u32,
7633 pub Anonymous
: STORAGE_QUERY_DEPENDENT_VOLUME_RESPONSE_0
,
7635 #[cfg(feature = "Win32_Storage_Vhd")]
7636 impl ::core
::marker
::Copy
for STORAGE_QUERY_DEPENDENT_VOLUME_RESPONSE {}
7637 #[cfg(feature = "Win32_Storage_Vhd")]
7638 impl ::core
::clone
::Clone
for STORAGE_QUERY_DEPENDENT_VOLUME_RESPONSE
{
7639 fn clone(&self) -> Self {
7644 #[cfg(feature = "Win32_Storage_Vhd")]
7645 pub union STORAGE_QUERY_DEPENDENT_VOLUME_RESPONSE_0
{
7646 pub Lev1Depends
: [STORAGE_QUERY_DEPENDENT_VOLUME_LEV1_ENTRY
; 1],
7647 pub Lev2Depends
: [STORAGE_QUERY_DEPENDENT_VOLUME_LEV2_ENTRY
; 1],
7649 #[cfg(feature = "Win32_Storage_Vhd")]
7650 impl ::core
::marker
::Copy
for STORAGE_QUERY_DEPENDENT_VOLUME_RESPONSE_0 {}
7651 #[cfg(feature = "Win32_Storage_Vhd")]
7652 impl ::core
::clone
::Clone
for STORAGE_QUERY_DEPENDENT_VOLUME_RESPONSE_0
{
7653 fn clone(&self) -> Self {
7657 pub type STORAGE_QUERY_TYPE
= i32;
7658 pub const PropertyStandardQuery
: STORAGE_QUERY_TYPE
= 0i32;
7659 pub const PropertyExistsQuery
: STORAGE_QUERY_TYPE
= 1i32;
7660 pub const PropertyMaskQuery
: STORAGE_QUERY_TYPE
= 2i32;
7661 pub const PropertyQueryMaxDefined
: STORAGE_QUERY_TYPE
= 3i32;
7663 pub struct STORAGE_READ_CAPACITY
{
7666 pub BlockLength
: u32,
7667 pub NumberOfBlocks
: i64,
7668 pub DiskLength
: i64,
7670 impl ::core
::marker
::Copy
for STORAGE_READ_CAPACITY {}
7671 impl ::core
::clone
::Clone
for STORAGE_READ_CAPACITY
{
7672 fn clone(&self) -> Self {
7677 pub struct STORAGE_REINITIALIZE_MEDIA
{
7680 pub TimeoutInSeconds
: u32,
7681 pub SanitizeOption
: STORAGE_REINITIALIZE_MEDIA_0
,
7683 impl ::core
::marker
::Copy
for STORAGE_REINITIALIZE_MEDIA {}
7684 impl ::core
::clone
::Clone
for STORAGE_REINITIALIZE_MEDIA
{
7685 fn clone(&self) -> Self {
7690 pub struct STORAGE_REINITIALIZE_MEDIA_0
{
7693 impl ::core
::marker
::Copy
for STORAGE_REINITIALIZE_MEDIA_0 {}
7694 impl ::core
::clone
::Clone
for STORAGE_REINITIALIZE_MEDIA_0
{
7695 fn clone(&self) -> Self {
7699 pub type STORAGE_RESERVE_ID
= i32;
7700 pub const StorageReserveIdNone
: STORAGE_RESERVE_ID
= 0i32;
7701 pub const StorageReserveIdHard
: STORAGE_RESERVE_ID
= 1i32;
7702 pub const StorageReserveIdSoft
: STORAGE_RESERVE_ID
= 2i32;
7703 pub const StorageReserveIdUpdateScratch
: STORAGE_RESERVE_ID
= 3i32;
7704 pub const StorageReserveIdMax
: STORAGE_RESERVE_ID
= 4i32;
7705 pub type STORAGE_RPMB_COMMAND_TYPE
= i32;
7706 pub const StorRpmbProgramAuthKey
: STORAGE_RPMB_COMMAND_TYPE
= 1i32;
7707 pub const StorRpmbQueryWriteCounter
: STORAGE_RPMB_COMMAND_TYPE
= 2i32;
7708 pub const StorRpmbAuthenticatedWrite
: STORAGE_RPMB_COMMAND_TYPE
= 3i32;
7709 pub const StorRpmbAuthenticatedRead
: STORAGE_RPMB_COMMAND_TYPE
= 4i32;
7710 pub const StorRpmbReadResultRequest
: STORAGE_RPMB_COMMAND_TYPE
= 5i32;
7711 pub const StorRpmbAuthenticatedDeviceConfigWrite
: STORAGE_RPMB_COMMAND_TYPE
= 6i32;
7712 pub const StorRpmbAuthenticatedDeviceConfigRead
: STORAGE_RPMB_COMMAND_TYPE
= 7i32;
7714 pub struct STORAGE_RPMB_DATA_FRAME
{
7715 pub Stuff
: [u8; 196],
7716 pub KeyOrMAC
: [u8; 32],
7717 pub Data
: [u8; 256],
7718 pub Nonce
: [u8; 16],
7719 pub WriteCounter
: [u8; 4],
7720 pub Address
: [u8; 2],
7721 pub BlockCount
: [u8; 2],
7722 pub OperationResult
: [u8; 2],
7723 pub RequestOrResponseType
: [u8; 2],
7725 impl ::core
::marker
::Copy
for STORAGE_RPMB_DATA_FRAME {}
7726 impl ::core
::clone
::Clone
for STORAGE_RPMB_DATA_FRAME
{
7727 fn clone(&self) -> Self {
7732 pub struct STORAGE_RPMB_DESCRIPTOR
{
7735 pub SizeInBytes
: u32,
7736 pub MaxReliableWriteSizeInBytes
: u32,
7737 pub FrameFormat
: STORAGE_RPMB_FRAME_TYPE
,
7739 impl ::core
::marker
::Copy
for STORAGE_RPMB_DESCRIPTOR {}
7740 impl ::core
::clone
::Clone
for STORAGE_RPMB_DESCRIPTOR
{
7741 fn clone(&self) -> Self {
7745 pub const STORAGE_RPMB_DESCRIPTOR_VERSION_1
: u32 = 1u32;
7746 pub type STORAGE_RPMB_FRAME_TYPE
= i32;
7747 pub const StorageRpmbFrameTypeUnknown
: STORAGE_RPMB_FRAME_TYPE
= 0i32;
7748 pub const StorageRpmbFrameTypeStandard
: STORAGE_RPMB_FRAME_TYPE
= 1i32;
7749 pub const StorageRpmbFrameTypeMax
: STORAGE_RPMB_FRAME_TYPE
= 2i32;
7750 pub const STORAGE_RPMB_MINIMUM_RELIABLE_WRITE_SIZE
: u32 = 512u32;
7751 pub type STORAGE_SANITIZE_METHOD
= i32;
7752 pub const StorageSanitizeMethodDefault
: STORAGE_SANITIZE_METHOD
= 0i32;
7753 pub const StorageSanitizeMethodBlockErase
: STORAGE_SANITIZE_METHOD
= 1i32;
7754 pub const StorageSanitizeMethodCryptoErase
: STORAGE_SANITIZE_METHOD
= 2i32;
7755 pub type STORAGE_SET_TYPE
= i32;
7756 pub const PropertyStandardSet
: STORAGE_SET_TYPE
= 0i32;
7757 pub const PropertyExistsSet
: STORAGE_SET_TYPE
= 1i32;
7758 pub const PropertySetMaxDefined
: STORAGE_SET_TYPE
= 2i32;
7760 pub union STORAGE_SPEC_VERSION
{
7761 pub Anonymous
: STORAGE_SPEC_VERSION_0
,
7764 impl ::core
::marker
::Copy
for STORAGE_SPEC_VERSION {}
7765 impl ::core
::clone
::Clone
for STORAGE_SPEC_VERSION
{
7766 fn clone(&self) -> Self {
7771 pub struct STORAGE_SPEC_VERSION_0
{
7772 pub MinorVersion
: STORAGE_SPEC_VERSION_0_0
,
7773 pub MajorVersion
: u16,
7775 impl ::core
::marker
::Copy
for STORAGE_SPEC_VERSION_0 {}
7776 impl ::core
::clone
::Clone
for STORAGE_SPEC_VERSION_0
{
7777 fn clone(&self) -> Self {
7782 pub union STORAGE_SPEC_VERSION_0_0
{
7783 pub Anonymous
: STORAGE_SPEC_VERSION_0_0_0
,
7786 impl ::core
::marker
::Copy
for STORAGE_SPEC_VERSION_0_0 {}
7787 impl ::core
::clone
::Clone
for STORAGE_SPEC_VERSION_0_0
{
7788 fn clone(&self) -> Self {
7793 pub struct STORAGE_SPEC_VERSION_0_0_0
{
7797 impl ::core
::marker
::Copy
for STORAGE_SPEC_VERSION_0_0_0 {}
7798 impl ::core
::clone
::Clone
for STORAGE_SPEC_VERSION_0_0_0
{
7799 fn clone(&self) -> Self {
7803 pub const STORAGE_SUPPORTED_FEATURES_BYPASS_IO
: u32 = 1u32;
7804 pub const STORAGE_SUPPORTED_FEATURES_MASK
: u32 = 1u32;
7806 #[cfg(feature = "Win32_Foundation")]
7807 pub struct STORAGE_TEMPERATURE_DATA_DESCRIPTOR
{
7810 pub CriticalTemperature
: i16,
7811 pub WarningTemperature
: i16,
7813 pub Reserved0
: [u8; 2],
7814 pub Reserved1
: [u32; 2],
7815 pub TemperatureInfo
: [STORAGE_TEMPERATURE_INFO
; 1],
7817 #[cfg(feature = "Win32_Foundation")]
7818 impl ::core
::marker
::Copy
for STORAGE_TEMPERATURE_DATA_DESCRIPTOR {}
7819 #[cfg(feature = "Win32_Foundation")]
7820 impl ::core
::clone
::Clone
for STORAGE_TEMPERATURE_DATA_DESCRIPTOR
{
7821 fn clone(&self) -> Self {
7826 #[cfg(feature = "Win32_Foundation")]
7827 pub struct STORAGE_TEMPERATURE_INFO
{
7829 pub Temperature
: i16,
7830 pub OverThreshold
: i16,
7831 pub UnderThreshold
: i16,
7832 pub OverThresholdChangable
: super::super::Foundation
::BOOLEAN
,
7833 pub UnderThresholdChangable
: super::super::Foundation
::BOOLEAN
,
7834 pub EventGenerated
: super::super::Foundation
::BOOLEAN
,
7838 #[cfg(feature = "Win32_Foundation")]
7839 impl ::core
::marker
::Copy
for STORAGE_TEMPERATURE_INFO {}
7840 #[cfg(feature = "Win32_Foundation")]
7841 impl ::core
::clone
::Clone
for STORAGE_TEMPERATURE_INFO
{
7842 fn clone(&self) -> Self {
7847 #[cfg(feature = "Win32_Foundation")]
7848 pub struct STORAGE_TEMPERATURE_THRESHOLD
{
7854 pub OverThreshold
: super::super::Foundation
::BOOLEAN
,
7857 #[cfg(feature = "Win32_Foundation")]
7858 impl ::core
::marker
::Copy
for STORAGE_TEMPERATURE_THRESHOLD {}
7859 #[cfg(feature = "Win32_Foundation")]
7860 impl ::core
::clone
::Clone
for STORAGE_TEMPERATURE_THRESHOLD
{
7861 fn clone(&self) -> Self {
7865 pub const STORAGE_TEMPERATURE_THRESHOLD_FLAG_ADAPTER_REQUEST
: u32 = 1u32;
7866 pub const STORAGE_TEMPERATURE_VALUE_NOT_REPORTED
: u32 = 32768u32;
7868 pub struct STORAGE_TIER
{
7869 pub Id
: ::windows_sys
::core
::GUID
,
7870 pub Name
: [u16; 256],
7871 pub Description
: [u16; 256],
7873 pub ProvisionedCapacity
: u64,
7874 pub MediaType
: STORAGE_TIER_MEDIA_TYPE
,
7875 pub Class
: STORAGE_TIER_CLASS
,
7877 impl ::core
::marker
::Copy
for STORAGE_TIER {}
7878 impl ::core
::clone
::Clone
for STORAGE_TIER
{
7879 fn clone(&self) -> Self {
7883 pub type STORAGE_TIER_CLASS
= i32;
7884 pub const StorageTierClassUnspecified
: STORAGE_TIER_CLASS
= 0i32;
7885 pub const StorageTierClassCapacity
: STORAGE_TIER_CLASS
= 1i32;
7886 pub const StorageTierClassPerformance
: STORAGE_TIER_CLASS
= 2i32;
7887 pub const StorageTierClassMax
: STORAGE_TIER_CLASS
= 3i32;
7888 pub const STORAGE_TIER_DESCRIPTION_LENGTH
: u32 = 512u32;
7889 pub const STORAGE_TIER_FLAG_NO_SEEK_PENALTY
: u32 = 131072u32;
7890 pub const STORAGE_TIER_FLAG_PARITY
: u32 = 8388608u32;
7891 pub const STORAGE_TIER_FLAG_READ_CACHE
: u32 = 4194304u32;
7892 pub const STORAGE_TIER_FLAG_SMR
: u32 = 16777216u32;
7893 pub const STORAGE_TIER_FLAG_WRITE_BACK_CACHE
: u32 = 2097152u32;
7894 pub type STORAGE_TIER_MEDIA_TYPE
= i32;
7895 pub const StorageTierMediaTypeUnspecified
: STORAGE_TIER_MEDIA_TYPE
= 0i32;
7896 pub const StorageTierMediaTypeDisk
: STORAGE_TIER_MEDIA_TYPE
= 1i32;
7897 pub const StorageTierMediaTypeSsd
: STORAGE_TIER_MEDIA_TYPE
= 2i32;
7898 pub const StorageTierMediaTypeScm
: STORAGE_TIER_MEDIA_TYPE
= 4i32;
7899 pub const StorageTierMediaTypeMax
: STORAGE_TIER_MEDIA_TYPE
= 5i32;
7900 pub const STORAGE_TIER_NAME_LENGTH
: u32 = 256u32;
7902 pub struct STORAGE_TIER_REGION
{
7903 pub TierId
: ::windows_sys
::core
::GUID
,
7907 impl ::core
::marker
::Copy
for STORAGE_TIER_REGION {}
7908 impl ::core
::clone
::Clone
for STORAGE_TIER_REGION
{
7909 fn clone(&self) -> Self {
7914 #[cfg(feature = "Win32_Foundation")]
7915 pub struct STORAGE_WRITE_CACHE_PROPERTY
{
7918 pub WriteCacheType
: WRITE_CACHE_TYPE
,
7919 pub WriteCacheEnabled
: WRITE_CACHE_ENABLE
,
7920 pub WriteCacheChangeable
: WRITE_CACHE_CHANGE
,
7921 pub WriteThroughSupported
: WRITE_THROUGH
,
7922 pub FlushCacheSupported
: super::super::Foundation
::BOOLEAN
,
7923 pub UserDefinedPowerProtection
: super::super::Foundation
::BOOLEAN
,
7924 pub NVCacheEnabled
: super::super::Foundation
::BOOLEAN
,
7926 #[cfg(feature = "Win32_Foundation")]
7927 impl ::core
::marker
::Copy
for STORAGE_WRITE_CACHE_PROPERTY {}
7928 #[cfg(feature = "Win32_Foundation")]
7929 impl ::core
::clone
::Clone
for STORAGE_WRITE_CACHE_PROPERTY
{
7930 fn clone(&self) -> Self {
7935 #[cfg(feature = "Win32_Foundation")]
7936 pub struct STORAGE_ZONED_DEVICE_DESCRIPTOR
{
7939 pub DeviceType
: STORAGE_ZONED_DEVICE_TYPES
,
7941 pub ZoneAttributes
: STORAGE_ZONED_DEVICE_DESCRIPTOR_0
,
7942 pub ZoneGroupCount
: u32,
7943 pub ZoneGroup
: [STORAGE_ZONE_GROUP
; 1],
7945 #[cfg(feature = "Win32_Foundation")]
7946 impl ::core
::marker
::Copy
for STORAGE_ZONED_DEVICE_DESCRIPTOR {}
7947 #[cfg(feature = "Win32_Foundation")]
7948 impl ::core
::clone
::Clone
for STORAGE_ZONED_DEVICE_DESCRIPTOR
{
7949 fn clone(&self) -> Self {
7954 #[cfg(feature = "Win32_Foundation")]
7955 pub union STORAGE_ZONED_DEVICE_DESCRIPTOR_0
{
7956 pub SequentialRequiredZone
: STORAGE_ZONED_DEVICE_DESCRIPTOR_0_1
,
7957 pub SequentialPreferredZone
: STORAGE_ZONED_DEVICE_DESCRIPTOR_0_0
,
7959 #[cfg(feature = "Win32_Foundation")]
7960 impl ::core
::marker
::Copy
for STORAGE_ZONED_DEVICE_DESCRIPTOR_0 {}
7961 #[cfg(feature = "Win32_Foundation")]
7962 impl ::core
::clone
::Clone
for STORAGE_ZONED_DEVICE_DESCRIPTOR_0
{
7963 fn clone(&self) -> Self {
7968 #[cfg(feature = "Win32_Foundation")]
7969 pub struct STORAGE_ZONED_DEVICE_DESCRIPTOR_0_0
{
7970 pub OptimalOpenZoneCount
: u32,
7973 #[cfg(feature = "Win32_Foundation")]
7974 impl ::core
::marker
::Copy
for STORAGE_ZONED_DEVICE_DESCRIPTOR_0_0 {}
7975 #[cfg(feature = "Win32_Foundation")]
7976 impl ::core
::clone
::Clone
for STORAGE_ZONED_DEVICE_DESCRIPTOR_0_0
{
7977 fn clone(&self) -> Self {
7982 #[cfg(feature = "Win32_Foundation")]
7983 pub struct STORAGE_ZONED_DEVICE_DESCRIPTOR_0_1
{
7984 pub MaxOpenZoneCount
: u32,
7985 pub UnrestrictedRead
: super::super::Foundation
::BOOLEAN
,
7986 pub Reserved
: [u8; 3],
7988 #[cfg(feature = "Win32_Foundation")]
7989 impl ::core
::marker
::Copy
for STORAGE_ZONED_DEVICE_DESCRIPTOR_0_1 {}
7990 #[cfg(feature = "Win32_Foundation")]
7991 impl ::core
::clone
::Clone
for STORAGE_ZONED_DEVICE_DESCRIPTOR_0_1
{
7992 fn clone(&self) -> Self {
7996 pub type STORAGE_ZONED_DEVICE_TYPES
= i32;
7997 pub const ZonedDeviceTypeUnknown
: STORAGE_ZONED_DEVICE_TYPES
= 0i32;
7998 pub const ZonedDeviceTypeHostManaged
: STORAGE_ZONED_DEVICE_TYPES
= 1i32;
7999 pub const ZonedDeviceTypeHostAware
: STORAGE_ZONED_DEVICE_TYPES
= 2i32;
8000 pub const ZonedDeviceTypeDeviceManaged
: STORAGE_ZONED_DEVICE_TYPES
= 3i32;
8001 pub type STORAGE_ZONES_ATTRIBUTES
= i32;
8002 pub const ZonesAttributeTypeAndLengthMayDifferent
: STORAGE_ZONES_ATTRIBUTES
= 0i32;
8003 pub const ZonesAttributeTypeSameLengthSame
: STORAGE_ZONES_ATTRIBUTES
= 1i32;
8004 pub const ZonesAttributeTypeSameLastZoneLengthDifferent
: STORAGE_ZONES_ATTRIBUTES
= 2i32;
8005 pub const ZonesAttributeTypeMayDifferentLengthSame
: STORAGE_ZONES_ATTRIBUTES
= 3i32;
8006 pub type STORAGE_ZONE_CONDITION
= i32;
8007 pub const ZoneConditionConventional
: STORAGE_ZONE_CONDITION
= 0i32;
8008 pub const ZoneConditionEmpty
: STORAGE_ZONE_CONDITION
= 1i32;
8009 pub const ZoneConditionImplicitlyOpened
: STORAGE_ZONE_CONDITION
= 2i32;
8010 pub const ZoneConditionExplicitlyOpened
: STORAGE_ZONE_CONDITION
= 3i32;
8011 pub const ZoneConditionClosed
: STORAGE_ZONE_CONDITION
= 4i32;
8012 pub const ZoneConditionReadOnly
: STORAGE_ZONE_CONDITION
= 13i32;
8013 pub const ZoneConditionFull
: STORAGE_ZONE_CONDITION
= 14i32;
8014 pub const ZoneConditionOffline
: STORAGE_ZONE_CONDITION
= 15i32;
8016 #[cfg(feature = "Win32_Foundation")]
8017 pub struct STORAGE_ZONE_DESCRIPTOR
{
8019 pub ZoneType
: STORAGE_ZONE_TYPES
,
8020 pub ZoneCondition
: STORAGE_ZONE_CONDITION
,
8021 pub ResetWritePointerRecommend
: super::super::Foundation
::BOOLEAN
,
8022 pub Reserved0
: [u8; 3],
8024 pub WritePointerOffset
: u64,
8026 #[cfg(feature = "Win32_Foundation")]
8027 impl ::core
::marker
::Copy
for STORAGE_ZONE_DESCRIPTOR {}
8028 #[cfg(feature = "Win32_Foundation")]
8029 impl ::core
::clone
::Clone
for STORAGE_ZONE_DESCRIPTOR
{
8030 fn clone(&self) -> Self {
8035 pub struct STORAGE_ZONE_GROUP
{
8037 pub ZoneType
: STORAGE_ZONE_TYPES
,
8040 impl ::core
::marker
::Copy
for STORAGE_ZONE_GROUP {}
8041 impl ::core
::clone
::Clone
for STORAGE_ZONE_GROUP
{
8042 fn clone(&self) -> Self {
8046 pub type STORAGE_ZONE_TYPES
= i32;
8047 pub const ZoneTypeUnknown
: STORAGE_ZONE_TYPES
= 0i32;
8048 pub const ZoneTypeConventional
: STORAGE_ZONE_TYPES
= 1i32;
8049 pub const ZoneTypeSequentialWriteRequired
: STORAGE_ZONE_TYPES
= 2i32;
8050 pub const ZoneTypeSequentialWritePreferred
: STORAGE_ZONE_TYPES
= 3i32;
8051 pub const ZoneTypeMax
: STORAGE_ZONE_TYPES
= 4i32;
8052 pub const STORATTRIBUTE_MANAGEMENT_STATE
: u32 = 1u32;
8053 pub const STORATTRIBUTE_NONE
: u32 = 0u32;
8054 pub const STREAMS_ASSOCIATE_ID_CLEAR
: u32 = 1u32;
8056 pub struct STREAMS_ASSOCIATE_ID_INPUT_BUFFER
{
8060 impl ::core
::marker
::Copy
for STREAMS_ASSOCIATE_ID_INPUT_BUFFER {}
8061 impl ::core
::clone
::Clone
for STREAMS_ASSOCIATE_ID_INPUT_BUFFER
{
8062 fn clone(&self) -> Self {
8066 pub const STREAMS_ASSOCIATE_ID_SET
: u32 = 2u32;
8067 pub const STREAMS_INVALID_ID
: u32 = 0u32;
8068 pub const STREAMS_MAX_ID
: u32 = 65535u32;
8070 pub struct STREAMS_QUERY_ID_OUTPUT_BUFFER
{
8073 impl ::core
::marker
::Copy
for STREAMS_QUERY_ID_OUTPUT_BUFFER {}
8074 impl ::core
::clone
::Clone
for STREAMS_QUERY_ID_OUTPUT_BUFFER
{
8075 fn clone(&self) -> Self {
8080 pub struct STREAMS_QUERY_PARAMETERS_OUTPUT_BUFFER
{
8081 pub OptimalWriteSize
: u32,
8082 pub StreamGranularitySize
: u32,
8083 pub StreamIdMin
: u32,
8084 pub StreamIdMax
: u32,
8086 impl ::core
::marker
::Copy
for STREAMS_QUERY_PARAMETERS_OUTPUT_BUFFER {}
8087 impl ::core
::clone
::Clone
for STREAMS_QUERY_PARAMETERS_OUTPUT_BUFFER
{
8088 fn clone(&self) -> Self {
8092 pub const STREAM_CLEAR_ENCRYPTION
: u32 = 4u32;
8094 pub struct STREAM_EXTENT_ENTRY
{
8096 pub ExtentInformation
: STREAM_EXTENT_ENTRY_0
,
8098 impl ::core
::marker
::Copy
for STREAM_EXTENT_ENTRY {}
8099 impl ::core
::clone
::Clone
for STREAM_EXTENT_ENTRY
{
8100 fn clone(&self) -> Self {
8105 pub union STREAM_EXTENT_ENTRY_0
{
8106 pub RetrievalPointers
: RETRIEVAL_POINTERS_BUFFER
,
8108 impl ::core
::marker
::Copy
for STREAM_EXTENT_ENTRY_0 {}
8109 impl ::core
::clone
::Clone
for STREAM_EXTENT_ENTRY_0
{
8110 fn clone(&self) -> Self {
8114 pub const STREAM_EXTENT_ENTRY_ALL_EXTENTS
: u32 = 2u32;
8115 pub const STREAM_EXTENT_ENTRY_AS_RETRIEVAL_POINTERS
: u32 = 1u32;
8117 pub struct STREAM_INFORMATION_ENTRY
{
8120 pub StreamInformation
: STREAM_INFORMATION_ENTRY_0
,
8122 impl ::core
::marker
::Copy
for STREAM_INFORMATION_ENTRY {}
8123 impl ::core
::clone
::Clone
for STREAM_INFORMATION_ENTRY
{
8124 fn clone(&self) -> Self {
8129 pub union STREAM_INFORMATION_ENTRY_0
{
8130 pub DesiredStorageClass
: STREAM_INFORMATION_ENTRY_0_1
,
8131 pub DataStream
: STREAM_INFORMATION_ENTRY_0_0
,
8132 pub Reparse
: STREAM_INFORMATION_ENTRY_0_3
,
8133 pub Ea
: STREAM_INFORMATION_ENTRY_0_2
,
8135 impl ::core
::marker
::Copy
for STREAM_INFORMATION_ENTRY_0 {}
8136 impl ::core
::clone
::Clone
for STREAM_INFORMATION_ENTRY_0
{
8137 fn clone(&self) -> Self {
8142 pub struct STREAM_INFORMATION_ENTRY_0_0
{
8148 impl ::core
::marker
::Copy
for STREAM_INFORMATION_ENTRY_0_0 {}
8149 impl ::core
::clone
::Clone
for STREAM_INFORMATION_ENTRY_0_0
{
8150 fn clone(&self) -> Self {
8155 pub struct STREAM_INFORMATION_ENTRY_0_1
{
8156 pub Class
: FILE_STORAGE_TIER_CLASS
,
8159 impl ::core
::marker
::Copy
for STREAM_INFORMATION_ENTRY_0_1 {}
8160 impl ::core
::clone
::Clone
for STREAM_INFORMATION_ENTRY_0_1
{
8161 fn clone(&self) -> Self {
8166 pub struct STREAM_INFORMATION_ENTRY_0_2
{
8170 pub EaInformationOffset
: u32,
8172 impl ::core
::marker
::Copy
for STREAM_INFORMATION_ENTRY_0_2 {}
8173 impl ::core
::clone
::Clone
for STREAM_INFORMATION_ENTRY_0_2
{
8174 fn clone(&self) -> Self {
8179 pub struct STREAM_INFORMATION_ENTRY_0_3
{
8182 pub ReparseDataSize
: u32,
8183 pub ReparseDataOffset
: u32,
8185 impl ::core
::marker
::Copy
for STREAM_INFORMATION_ENTRY_0_3 {}
8186 impl ::core
::clone
::Clone
for STREAM_INFORMATION_ENTRY_0_3
{
8187 fn clone(&self) -> Self {
8192 pub struct STREAM_LAYOUT_ENTRY
{
8194 pub NextStreamOffset
: u32,
8196 pub ExtentInformationOffset
: u32,
8197 pub AllocationSize
: i64,
8199 pub StreamInformationOffset
: u32,
8200 pub AttributeTypeCode
: u32,
8201 pub AttributeFlags
: u32,
8202 pub StreamIdentifierLength
: u32,
8203 pub StreamIdentifier
: [u16; 1],
8205 impl ::core
::marker
::Copy
for STREAM_LAYOUT_ENTRY {}
8206 impl ::core
::clone
::Clone
for STREAM_LAYOUT_ENTRY
{
8207 fn clone(&self) -> Self {
8211 pub const STREAM_LAYOUT_ENTRY_HAS_INFORMATION
: u32 = 16u32;
8212 pub const STREAM_LAYOUT_ENTRY_IMMOVABLE
: u32 = 1u32;
8213 pub const STREAM_LAYOUT_ENTRY_NO_CLUSTERS_ALLOCATED
: u32 = 8u32;
8214 pub const STREAM_LAYOUT_ENTRY_PINNED
: u32 = 2u32;
8215 pub const STREAM_LAYOUT_ENTRY_RESIDENT
: u32 = 4u32;
8216 pub const STREAM_SET_ENCRYPTION
: u32 = 3u32;
8218 pub struct TAPE_GET_STATISTICS
{
8221 impl ::core
::marker
::Copy
for TAPE_GET_STATISTICS {}
8222 impl ::core
::clone
::Clone
for TAPE_GET_STATISTICS
{
8223 fn clone(&self) -> Self {
8227 pub const TAPE_RESET_STATISTICS
: i32 = 2i32;
8228 pub const TAPE_RETURN_ENV_INFO
: i32 = 1i32;
8229 pub const TAPE_RETURN_STATISTICS
: i32 = 0i32;
8231 pub struct TAPE_STATISTICS
{
8234 pub RecoveredWrites
: i64,
8235 pub UnrecoveredWrites
: i64,
8236 pub RecoveredReads
: i64,
8237 pub UnrecoveredReads
: i64,
8238 pub CompressionRatioReads
: u8,
8239 pub CompressionRatioWrites
: u8,
8241 impl ::core
::marker
::Copy
for TAPE_STATISTICS {}
8242 impl ::core
::clone
::Clone
for TAPE_STATISTICS
{
8243 fn clone(&self) -> Self {
8247 pub const TC_DEVICEDUMP_SUBSECTION_DESC_LENGTH
: u32 = 16u32;
8248 pub const TC_PUBLIC_DEVICEDUMP_CONTENT_GPLOG
: u32 = 2u32;
8249 pub const TC_PUBLIC_DEVICEDUMP_CONTENT_GPLOG_MAX
: u32 = 16u32;
8250 pub const TC_PUBLIC_DEVICEDUMP_CONTENT_SMART
: u32 = 1u32;
8251 pub const TELEMETRY_COMMAND_SIZE
: u32 = 16u32;
8253 pub struct TXFS_CREATE_MINIVERSION_INFO
{
8254 pub StructureVersion
: u16,
8255 pub StructureLength
: u16,
8256 pub BaseVersion
: u32,
8257 pub MiniVersion
: u16,
8259 impl ::core
::marker
::Copy
for TXFS_CREATE_MINIVERSION_INFO {}
8260 impl ::core
::clone
::Clone
for TXFS_CREATE_MINIVERSION_INFO
{
8261 fn clone(&self) -> Self {
8266 pub struct TXFS_GET_METADATA_INFO_OUT
{
8267 pub TxfFileId
: TXFS_GET_METADATA_INFO_OUT_0
,
8268 pub LockingTransaction
: ::windows_sys
::core
::GUID
,
8270 pub TransactionState
: u32,
8272 impl ::core
::marker
::Copy
for TXFS_GET_METADATA_INFO_OUT {}
8273 impl ::core
::clone
::Clone
for TXFS_GET_METADATA_INFO_OUT
{
8274 fn clone(&self) -> Self {
8279 pub struct TXFS_GET_METADATA_INFO_OUT_0
{
8283 impl ::core
::marker
::Copy
for TXFS_GET_METADATA_INFO_OUT_0 {}
8284 impl ::core
::clone
::Clone
for TXFS_GET_METADATA_INFO_OUT_0
{
8285 fn clone(&self) -> Self {
8290 pub struct TXFS_GET_TRANSACTED_VERSION
{
8291 pub ThisBaseVersion
: u32,
8292 pub LatestVersion
: u32,
8293 pub ThisMiniVersion
: u16,
8294 pub FirstMiniVersion
: u16,
8295 pub LatestMiniVersion
: u16,
8297 impl ::core
::marker
::Copy
for TXFS_GET_TRANSACTED_VERSION {}
8298 impl ::core
::clone
::Clone
for TXFS_GET_TRANSACTED_VERSION
{
8299 fn clone(&self) -> Self {
8304 pub struct TXFS_LIST_TRANSACTIONS
{
8305 pub NumberOfTransactions
: u64,
8306 pub BufferSizeRequired
: u64,
8308 impl ::core
::marker
::Copy
for TXFS_LIST_TRANSACTIONS {}
8309 impl ::core
::clone
::Clone
for TXFS_LIST_TRANSACTIONS
{
8310 fn clone(&self) -> Self {
8315 pub struct TXFS_LIST_TRANSACTIONS_ENTRY
{
8316 pub TransactionId
: ::windows_sys
::core
::GUID
,
8317 pub TransactionState
: u32,
8322 impl ::core
::marker
::Copy
for TXFS_LIST_TRANSACTIONS_ENTRY {}
8323 impl ::core
::clone
::Clone
for TXFS_LIST_TRANSACTIONS_ENTRY
{
8324 fn clone(&self) -> Self {
8329 pub struct TXFS_LIST_TRANSACTION_LOCKED_FILES
{
8330 pub KtmTransaction
: ::windows_sys
::core
::GUID
,
8331 pub NumberOfFiles
: u64,
8332 pub BufferSizeRequired
: u64,
8335 impl ::core
::marker
::Copy
for TXFS_LIST_TRANSACTION_LOCKED_FILES {}
8336 impl ::core
::clone
::Clone
for TXFS_LIST_TRANSACTION_LOCKED_FILES
{
8337 fn clone(&self) -> Self {
8342 pub struct TXFS_LIST_TRANSACTION_LOCKED_FILES_ENTRY
{
8349 pub FileName
: [u16; 1],
8351 impl ::core
::marker
::Copy
for TXFS_LIST_TRANSACTION_LOCKED_FILES_ENTRY {}
8352 impl ::core
::clone
::Clone
for TXFS_LIST_TRANSACTION_LOCKED_FILES_ENTRY
{
8353 fn clone(&self) -> Self {
8357 pub const TXFS_LIST_TRANSACTION_LOCKED_FILES_ENTRY_FLAG_CREATED
: u32 = 1u32;
8358 pub const TXFS_LIST_TRANSACTION_LOCKED_FILES_ENTRY_FLAG_DELETED
: u32 = 2u32;
8359 pub const TXFS_LOGGING_MODE_FULL
: u32 = 2u32;
8360 pub const TXFS_LOGGING_MODE_SIMPLE
: u32 = 1u32;
8362 pub struct TXFS_MODIFY_RM
{
8363 pub Flags
: TXFS_RMF_LAGS
,
8364 pub LogContainerCountMax
: u32,
8365 pub LogContainerCountMin
: u32,
8366 pub LogContainerCount
: u32,
8367 pub LogGrowthIncrement
: u32,
8368 pub LogAutoShrinkPercentage
: u32,
8370 pub LoggingMode
: u16,
8372 impl ::core
::marker
::Copy
for TXFS_MODIFY_RM {}
8373 impl ::core
::clone
::Clone
for TXFS_MODIFY_RM
{
8374 fn clone(&self) -> Self {
8379 pub struct TXFS_QUERY_RM_INFORMATION
{
8380 pub BytesRequired
: u32,
8382 pub CurrentLsn
: u64,
8383 pub ArchiveTailLsn
: u64,
8384 pub LogContainerSize
: u64,
8385 pub HighestVirtualClock
: i64,
8386 pub LogContainerCount
: u32,
8387 pub LogContainerCountMax
: u32,
8388 pub LogContainerCountMin
: u32,
8389 pub LogGrowthIncrement
: u32,
8390 pub LogAutoShrinkPercentage
: u32,
8391 pub Flags
: TXFS_RMF_LAGS
,
8392 pub LoggingMode
: u16,
8395 pub LogCapacity
: u64,
8399 pub TransactionCount
: u64,
8400 pub OnePCCount
: u64,
8401 pub TwoPCCount
: u64,
8402 pub NumberLogFileFull
: u64,
8403 pub OldestTransactionAge
: u64,
8404 pub RMName
: ::windows_sys
::core
::GUID
,
8405 pub TmLogPathOffset
: u32,
8407 impl ::core
::marker
::Copy
for TXFS_QUERY_RM_INFORMATION {}
8408 impl ::core
::clone
::Clone
for TXFS_QUERY_RM_INFORMATION
{
8409 fn clone(&self) -> Self {
8414 pub struct TXFS_READ_BACKUP_INFORMATION_OUT
{
8415 pub Anonymous
: TXFS_READ_BACKUP_INFORMATION_OUT_0
,
8417 impl ::core
::marker
::Copy
for TXFS_READ_BACKUP_INFORMATION_OUT {}
8418 impl ::core
::clone
::Clone
for TXFS_READ_BACKUP_INFORMATION_OUT
{
8419 fn clone(&self) -> Self {
8424 pub union TXFS_READ_BACKUP_INFORMATION_OUT_0
{
8425 pub BufferLength
: u32,
8426 pub Buffer
: [u8; 1],
8428 impl ::core
::marker
::Copy
for TXFS_READ_BACKUP_INFORMATION_OUT_0 {}
8429 impl ::core
::clone
::Clone
for TXFS_READ_BACKUP_INFORMATION_OUT_0
{
8430 fn clone(&self) -> Self {
8434 pub type TXFS_RMF_LAGS
= u32;
8435 pub const TXFS_RM_FLAG_LOGGING_MODE
: TXFS_RMF_LAGS
= 1u32;
8436 pub const TXFS_RM_FLAG_RENAME_RM
: TXFS_RMF_LAGS
= 2u32;
8437 pub const TXFS_RM_FLAG_LOG_CONTAINER_COUNT_MAX
: TXFS_RMF_LAGS
= 4u32;
8438 pub const TXFS_RM_FLAG_LOG_CONTAINER_COUNT_MIN
: TXFS_RMF_LAGS
= 8u32;
8439 pub const TXFS_RM_FLAG_LOG_GROWTH_INCREMENT_NUM_CONTAINERS
: TXFS_RMF_LAGS
= 16u32;
8440 pub const TXFS_RM_FLAG_LOG_GROWTH_INCREMENT_PERCENT
: TXFS_RMF_LAGS
= 32u32;
8441 pub const TXFS_RM_FLAG_LOG_AUTO_SHRINK_PERCENTAGE
: TXFS_RMF_LAGS
= 64u32;
8442 pub const TXFS_RM_FLAG_LOG_NO_CONTAINER_COUNT_MAX
: TXFS_RMF_LAGS
= 128u32;
8443 pub const TXFS_RM_FLAG_LOG_NO_CONTAINER_COUNT_MIN
: TXFS_RMF_LAGS
= 256u32;
8444 pub const TXFS_RM_FLAG_GROW_LOG
: TXFS_RMF_LAGS
= 1024u32;
8445 pub const TXFS_RM_FLAG_SHRINK_LOG
: TXFS_RMF_LAGS
= 2048u32;
8446 pub const TXFS_RM_FLAG_ENFORCE_MINIMUM_SIZE
: TXFS_RMF_LAGS
= 4096u32;
8447 pub const TXFS_RM_FLAG_PRESERVE_CHANGES
: TXFS_RMF_LAGS
= 8192u32;
8448 pub const TXFS_RM_FLAG_RESET_RM_AT_NEXT_START
: TXFS_RMF_LAGS
= 16384u32;
8449 pub const TXFS_RM_FLAG_DO_NOT_RESET_RM_AT_NEXT_START
: TXFS_RMF_LAGS
= 32768u32;
8450 pub const TXFS_RM_FLAG_PREFER_CONSISTENCY
: TXFS_RMF_LAGS
= 65536u32;
8451 pub const TXFS_RM_FLAG_PREFER_AVAILABILITY
: TXFS_RMF_LAGS
= 131072u32;
8452 pub const TXFS_RM_STATE_ACTIVE
: u32 = 2u32;
8453 pub const TXFS_RM_STATE_NOT_STARTED
: u32 = 0u32;
8454 pub const TXFS_RM_STATE_SHUTTING_DOWN
: u32 = 3u32;
8455 pub const TXFS_RM_STATE_STARTING
: u32 = 1u32;
8456 pub const TXFS_ROLLFORWARD_REDO_FLAG_USE_LAST_REDO_LSN
: u32 = 1u32;
8457 pub const TXFS_ROLLFORWARD_REDO_FLAG_USE_LAST_VIRTUAL_CLOCK
: u32 = 2u32;
8459 pub struct TXFS_ROLLFORWARD_REDO_INFORMATION
{
8460 pub LastVirtualClock
: i64,
8461 pub LastRedoLsn
: u64,
8462 pub HighestRecoveryLsn
: u64,
8465 impl ::core
::marker
::Copy
for TXFS_ROLLFORWARD_REDO_INFORMATION {}
8466 impl ::core
::clone
::Clone
for TXFS_ROLLFORWARD_REDO_INFORMATION
{
8467 fn clone(&self) -> Self {
8471 pub const TXFS_SAVEPOINT_CLEAR
: u32 = 4u32;
8472 pub const TXFS_SAVEPOINT_CLEAR_ALL
: u32 = 16u32;
8474 #[cfg(feature = "Win32_Foundation")]
8475 pub struct TXFS_SAVEPOINT_INFORMATION
{
8476 pub KtmTransaction
: super::super::Foundation
::HANDLE
,
8477 pub ActionCode
: u32,
8478 pub SavepointId
: u32,
8480 #[cfg(feature = "Win32_Foundation")]
8481 impl ::core
::marker
::Copy
for TXFS_SAVEPOINT_INFORMATION {}
8482 #[cfg(feature = "Win32_Foundation")]
8483 impl ::core
::clone
::Clone
for TXFS_SAVEPOINT_INFORMATION
{
8484 fn clone(&self) -> Self {
8488 pub const TXFS_SAVEPOINT_ROLLBACK
: u32 = 2u32;
8489 pub const TXFS_SAVEPOINT_SET
: u32 = 1u32;
8490 pub const TXFS_START_RM_FLAG_LOGGING_MODE
: u32 = 1024u32;
8491 pub const TXFS_START_RM_FLAG_LOG_AUTO_SHRINK_PERCENTAGE
: u32 = 32u32;
8492 pub const TXFS_START_RM_FLAG_LOG_CONTAINER_COUNT_MAX
: u32 = 1u32;
8493 pub const TXFS_START_RM_FLAG_LOG_CONTAINER_COUNT_MIN
: u32 = 2u32;
8494 pub const TXFS_START_RM_FLAG_LOG_CONTAINER_SIZE
: u32 = 4u32;
8495 pub const TXFS_START_RM_FLAG_LOG_GROWTH_INCREMENT_NUM_CONTAINERS
: u32 = 8u32;
8496 pub const TXFS_START_RM_FLAG_LOG_GROWTH_INCREMENT_PERCENT
: u32 = 16u32;
8497 pub const TXFS_START_RM_FLAG_LOG_NO_CONTAINER_COUNT_MAX
: u32 = 64u32;
8498 pub const TXFS_START_RM_FLAG_LOG_NO_CONTAINER_COUNT_MIN
: u32 = 128u32;
8499 pub const TXFS_START_RM_FLAG_PREFER_AVAILABILITY
: u32 = 8192u32;
8500 pub const TXFS_START_RM_FLAG_PREFER_CONSISTENCY
: u32 = 4096u32;
8501 pub const TXFS_START_RM_FLAG_PRESERVE_CHANGES
: u32 = 2048u32;
8502 pub const TXFS_START_RM_FLAG_RECOVER_BEST_EFFORT
: u32 = 512u32;
8504 pub struct TXFS_START_RM_INFORMATION
{
8506 pub LogContainerSize
: u64,
8507 pub LogContainerCountMin
: u32,
8508 pub LogContainerCountMax
: u32,
8509 pub LogGrowthIncrement
: u32,
8510 pub LogAutoShrinkPercentage
: u32,
8511 pub TmLogPathOffset
: u32,
8512 pub TmLogPathLength
: u16,
8513 pub LoggingMode
: u16,
8514 pub LogPathLength
: u16,
8516 pub LogPath
: [u16; 1],
8518 impl ::core
::marker
::Copy
for TXFS_START_RM_INFORMATION {}
8519 impl ::core
::clone
::Clone
for TXFS_START_RM_INFORMATION
{
8520 fn clone(&self) -> Self {
8524 pub const TXFS_TRANSACTED_VERSION_NONTRANSACTED
: u32 = 4294967294u32;
8525 pub const TXFS_TRANSACTED_VERSION_UNCOMMITTED
: u32 = 4294967295u32;
8527 #[cfg(feature = "Win32_Foundation")]
8528 pub struct TXFS_TRANSACTION_ACTIVE_INFO
{
8529 pub TransactionsActiveAtSnapshot
: super::super::Foundation
::BOOLEAN
,
8531 #[cfg(feature = "Win32_Foundation")]
8532 impl ::core
::marker
::Copy
for TXFS_TRANSACTION_ACTIVE_INFO {}
8533 #[cfg(feature = "Win32_Foundation")]
8534 impl ::core
::clone
::Clone
for TXFS_TRANSACTION_ACTIVE_INFO
{
8535 fn clone(&self) -> Self {
8539 pub const TXFS_TRANSACTION_STATE_ACTIVE
: u32 = 1u32;
8540 pub const TXFS_TRANSACTION_STATE_NONE
: u32 = 0u32;
8541 pub const TXFS_TRANSACTION_STATE_NOTACTIVE
: u32 = 3u32;
8542 pub const TXFS_TRANSACTION_STATE_PREPARED
: u32 = 2u32;
8544 pub struct TXFS_WRITE_BACKUP_INFORMATION
{
8545 pub Buffer
: [u8; 1],
8547 impl ::core
::marker
::Copy
for TXFS_WRITE_BACKUP_INFORMATION {}
8548 impl ::core
::clone
::Clone
for TXFS_WRITE_BACKUP_INFORMATION
{
8549 fn clone(&self) -> Self {
8553 pub const UNDEFINE_ALTERNATE
: u32 = 13u32;
8554 pub const UNDEFINE_PRIMARY
: u32 = 12u32;
8555 pub const UNLOCK_ELEMENT
: u32 = 1u32;
8556 pub const UNRECOVERED_READS_VALID
: u32 = 8u32;
8557 pub const UNRECOVERED_WRITES_VALID
: u32 = 2u32;
8558 pub type USN_DELETE_FLAGS
= u32;
8559 pub const USN_DELETE_FLAG_DELETE
: USN_DELETE_FLAGS
= 1u32;
8560 pub const USN_DELETE_FLAG_NOTIFY
: USN_DELETE_FLAGS
= 2u32;
8561 pub const USN_DELETE_VALID_FLAGS
: u32 = 3u32;
8563 pub struct USN_JOURNAL_DATA_V0
{
8564 pub UsnJournalID
: u64,
8567 pub LowestValidUsn
: i64,
8569 pub MaximumSize
: u64,
8570 pub AllocationDelta
: u64,
8572 impl ::core
::marker
::Copy
for USN_JOURNAL_DATA_V0 {}
8573 impl ::core
::clone
::Clone
for USN_JOURNAL_DATA_V0
{
8574 fn clone(&self) -> Self {
8579 pub struct USN_JOURNAL_DATA_V1
{
8580 pub UsnJournalID
: u64,
8583 pub LowestValidUsn
: i64,
8585 pub MaximumSize
: u64,
8586 pub AllocationDelta
: u64,
8587 pub MinSupportedMajorVersion
: u16,
8588 pub MaxSupportedMajorVersion
: u16,
8590 impl ::core
::marker
::Copy
for USN_JOURNAL_DATA_V1 {}
8591 impl ::core
::clone
::Clone
for USN_JOURNAL_DATA_V1
{
8592 fn clone(&self) -> Self {
8597 pub struct USN_JOURNAL_DATA_V2
{
8598 pub UsnJournalID
: u64,
8601 pub LowestValidUsn
: i64,
8603 pub MaximumSize
: u64,
8604 pub AllocationDelta
: u64,
8605 pub MinSupportedMajorVersion
: u16,
8606 pub MaxSupportedMajorVersion
: u16,
8608 pub RangeTrackChunkSize
: u64,
8609 pub RangeTrackFileSizeThreshold
: i64,
8611 impl ::core
::marker
::Copy
for USN_JOURNAL_DATA_V2 {}
8612 impl ::core
::clone
::Clone
for USN_JOURNAL_DATA_V2
{
8613 fn clone(&self) -> Self {
8617 pub const USN_PAGE_SIZE
: u32 = 4096u32;
8619 pub struct USN_RANGE_TRACK_OUTPUT
{
8622 impl ::core
::marker
::Copy
for USN_RANGE_TRACK_OUTPUT {}
8623 impl ::core
::clone
::Clone
for USN_RANGE_TRACK_OUTPUT
{
8624 fn clone(&self) -> Self {
8628 pub const USN_REASON_BASIC_INFO_CHANGE
: u32 = 32768u32;
8629 pub const USN_REASON_CLOSE
: u32 = 2147483648u32;
8630 pub const USN_REASON_COMPRESSION_CHANGE
: u32 = 131072u32;
8631 pub const USN_REASON_DATA_EXTEND
: u32 = 2u32;
8632 pub const USN_REASON_DATA_OVERWRITE
: u32 = 1u32;
8633 pub const USN_REASON_DATA_TRUNCATION
: u32 = 4u32;
8634 pub const USN_REASON_DESIRED_STORAGE_CLASS_CHANGE
: u32 = 16777216u32;
8635 pub const USN_REASON_EA_CHANGE
: u32 = 1024u32;
8636 pub const USN_REASON_ENCRYPTION_CHANGE
: u32 = 262144u32;
8637 pub const USN_REASON_FILE_CREATE
: u32 = 256u32;
8638 pub const USN_REASON_FILE_DELETE
: u32 = 512u32;
8639 pub const USN_REASON_HARD_LINK_CHANGE
: u32 = 65536u32;
8640 pub const USN_REASON_INDEXABLE_CHANGE
: u32 = 16384u32;
8641 pub const USN_REASON_INTEGRITY_CHANGE
: u32 = 8388608u32;
8642 pub const USN_REASON_NAMED_DATA_EXTEND
: u32 = 32u32;
8643 pub const USN_REASON_NAMED_DATA_OVERWRITE
: u32 = 16u32;
8644 pub const USN_REASON_NAMED_DATA_TRUNCATION
: u32 = 64u32;
8645 pub const USN_REASON_OBJECT_ID_CHANGE
: u32 = 524288u32;
8646 pub const USN_REASON_RENAME_NEW_NAME
: u32 = 8192u32;
8647 pub const USN_REASON_RENAME_OLD_NAME
: u32 = 4096u32;
8648 pub const USN_REASON_REPARSE_POINT_CHANGE
: u32 = 1048576u32;
8649 pub const USN_REASON_SECURITY_CHANGE
: u32 = 2048u32;
8650 pub const USN_REASON_STREAM_CHANGE
: u32 = 2097152u32;
8651 pub const USN_REASON_TRANSACTED_CHANGE
: u32 = 4194304u32;
8653 pub struct USN_RECORD_COMMON_HEADER
{
8654 pub RecordLength
: u32,
8655 pub MajorVersion
: u16,
8656 pub MinorVersion
: u16,
8658 impl ::core
::marker
::Copy
for USN_RECORD_COMMON_HEADER {}
8659 impl ::core
::clone
::Clone
for USN_RECORD_COMMON_HEADER
{
8660 fn clone(&self) -> Self {
8665 pub struct USN_RECORD_EXTENT
{
8669 impl ::core
::marker
::Copy
for USN_RECORD_EXTENT {}
8670 impl ::core
::clone
::Clone
for USN_RECORD_EXTENT
{
8671 fn clone(&self) -> Self {
8676 #[cfg(feature = "Win32_Storage_FileSystem")]
8677 pub union USN_RECORD_UNION
{
8678 pub Header
: USN_RECORD_COMMON_HEADER
,
8679 pub V2
: USN_RECORD_V2
,
8680 pub V3
: USN_RECORD_V3
,
8681 pub V4
: USN_RECORD_V4
,
8683 #[cfg(feature = "Win32_Storage_FileSystem")]
8684 impl ::core
::marker
::Copy
for USN_RECORD_UNION {}
8685 #[cfg(feature = "Win32_Storage_FileSystem")]
8686 impl ::core
::clone
::Clone
for USN_RECORD_UNION
{
8687 fn clone(&self) -> Self {
8692 pub struct USN_RECORD_V2
{
8693 pub RecordLength
: u32,
8694 pub MajorVersion
: u16,
8695 pub MinorVersion
: u16,
8696 pub FileReferenceNumber
: u64,
8697 pub ParentFileReferenceNumber
: u64,
8701 pub SourceInfo
: u32,
8702 pub SecurityId
: u32,
8703 pub FileAttributes
: u32,
8704 pub FileNameLength
: u16,
8705 pub FileNameOffset
: u16,
8706 pub FileName
: [u16; 1],
8708 impl ::core
::marker
::Copy
for USN_RECORD_V2 {}
8709 impl ::core
::clone
::Clone
for USN_RECORD_V2
{
8710 fn clone(&self) -> Self {
8715 #[cfg(feature = "Win32_Storage_FileSystem")]
8716 pub struct USN_RECORD_V3
{
8717 pub RecordLength
: u32,
8718 pub MajorVersion
: u16,
8719 pub MinorVersion
: u16,
8720 pub FileReferenceNumber
: super::super::Storage
::FileSystem
::FILE_ID_128
,
8721 pub ParentFileReferenceNumber
: super::super::Storage
::FileSystem
::FILE_ID_128
,
8725 pub SourceInfo
: u32,
8726 pub SecurityId
: u32,
8727 pub FileAttributes
: u32,
8728 pub FileNameLength
: u16,
8729 pub FileNameOffset
: u16,
8730 pub FileName
: [u16; 1],
8732 #[cfg(feature = "Win32_Storage_FileSystem")]
8733 impl ::core
::marker
::Copy
for USN_RECORD_V3 {}
8734 #[cfg(feature = "Win32_Storage_FileSystem")]
8735 impl ::core
::clone
::Clone
for USN_RECORD_V3
{
8736 fn clone(&self) -> Self {
8741 #[cfg(feature = "Win32_Storage_FileSystem")]
8742 pub struct USN_RECORD_V4
{
8743 pub Header
: USN_RECORD_COMMON_HEADER
,
8744 pub FileReferenceNumber
: super::super::Storage
::FileSystem
::FILE_ID_128
,
8745 pub ParentFileReferenceNumber
: super::super::Storage
::FileSystem
::FILE_ID_128
,
8748 pub SourceInfo
: USN_SOURCE_INFO_ID
,
8749 pub RemainingExtents
: u32,
8750 pub NumberOfExtents
: u16,
8751 pub ExtentSize
: u16,
8752 pub Extents
: [USN_RECORD_EXTENT
; 1],
8754 #[cfg(feature = "Win32_Storage_FileSystem")]
8755 impl ::core
::marker
::Copy
for USN_RECORD_V4 {}
8756 #[cfg(feature = "Win32_Storage_FileSystem")]
8757 impl ::core
::clone
::Clone
for USN_RECORD_V4
{
8758 fn clone(&self) -> Self {
8762 pub type USN_SOURCE_INFO_ID
= u32;
8763 pub const USN_SOURCE_AUXILIARY_DATA
: USN_SOURCE_INFO_ID
= 2u32;
8764 pub const USN_SOURCE_DATA_MANAGEMENT
: USN_SOURCE_INFO_ID
= 1u32;
8765 pub const USN_SOURCE_REPLICATION_MANAGEMENT
: USN_SOURCE_INFO_ID
= 4u32;
8766 pub const USN_SOURCE_CLIENT_REPLICATION_MANAGEMENT
: USN_SOURCE_INFO_ID
= 8u32;
8768 pub struct USN_TRACK_MODIFIED_RANGES
{
8772 pub FileSizeThreshold
: i64,
8774 impl ::core
::marker
::Copy
for USN_TRACK_MODIFIED_RANGES {}
8775 impl ::core
::clone
::Clone
for USN_TRACK_MODIFIED_RANGES
{
8776 fn clone(&self) -> Self {
8780 pub const VALID_NTFT
: u32 = 192u32;
8781 pub const VENDOR_ID_LENGTH
: u32 = 8u32;
8783 pub struct VERIFY_INFORMATION
{
8784 pub StartingOffset
: i64,
8787 impl ::core
::marker
::Copy
for VERIFY_INFORMATION {}
8788 impl ::core
::clone
::Clone
for VERIFY_INFORMATION
{
8789 fn clone(&self) -> Self {
8794 pub struct VIRTUALIZATION_INSTANCE_INFO_INPUT
{
8795 pub NumberOfWorkerThreads
: u32,
8798 impl ::core
::marker
::Copy
for VIRTUALIZATION_INSTANCE_INFO_INPUT {}
8799 impl ::core
::clone
::Clone
for VIRTUALIZATION_INSTANCE_INFO_INPUT
{
8800 fn clone(&self) -> Self {
8805 pub struct VIRTUALIZATION_INSTANCE_INFO_INPUT_EX
{
8806 pub HeaderSize
: u16,
8808 pub NotificationInfoSize
: u32,
8809 pub NotificationInfoOffset
: u16,
8810 pub ProviderMajorVersion
: u16,
8812 impl ::core
::marker
::Copy
for VIRTUALIZATION_INSTANCE_INFO_INPUT_EX {}
8813 impl ::core
::clone
::Clone
for VIRTUALIZATION_INSTANCE_INFO_INPUT_EX
{
8814 fn clone(&self) -> Self {
8819 pub struct VIRTUALIZATION_INSTANCE_INFO_OUTPUT
{
8820 pub VirtualizationInstanceID
: ::windows_sys
::core
::GUID
,
8822 impl ::core
::marker
::Copy
for VIRTUALIZATION_INSTANCE_INFO_OUTPUT {}
8823 impl ::core
::clone
::Clone
for VIRTUALIZATION_INSTANCE_INFO_OUTPUT
{
8824 fn clone(&self) -> Self {
8828 pub type VIRTUAL_STORAGE_BEHAVIOR_CODE
= i32;
8829 pub const VirtualStorageBehaviorUndefined
: VIRTUAL_STORAGE_BEHAVIOR_CODE
= 0i32;
8830 pub const VirtualStorageBehaviorCacheWriteThrough
: VIRTUAL_STORAGE_BEHAVIOR_CODE
= 1i32;
8831 pub const VirtualStorageBehaviorCacheWriteBack
: VIRTUAL_STORAGE_BEHAVIOR_CODE
= 2i32;
8832 pub const VirtualStorageBehaviorStopIoProcessing
: VIRTUAL_STORAGE_BEHAVIOR_CODE
= 3i32;
8833 pub const VirtualStorageBehaviorRestartIoProcessing
: VIRTUAL_STORAGE_BEHAVIOR_CODE
= 4i32;
8835 pub struct VIRTUAL_STORAGE_SET_BEHAVIOR_INPUT
{
8837 pub BehaviorCode
: VIRTUAL_STORAGE_BEHAVIOR_CODE
,
8839 impl ::core
::marker
::Copy
for VIRTUAL_STORAGE_SET_BEHAVIOR_INPUT {}
8840 impl ::core
::clone
::Clone
for VIRTUAL_STORAGE_SET_BEHAVIOR_INPUT
{
8841 fn clone(&self) -> Self {
8846 pub struct VOLUME_BITMAP_BUFFER
{
8847 pub StartingLcn
: i64,
8848 pub BitmapSize
: i64,
8849 pub Buffer
: [u8; 1],
8851 impl ::core
::marker
::Copy
for VOLUME_BITMAP_BUFFER {}
8852 impl ::core
::clone
::Clone
for VOLUME_BITMAP_BUFFER
{
8853 fn clone(&self) -> Self {
8858 pub struct VOLUME_DISK_EXTENTS
{
8859 pub NumberOfDiskExtents
: u32,
8860 pub Extents
: [DISK_EXTENT
; 1],
8862 impl ::core
::marker
::Copy
for VOLUME_DISK_EXTENTS {}
8863 impl ::core
::clone
::Clone
for VOLUME_DISK_EXTENTS
{
8864 fn clone(&self) -> Self {
8869 pub struct VOLUME_GET_GPT_ATTRIBUTES_INFORMATION
{
8870 pub GptAttributes
: u64,
8872 impl ::core
::marker
::Copy
for VOLUME_GET_GPT_ATTRIBUTES_INFORMATION {}
8873 impl ::core
::clone
::Clone
for VOLUME_GET_GPT_ATTRIBUTES_INFORMATION
{
8874 fn clone(&self) -> Self {
8878 pub const VOLUME_IS_DIRTY
: u32 = 1u32;
8879 pub const VOLUME_SESSION_OPEN
: u32 = 4u32;
8880 pub const VOLUME_UPGRADE_SCHEDULED
: u32 = 2u32;
8882 pub struct WIM_PROVIDER_ADD_OVERLAY_INPUT
{
8885 pub WimFileNameOffset
: u32,
8886 pub WimFileNameLength
: u32,
8888 impl ::core
::marker
::Copy
for WIM_PROVIDER_ADD_OVERLAY_INPUT {}
8889 impl ::core
::clone
::Clone
for WIM_PROVIDER_ADD_OVERLAY_INPUT
{
8890 fn clone(&self) -> Self {
8894 pub const WIM_PROVIDER_CURRENT_VERSION
: u32 = 1u32;
8895 pub const WIM_PROVIDER_EXTERNAL_FLAG_NOT_ACTIVE
: u32 = 1u32;
8896 pub const WIM_PROVIDER_EXTERNAL_FLAG_SUSPENDED
: u32 = 2u32;
8898 pub struct WIM_PROVIDER_EXTERNAL_INFO
{
8901 pub DataSourceId
: i64,
8902 pub ResourceHash
: [u8; 20],
8904 impl ::core
::marker
::Copy
for WIM_PROVIDER_EXTERNAL_INFO {}
8905 impl ::core
::clone
::Clone
for WIM_PROVIDER_EXTERNAL_INFO
{
8906 fn clone(&self) -> Self {
8911 pub struct WIM_PROVIDER_OVERLAY_ENTRY
{
8912 pub NextEntryOffset
: u32,
8913 pub DataSourceId
: i64,
8914 pub WimGuid
: ::windows_sys
::core
::GUID
,
8915 pub WimFileNameOffset
: u32,
8920 impl ::core
::marker
::Copy
for WIM_PROVIDER_OVERLAY_ENTRY {}
8921 impl ::core
::clone
::Clone
for WIM_PROVIDER_OVERLAY_ENTRY
{
8922 fn clone(&self) -> Self {
8927 pub struct WIM_PROVIDER_REMOVE_OVERLAY_INPUT
{
8928 pub DataSourceId
: i64,
8930 impl ::core
::marker
::Copy
for WIM_PROVIDER_REMOVE_OVERLAY_INPUT {}
8931 impl ::core
::clone
::Clone
for WIM_PROVIDER_REMOVE_OVERLAY_INPUT
{
8932 fn clone(&self) -> Self {
8937 pub struct WIM_PROVIDER_SUSPEND_OVERLAY_INPUT
{
8938 pub DataSourceId
: i64,
8940 impl ::core
::marker
::Copy
for WIM_PROVIDER_SUSPEND_OVERLAY_INPUT {}
8941 impl ::core
::clone
::Clone
for WIM_PROVIDER_SUSPEND_OVERLAY_INPUT
{
8942 fn clone(&self) -> Self {
8947 pub struct WIM_PROVIDER_UPDATE_OVERLAY_INPUT
{
8948 pub DataSourceId
: i64,
8949 pub WimFileNameOffset
: u32,
8950 pub WimFileNameLength
: u32,
8952 impl ::core
::marker
::Copy
for WIM_PROVIDER_UPDATE_OVERLAY_INPUT {}
8953 impl ::core
::clone
::Clone
for WIM_PROVIDER_UPDATE_OVERLAY_INPUT
{
8954 fn clone(&self) -> Self {
8958 pub const WOF_CURRENT_VERSION
: u32 = 1u32;
8960 #[cfg(feature = "Win32_Storage_FileSystem")]
8961 pub struct WOF_EXTERNAL_FILE_ID
{
8962 pub FileId
: super::super::Storage
::FileSystem
::FILE_ID_128
,
8964 #[cfg(feature = "Win32_Storage_FileSystem")]
8965 impl ::core
::marker
::Copy
for WOF_EXTERNAL_FILE_ID {}
8966 #[cfg(feature = "Win32_Storage_FileSystem")]
8967 impl ::core
::clone
::Clone
for WOF_EXTERNAL_FILE_ID
{
8968 fn clone(&self) -> Self {
8973 pub struct WOF_EXTERNAL_INFO
{
8977 impl ::core
::marker
::Copy
for WOF_EXTERNAL_INFO {}
8978 impl ::core
::clone
::Clone
for WOF_EXTERNAL_INFO
{
8979 fn clone(&self) -> Self {
8983 pub const WOF_PROVIDER_CLOUD
: u32 = 3u32;
8985 pub struct WOF_VERSION_INFO
{
8986 pub WofVersion
: u32,
8988 impl ::core
::marker
::Copy
for WOF_VERSION_INFO {}
8989 impl ::core
::clone
::Clone
for WOF_VERSION_INFO
{
8990 fn clone(&self) -> Self {
8994 pub type WRITE_CACHE_CHANGE
= i32;
8995 pub const WriteCacheChangeUnknown
: WRITE_CACHE_CHANGE
= 0i32;
8996 pub const WriteCacheNotChangeable
: WRITE_CACHE_CHANGE
= 1i32;
8997 pub const WriteCacheChangeable
: WRITE_CACHE_CHANGE
= 2i32;
8998 pub type WRITE_CACHE_ENABLE
= i32;
8999 pub const WriteCacheEnableUnknown
: WRITE_CACHE_ENABLE
= 0i32;
9000 pub const WriteCacheDisabled
: WRITE_CACHE_ENABLE
= 1i32;
9001 pub const WriteCacheEnabled
: WRITE_CACHE_ENABLE
= 2i32;
9002 pub type WRITE_CACHE_TYPE
= i32;
9003 pub const WriteCacheTypeUnknown
: WRITE_CACHE_TYPE
= 0i32;
9004 pub const WriteCacheTypeNone
: WRITE_CACHE_TYPE
= 1i32;
9005 pub const WriteCacheTypeWriteBack
: WRITE_CACHE_TYPE
= 2i32;
9006 pub const WriteCacheTypeWriteThrough
: WRITE_CACHE_TYPE
= 3i32;
9007 pub const WRITE_COMPRESSION_INFO_VALID
: u32 = 16u32;
9008 pub type WRITE_THROUGH
= i32;
9009 pub const WriteThroughUnknown
: WRITE_THROUGH
= 0i32;
9010 pub const WriteThroughNotSupported
: WRITE_THROUGH
= 1i32;
9011 pub const WriteThroughSupported
: WRITE_THROUGH
= 2i32;
9013 pub struct WRITE_USN_REASON_INPUT
{
9015 pub UsnReasonToWrite
: u32,
9017 impl ::core
::marker
::Copy
for WRITE_USN_REASON_INPUT {}
9018 impl ::core
::clone
::Clone
for WRITE_USN_REASON_INPUT
{
9019 fn clone(&self) -> Self {
9023 pub type _DEVICEDUMP_COLLECTION_TYPE
= i32;
9024 pub const TCCollectionBugCheck
: _DEVICEDUMP_COLLECTION_TYPE
= 1i32;
9025 pub const TCCollectionApplicationRequested
: _DEVICEDUMP_COLLECTION_TYPE
= 2i32;
9026 pub const TCCollectionDeviceRequested
: _DEVICEDUMP_COLLECTION_TYPE
= 3i32;