]> git.proxmox.com Git - rustc.git/blob - vendor/windows-sys/src/Windows/Win32/Storage/ProjectedFileSystem/mod.rs
New upstream version 1.68.2+dfsg1
[rustc.git] / vendor / windows-sys / src / Windows / Win32 / Storage / ProjectedFileSystem / mod.rs
1 ::windows_sys::core::link ! ( "projectedfslib.dll""system" #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"] fn PrjAllocateAlignedBuffer ( namespacevirtualizationcontext : PRJ_NAMESPACE_VIRTUALIZATION_CONTEXT , size : usize ) -> *mut ::core::ffi::c_void );
2 ::windows_sys::core::link ! ( "projectedfslib.dll""system" #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"] fn PrjClearNegativePathCache ( namespacevirtualizationcontext : PRJ_NAMESPACE_VIRTUALIZATION_CONTEXT , totalentrynumber : *mut u32 ) -> :: windows_sys::core::HRESULT );
3 ::windows_sys::core::link ! ( "projectedfslib.dll""system" #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"] fn PrjCompleteCommand ( namespacevirtualizationcontext : PRJ_NAMESPACE_VIRTUALIZATION_CONTEXT , commandid : i32 , completionresult : :: windows_sys::core::HRESULT , extendedparameters : *const PRJ_COMPLETE_COMMAND_EXTENDED_PARAMETERS ) -> :: windows_sys::core::HRESULT );
4 ::windows_sys::core::link ! ( "projectedfslib.dll""system" #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"] fn PrjDeleteFile ( namespacevirtualizationcontext : PRJ_NAMESPACE_VIRTUALIZATION_CONTEXT , destinationfilename : :: windows_sys::core::PCWSTR , updateflags : PRJ_UPDATE_TYPES , failurereason : *mut PRJ_UPDATE_FAILURE_CAUSES ) -> :: windows_sys::core::HRESULT );
5 #[cfg(feature = "Win32_Foundation")]
6 ::windows_sys::core::link ! ( "projectedfslib.dll""system" #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`, `\"Win32_Foundation\"`*"] fn PrjDoesNameContainWildCards ( filename : :: windows_sys::core::PCWSTR ) -> super::super::Foundation:: BOOLEAN );
7 ::windows_sys::core::link ! ( "projectedfslib.dll""system" #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"] fn PrjFileNameCompare ( filename1 : :: windows_sys::core::PCWSTR , filename2 : :: windows_sys::core::PCWSTR ) -> i32 );
8 #[cfg(feature = "Win32_Foundation")]
9 ::windows_sys::core::link ! ( "projectedfslib.dll""system" #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`, `\"Win32_Foundation\"`*"] fn PrjFileNameMatch ( filenametocheck : :: windows_sys::core::PCWSTR , pattern : :: windows_sys::core::PCWSTR ) -> super::super::Foundation:: BOOLEAN );
10 #[cfg(feature = "Win32_Foundation")]
11 ::windows_sys::core::link ! ( "projectedfslib.dll""system" #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`, `\"Win32_Foundation\"`*"] fn PrjFillDirEntryBuffer ( filename : :: windows_sys::core::PCWSTR , filebasicinfo : *const PRJ_FILE_BASIC_INFO , direntrybufferhandle : PRJ_DIR_ENTRY_BUFFER_HANDLE ) -> :: windows_sys::core::HRESULT );
12 #[cfg(feature = "Win32_Foundation")]
13 ::windows_sys::core::link ! ( "projectedfslib.dll""system" #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`, `\"Win32_Foundation\"`*"] fn PrjFillDirEntryBuffer2 ( direntrybufferhandle : PRJ_DIR_ENTRY_BUFFER_HANDLE , filename : :: windows_sys::core::PCWSTR , filebasicinfo : *const PRJ_FILE_BASIC_INFO , extendedinfo : *const PRJ_EXTENDED_INFO ) -> :: windows_sys::core::HRESULT );
14 ::windows_sys::core::link ! ( "projectedfslib.dll""system" #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"] fn PrjFreeAlignedBuffer ( buffer : *const ::core::ffi::c_void ) -> ( ) );
15 ::windows_sys::core::link ! ( "projectedfslib.dll""system" #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"] fn PrjGetOnDiskFileState ( destinationfilename : :: windows_sys::core::PCWSTR , filestate : *mut PRJ_FILE_STATE ) -> :: windows_sys::core::HRESULT );
16 ::windows_sys::core::link ! ( "projectedfslib.dll""system" #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"] fn PrjGetVirtualizationInstanceInfo ( namespacevirtualizationcontext : PRJ_NAMESPACE_VIRTUALIZATION_CONTEXT , virtualizationinstanceinfo : *mut PRJ_VIRTUALIZATION_INSTANCE_INFO ) -> :: windows_sys::core::HRESULT );
17 ::windows_sys::core::link ! ( "projectedfslib.dll""system" #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"] fn PrjMarkDirectoryAsPlaceholder ( rootpathname : :: windows_sys::core::PCWSTR , targetpathname : :: windows_sys::core::PCWSTR , versioninfo : *const PRJ_PLACEHOLDER_VERSION_INFO , virtualizationinstanceid : *const :: windows_sys::core::GUID ) -> :: windows_sys::core::HRESULT );
18 #[cfg(feature = "Win32_Foundation")]
19 ::windows_sys::core::link ! ( "projectedfslib.dll""system" #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`, `\"Win32_Foundation\"`*"] fn PrjStartVirtualizing ( virtualizationrootpath : :: windows_sys::core::PCWSTR , callbacks : *const PRJ_CALLBACKS , instancecontext : *const ::core::ffi::c_void , options : *const PRJ_STARTVIRTUALIZING_OPTIONS , namespacevirtualizationcontext : *mut PRJ_NAMESPACE_VIRTUALIZATION_CONTEXT ) -> :: windows_sys::core::HRESULT );
20 ::windows_sys::core::link ! ( "projectedfslib.dll""system" #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"] fn PrjStopVirtualizing ( namespacevirtualizationcontext : PRJ_NAMESPACE_VIRTUALIZATION_CONTEXT ) -> ( ) );
21 #[cfg(feature = "Win32_Foundation")]
22 ::windows_sys::core::link ! ( "projectedfslib.dll""system" #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`, `\"Win32_Foundation\"`*"] fn PrjUpdateFileIfNeeded ( namespacevirtualizationcontext : PRJ_NAMESPACE_VIRTUALIZATION_CONTEXT , destinationfilename : :: windows_sys::core::PCWSTR , placeholderinfo : *const PRJ_PLACEHOLDER_INFO , placeholderinfosize : u32 , updateflags : PRJ_UPDATE_TYPES , failurereason : *mut PRJ_UPDATE_FAILURE_CAUSES ) -> :: windows_sys::core::HRESULT );
23 ::windows_sys::core::link ! ( "projectedfslib.dll""system" #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"] fn PrjWriteFileData ( namespacevirtualizationcontext : PRJ_NAMESPACE_VIRTUALIZATION_CONTEXT , datastreamid : *const :: windows_sys::core::GUID , buffer : *const ::core::ffi::c_void , byteoffset : u64 , length : u32 ) -> :: windows_sys::core::HRESULT );
24 #[cfg(feature = "Win32_Foundation")]
25 ::windows_sys::core::link ! ( "projectedfslib.dll""system" #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`, `\"Win32_Foundation\"`*"] fn PrjWritePlaceholderInfo ( namespacevirtualizationcontext : PRJ_NAMESPACE_VIRTUALIZATION_CONTEXT , destinationfilename : :: windows_sys::core::PCWSTR , placeholderinfo : *const PRJ_PLACEHOLDER_INFO , placeholderinfosize : u32 ) -> :: windows_sys::core::HRESULT );
26 #[cfg(feature = "Win32_Foundation")]
27 ::windows_sys::core::link ! ( "projectedfslib.dll""system" #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`, `\"Win32_Foundation\"`*"] fn PrjWritePlaceholderInfo2 ( namespacevirtualizationcontext : PRJ_NAMESPACE_VIRTUALIZATION_CONTEXT , destinationfilename : :: windows_sys::core::PCWSTR , placeholderinfo : *const PRJ_PLACEHOLDER_INFO , placeholderinfosize : u32 , extendedinfo : *const PRJ_EXTENDED_INFO ) -> :: windows_sys::core::HRESULT );
28 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
29 pub type PRJ_CALLBACK_DATA_FLAGS = i32;
30 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
31 pub const PRJ_CB_DATA_FLAG_ENUM_RESTART_SCAN: PRJ_CALLBACK_DATA_FLAGS = 1i32;
32 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
33 pub const PRJ_CB_DATA_FLAG_ENUM_RETURN_SINGLE_ENTRY: PRJ_CALLBACK_DATA_FLAGS = 2i32;
34 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
35 pub type PRJ_COMPLETE_COMMAND_TYPE = i32;
36 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
37 pub const PRJ_COMPLETE_COMMAND_TYPE_NOTIFICATION: PRJ_COMPLETE_COMMAND_TYPE = 1i32;
38 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
39 pub const PRJ_COMPLETE_COMMAND_TYPE_ENUMERATION: PRJ_COMPLETE_COMMAND_TYPE = 2i32;
40 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
41 pub type PRJ_EXT_INFO_TYPE = i32;
42 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
43 pub const PRJ_EXT_INFO_TYPE_SYMLINK: PRJ_EXT_INFO_TYPE = 1i32;
44 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
45 pub type PRJ_FILE_STATE = u32;
46 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
47 pub const PRJ_FILE_STATE_PLACEHOLDER: PRJ_FILE_STATE = 1u32;
48 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
49 pub const PRJ_FILE_STATE_HYDRATED_PLACEHOLDER: PRJ_FILE_STATE = 2u32;
50 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
51 pub const PRJ_FILE_STATE_DIRTY_PLACEHOLDER: PRJ_FILE_STATE = 4u32;
52 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
53 pub const PRJ_FILE_STATE_FULL: PRJ_FILE_STATE = 8u32;
54 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
55 pub const PRJ_FILE_STATE_TOMBSTONE: PRJ_FILE_STATE = 16u32;
56 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
57 pub type PRJ_NOTIFICATION = i32;
58 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
59 pub const PRJ_NOTIFICATION_FILE_OPENED: PRJ_NOTIFICATION = 2i32;
60 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
61 pub const PRJ_NOTIFICATION_NEW_FILE_CREATED: PRJ_NOTIFICATION = 4i32;
62 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
63 pub const PRJ_NOTIFICATION_FILE_OVERWRITTEN: PRJ_NOTIFICATION = 8i32;
64 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
65 pub const PRJ_NOTIFICATION_PRE_DELETE: PRJ_NOTIFICATION = 16i32;
66 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
67 pub const PRJ_NOTIFICATION_PRE_RENAME: PRJ_NOTIFICATION = 32i32;
68 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
69 pub const PRJ_NOTIFICATION_PRE_SET_HARDLINK: PRJ_NOTIFICATION = 64i32;
70 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
71 pub const PRJ_NOTIFICATION_FILE_RENAMED: PRJ_NOTIFICATION = 128i32;
72 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
73 pub const PRJ_NOTIFICATION_HARDLINK_CREATED: PRJ_NOTIFICATION = 256i32;
74 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
75 pub const PRJ_NOTIFICATION_FILE_HANDLE_CLOSED_NO_MODIFICATION: PRJ_NOTIFICATION = 512i32;
76 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
77 pub const PRJ_NOTIFICATION_FILE_HANDLE_CLOSED_FILE_MODIFIED: PRJ_NOTIFICATION = 1024i32;
78 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
79 pub const PRJ_NOTIFICATION_FILE_HANDLE_CLOSED_FILE_DELETED: PRJ_NOTIFICATION = 2048i32;
80 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
81 pub const PRJ_NOTIFICATION_FILE_PRE_CONVERT_TO_FULL: PRJ_NOTIFICATION = 4096i32;
82 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
83 pub type PRJ_NOTIFY_TYPES = u32;
84 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
85 pub const PRJ_NOTIFY_NONE: PRJ_NOTIFY_TYPES = 0u32;
86 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
87 pub const PRJ_NOTIFY_SUPPRESS_NOTIFICATIONS: PRJ_NOTIFY_TYPES = 1u32;
88 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
89 pub const PRJ_NOTIFY_FILE_OPENED: PRJ_NOTIFY_TYPES = 2u32;
90 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
91 pub const PRJ_NOTIFY_NEW_FILE_CREATED: PRJ_NOTIFY_TYPES = 4u32;
92 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
93 pub const PRJ_NOTIFY_FILE_OVERWRITTEN: PRJ_NOTIFY_TYPES = 8u32;
94 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
95 pub const PRJ_NOTIFY_PRE_DELETE: PRJ_NOTIFY_TYPES = 16u32;
96 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
97 pub const PRJ_NOTIFY_PRE_RENAME: PRJ_NOTIFY_TYPES = 32u32;
98 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
99 pub const PRJ_NOTIFY_PRE_SET_HARDLINK: PRJ_NOTIFY_TYPES = 64u32;
100 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
101 pub const PRJ_NOTIFY_FILE_RENAMED: PRJ_NOTIFY_TYPES = 128u32;
102 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
103 pub const PRJ_NOTIFY_HARDLINK_CREATED: PRJ_NOTIFY_TYPES = 256u32;
104 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
105 pub const PRJ_NOTIFY_FILE_HANDLE_CLOSED_NO_MODIFICATION: PRJ_NOTIFY_TYPES = 512u32;
106 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
107 pub const PRJ_NOTIFY_FILE_HANDLE_CLOSED_FILE_MODIFIED: PRJ_NOTIFY_TYPES = 1024u32;
108 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
109 pub const PRJ_NOTIFY_FILE_HANDLE_CLOSED_FILE_DELETED: PRJ_NOTIFY_TYPES = 2048u32;
110 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
111 pub const PRJ_NOTIFY_FILE_PRE_CONVERT_TO_FULL: PRJ_NOTIFY_TYPES = 4096u32;
112 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
113 pub const PRJ_NOTIFY_USE_EXISTING_MASK: PRJ_NOTIFY_TYPES = 4294967295u32;
114 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
115 pub type PRJ_PLACEHOLDER_ID = i32;
116 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
117 pub const PRJ_PLACEHOLDER_ID_LENGTH: PRJ_PLACEHOLDER_ID = 128i32;
118 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
119 pub type PRJ_STARTVIRTUALIZING_FLAGS = u32;
120 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
121 pub const PRJ_FLAG_NONE: PRJ_STARTVIRTUALIZING_FLAGS = 0u32;
122 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
123 pub const PRJ_FLAG_USE_NEGATIVE_PATH_CACHE: PRJ_STARTVIRTUALIZING_FLAGS = 1u32;
124 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
125 pub type PRJ_UPDATE_FAILURE_CAUSES = u32;
126 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
127 pub const PRJ_UPDATE_FAILURE_CAUSE_NONE: PRJ_UPDATE_FAILURE_CAUSES = 0u32;
128 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
129 pub const PRJ_UPDATE_FAILURE_CAUSE_DIRTY_METADATA: PRJ_UPDATE_FAILURE_CAUSES = 1u32;
130 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
131 pub const PRJ_UPDATE_FAILURE_CAUSE_DIRTY_DATA: PRJ_UPDATE_FAILURE_CAUSES = 2u32;
132 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
133 pub const PRJ_UPDATE_FAILURE_CAUSE_TOMBSTONE: PRJ_UPDATE_FAILURE_CAUSES = 4u32;
134 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
135 pub const PRJ_UPDATE_FAILURE_CAUSE_READ_ONLY: PRJ_UPDATE_FAILURE_CAUSES = 8u32;
136 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
137 pub type PRJ_UPDATE_TYPES = u32;
138 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
139 pub const PRJ_UPDATE_NONE: PRJ_UPDATE_TYPES = 0u32;
140 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
141 pub const PRJ_UPDATE_ALLOW_DIRTY_METADATA: PRJ_UPDATE_TYPES = 1u32;
142 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
143 pub const PRJ_UPDATE_ALLOW_DIRTY_DATA: PRJ_UPDATE_TYPES = 2u32;
144 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
145 pub const PRJ_UPDATE_ALLOW_TOMBSTONE: PRJ_UPDATE_TYPES = 4u32;
146 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
147 pub const PRJ_UPDATE_RESERVED1: PRJ_UPDATE_TYPES = 8u32;
148 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
149 pub const PRJ_UPDATE_RESERVED2: PRJ_UPDATE_TYPES = 16u32;
150 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
151 pub const PRJ_UPDATE_ALLOW_READ_ONLY: PRJ_UPDATE_TYPES = 32u32;
152 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
153 pub const PRJ_UPDATE_MAX_VAL: PRJ_UPDATE_TYPES = 64u32;
154 #[repr(C)]
155 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`, `\"Win32_Foundation\"`*"]
156 #[cfg(feature = "Win32_Foundation")]
157 pub struct PRJ_CALLBACKS {
158 pub StartDirectoryEnumerationCallback: PRJ_START_DIRECTORY_ENUMERATION_CB,
159 pub EndDirectoryEnumerationCallback: PRJ_END_DIRECTORY_ENUMERATION_CB,
160 pub GetDirectoryEnumerationCallback: PRJ_GET_DIRECTORY_ENUMERATION_CB,
161 pub GetPlaceholderInfoCallback: PRJ_GET_PLACEHOLDER_INFO_CB,
162 pub GetFileDataCallback: PRJ_GET_FILE_DATA_CB,
163 pub QueryFileNameCallback: PRJ_QUERY_FILE_NAME_CB,
164 pub NotificationCallback: PRJ_NOTIFICATION_CB,
165 pub CancelCommandCallback: PRJ_CANCEL_COMMAND_CB,
166 }
167 #[cfg(feature = "Win32_Foundation")]
168 impl ::core::marker::Copy for PRJ_CALLBACKS {}
169 #[cfg(feature = "Win32_Foundation")]
170 impl ::core::clone::Clone for PRJ_CALLBACKS {
171 fn clone(&self) -> Self {
172 *self
173 }
174 }
175 #[repr(C)]
176 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
177 pub struct PRJ_CALLBACK_DATA {
178 pub Size: u32,
179 pub Flags: PRJ_CALLBACK_DATA_FLAGS,
180 pub NamespaceVirtualizationContext: PRJ_NAMESPACE_VIRTUALIZATION_CONTEXT,
181 pub CommandId: i32,
182 pub FileId: ::windows_sys::core::GUID,
183 pub DataStreamId: ::windows_sys::core::GUID,
184 pub FilePathName: ::windows_sys::core::PCWSTR,
185 pub VersionInfo: *mut PRJ_PLACEHOLDER_VERSION_INFO,
186 pub TriggeringProcessId: u32,
187 pub TriggeringProcessImageFileName: ::windows_sys::core::PCWSTR,
188 pub InstanceContext: *mut ::core::ffi::c_void,
189 }
190 impl ::core::marker::Copy for PRJ_CALLBACK_DATA {}
191 impl ::core::clone::Clone for PRJ_CALLBACK_DATA {
192 fn clone(&self) -> Self {
193 *self
194 }
195 }
196 #[repr(C)]
197 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
198 pub struct PRJ_COMPLETE_COMMAND_EXTENDED_PARAMETERS {
199 pub CommandType: PRJ_COMPLETE_COMMAND_TYPE,
200 pub Anonymous: PRJ_COMPLETE_COMMAND_EXTENDED_PARAMETERS_0,
201 }
202 impl ::core::marker::Copy for PRJ_COMPLETE_COMMAND_EXTENDED_PARAMETERS {}
203 impl ::core::clone::Clone for PRJ_COMPLETE_COMMAND_EXTENDED_PARAMETERS {
204 fn clone(&self) -> Self {
205 *self
206 }
207 }
208 #[repr(C)]
209 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
210 pub union PRJ_COMPLETE_COMMAND_EXTENDED_PARAMETERS_0 {
211 pub Notification: PRJ_COMPLETE_COMMAND_EXTENDED_PARAMETERS_0_1,
212 pub Enumeration: PRJ_COMPLETE_COMMAND_EXTENDED_PARAMETERS_0_0,
213 }
214 impl ::core::marker::Copy for PRJ_COMPLETE_COMMAND_EXTENDED_PARAMETERS_0 {}
215 impl ::core::clone::Clone for PRJ_COMPLETE_COMMAND_EXTENDED_PARAMETERS_0 {
216 fn clone(&self) -> Self {
217 *self
218 }
219 }
220 #[repr(C)]
221 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
222 pub struct PRJ_COMPLETE_COMMAND_EXTENDED_PARAMETERS_0_0 {
223 pub DirEntryBufferHandle: PRJ_DIR_ENTRY_BUFFER_HANDLE,
224 }
225 impl ::core::marker::Copy for PRJ_COMPLETE_COMMAND_EXTENDED_PARAMETERS_0_0 {}
226 impl ::core::clone::Clone for PRJ_COMPLETE_COMMAND_EXTENDED_PARAMETERS_0_0 {
227 fn clone(&self) -> Self {
228 *self
229 }
230 }
231 #[repr(C)]
232 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
233 pub struct PRJ_COMPLETE_COMMAND_EXTENDED_PARAMETERS_0_1 {
234 pub NotificationMask: PRJ_NOTIFY_TYPES,
235 }
236 impl ::core::marker::Copy for PRJ_COMPLETE_COMMAND_EXTENDED_PARAMETERS_0_1 {}
237 impl ::core::clone::Clone for PRJ_COMPLETE_COMMAND_EXTENDED_PARAMETERS_0_1 {
238 fn clone(&self) -> Self {
239 *self
240 }
241 }
242 pub type PRJ_DIR_ENTRY_BUFFER_HANDLE = isize;
243 #[repr(C)]
244 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
245 pub struct PRJ_EXTENDED_INFO {
246 pub InfoType: PRJ_EXT_INFO_TYPE,
247 pub NextInfoOffset: u32,
248 pub Anonymous: PRJ_EXTENDED_INFO_0,
249 }
250 impl ::core::marker::Copy for PRJ_EXTENDED_INFO {}
251 impl ::core::clone::Clone for PRJ_EXTENDED_INFO {
252 fn clone(&self) -> Self {
253 *self
254 }
255 }
256 #[repr(C)]
257 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
258 pub union PRJ_EXTENDED_INFO_0 {
259 pub Symlink: PRJ_EXTENDED_INFO_0_0,
260 }
261 impl ::core::marker::Copy for PRJ_EXTENDED_INFO_0 {}
262 impl ::core::clone::Clone for PRJ_EXTENDED_INFO_0 {
263 fn clone(&self) -> Self {
264 *self
265 }
266 }
267 #[repr(C)]
268 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
269 pub struct PRJ_EXTENDED_INFO_0_0 {
270 pub TargetName: ::windows_sys::core::PCWSTR,
271 }
272 impl ::core::marker::Copy for PRJ_EXTENDED_INFO_0_0 {}
273 impl ::core::clone::Clone for PRJ_EXTENDED_INFO_0_0 {
274 fn clone(&self) -> Self {
275 *self
276 }
277 }
278 #[repr(C)]
279 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`, `\"Win32_Foundation\"`*"]
280 #[cfg(feature = "Win32_Foundation")]
281 pub struct PRJ_FILE_BASIC_INFO {
282 pub IsDirectory: super::super::Foundation::BOOLEAN,
283 pub FileSize: i64,
284 pub CreationTime: i64,
285 pub LastAccessTime: i64,
286 pub LastWriteTime: i64,
287 pub ChangeTime: i64,
288 pub FileAttributes: u32,
289 }
290 #[cfg(feature = "Win32_Foundation")]
291 impl ::core::marker::Copy for PRJ_FILE_BASIC_INFO {}
292 #[cfg(feature = "Win32_Foundation")]
293 impl ::core::clone::Clone for PRJ_FILE_BASIC_INFO {
294 fn clone(&self) -> Self {
295 *self
296 }
297 }
298 pub type PRJ_NAMESPACE_VIRTUALIZATION_CONTEXT = isize;
299 #[repr(C)]
300 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
301 pub struct PRJ_NOTIFICATION_MAPPING {
302 pub NotificationBitMask: PRJ_NOTIFY_TYPES,
303 pub NotificationRoot: ::windows_sys::core::PCWSTR,
304 }
305 impl ::core::marker::Copy for PRJ_NOTIFICATION_MAPPING {}
306 impl ::core::clone::Clone for PRJ_NOTIFICATION_MAPPING {
307 fn clone(&self) -> Self {
308 *self
309 }
310 }
311 #[repr(C)]
312 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`, `\"Win32_Foundation\"`*"]
313 #[cfg(feature = "Win32_Foundation")]
314 pub union PRJ_NOTIFICATION_PARAMETERS {
315 pub PostCreate: PRJ_NOTIFICATION_PARAMETERS_2,
316 pub FileRenamed: PRJ_NOTIFICATION_PARAMETERS_1,
317 pub FileDeletedOnHandleClose: PRJ_NOTIFICATION_PARAMETERS_0,
318 }
319 #[cfg(feature = "Win32_Foundation")]
320 impl ::core::marker::Copy for PRJ_NOTIFICATION_PARAMETERS {}
321 #[cfg(feature = "Win32_Foundation")]
322 impl ::core::clone::Clone for PRJ_NOTIFICATION_PARAMETERS {
323 fn clone(&self) -> Self {
324 *self
325 }
326 }
327 #[repr(C)]
328 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`, `\"Win32_Foundation\"`*"]
329 #[cfg(feature = "Win32_Foundation")]
330 pub struct PRJ_NOTIFICATION_PARAMETERS_0 {
331 pub IsFileModified: super::super::Foundation::BOOLEAN,
332 }
333 #[cfg(feature = "Win32_Foundation")]
334 impl ::core::marker::Copy for PRJ_NOTIFICATION_PARAMETERS_0 {}
335 #[cfg(feature = "Win32_Foundation")]
336 impl ::core::clone::Clone for PRJ_NOTIFICATION_PARAMETERS_0 {
337 fn clone(&self) -> Self {
338 *self
339 }
340 }
341 #[repr(C)]
342 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`, `\"Win32_Foundation\"`*"]
343 #[cfg(feature = "Win32_Foundation")]
344 pub struct PRJ_NOTIFICATION_PARAMETERS_1 {
345 pub NotificationMask: PRJ_NOTIFY_TYPES,
346 }
347 #[cfg(feature = "Win32_Foundation")]
348 impl ::core::marker::Copy for PRJ_NOTIFICATION_PARAMETERS_1 {}
349 #[cfg(feature = "Win32_Foundation")]
350 impl ::core::clone::Clone for PRJ_NOTIFICATION_PARAMETERS_1 {
351 fn clone(&self) -> Self {
352 *self
353 }
354 }
355 #[repr(C)]
356 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`, `\"Win32_Foundation\"`*"]
357 #[cfg(feature = "Win32_Foundation")]
358 pub struct PRJ_NOTIFICATION_PARAMETERS_2 {
359 pub NotificationMask: PRJ_NOTIFY_TYPES,
360 }
361 #[cfg(feature = "Win32_Foundation")]
362 impl ::core::marker::Copy for PRJ_NOTIFICATION_PARAMETERS_2 {}
363 #[cfg(feature = "Win32_Foundation")]
364 impl ::core::clone::Clone for PRJ_NOTIFICATION_PARAMETERS_2 {
365 fn clone(&self) -> Self {
366 *self
367 }
368 }
369 #[repr(C)]
370 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`, `\"Win32_Foundation\"`*"]
371 #[cfg(feature = "Win32_Foundation")]
372 pub struct PRJ_PLACEHOLDER_INFO {
373 pub FileBasicInfo: PRJ_FILE_BASIC_INFO,
374 pub EaInformation: PRJ_PLACEHOLDER_INFO_0,
375 pub SecurityInformation: PRJ_PLACEHOLDER_INFO_1,
376 pub StreamsInformation: PRJ_PLACEHOLDER_INFO_2,
377 pub VersionInfo: PRJ_PLACEHOLDER_VERSION_INFO,
378 pub VariableData: [u8; 1],
379 }
380 #[cfg(feature = "Win32_Foundation")]
381 impl ::core::marker::Copy for PRJ_PLACEHOLDER_INFO {}
382 #[cfg(feature = "Win32_Foundation")]
383 impl ::core::clone::Clone for PRJ_PLACEHOLDER_INFO {
384 fn clone(&self) -> Self {
385 *self
386 }
387 }
388 #[repr(C)]
389 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`, `\"Win32_Foundation\"`*"]
390 #[cfg(feature = "Win32_Foundation")]
391 pub struct PRJ_PLACEHOLDER_INFO_0 {
392 pub EaBufferSize: u32,
393 pub OffsetToFirstEa: u32,
394 }
395 #[cfg(feature = "Win32_Foundation")]
396 impl ::core::marker::Copy for PRJ_PLACEHOLDER_INFO_0 {}
397 #[cfg(feature = "Win32_Foundation")]
398 impl ::core::clone::Clone for PRJ_PLACEHOLDER_INFO_0 {
399 fn clone(&self) -> Self {
400 *self
401 }
402 }
403 #[repr(C)]
404 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`, `\"Win32_Foundation\"`*"]
405 #[cfg(feature = "Win32_Foundation")]
406 pub struct PRJ_PLACEHOLDER_INFO_1 {
407 pub SecurityBufferSize: u32,
408 pub OffsetToSecurityDescriptor: u32,
409 }
410 #[cfg(feature = "Win32_Foundation")]
411 impl ::core::marker::Copy for PRJ_PLACEHOLDER_INFO_1 {}
412 #[cfg(feature = "Win32_Foundation")]
413 impl ::core::clone::Clone for PRJ_PLACEHOLDER_INFO_1 {
414 fn clone(&self) -> Self {
415 *self
416 }
417 }
418 #[repr(C)]
419 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`, `\"Win32_Foundation\"`*"]
420 #[cfg(feature = "Win32_Foundation")]
421 pub struct PRJ_PLACEHOLDER_INFO_2 {
422 pub StreamsInfoBufferSize: u32,
423 pub OffsetToFirstStreamInfo: u32,
424 }
425 #[cfg(feature = "Win32_Foundation")]
426 impl ::core::marker::Copy for PRJ_PLACEHOLDER_INFO_2 {}
427 #[cfg(feature = "Win32_Foundation")]
428 impl ::core::clone::Clone for PRJ_PLACEHOLDER_INFO_2 {
429 fn clone(&self) -> Self {
430 *self
431 }
432 }
433 #[repr(C)]
434 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
435 pub struct PRJ_PLACEHOLDER_VERSION_INFO {
436 pub ProviderID: [u8; 128],
437 pub ContentID: [u8; 128],
438 }
439 impl ::core::marker::Copy for PRJ_PLACEHOLDER_VERSION_INFO {}
440 impl ::core::clone::Clone for PRJ_PLACEHOLDER_VERSION_INFO {
441 fn clone(&self) -> Self {
442 *self
443 }
444 }
445 #[repr(C)]
446 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
447 pub struct PRJ_STARTVIRTUALIZING_OPTIONS {
448 pub Flags: PRJ_STARTVIRTUALIZING_FLAGS,
449 pub PoolThreadCount: u32,
450 pub ConcurrentThreadCount: u32,
451 pub NotificationMappings: *mut PRJ_NOTIFICATION_MAPPING,
452 pub NotificationMappingsCount: u32,
453 }
454 impl ::core::marker::Copy for PRJ_STARTVIRTUALIZING_OPTIONS {}
455 impl ::core::clone::Clone for PRJ_STARTVIRTUALIZING_OPTIONS {
456 fn clone(&self) -> Self {
457 *self
458 }
459 }
460 #[repr(C)]
461 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
462 pub struct PRJ_VIRTUALIZATION_INSTANCE_INFO {
463 pub InstanceID: ::windows_sys::core::GUID,
464 pub WriteAlignment: u32,
465 }
466 impl ::core::marker::Copy for PRJ_VIRTUALIZATION_INSTANCE_INFO {}
467 impl ::core::clone::Clone for PRJ_VIRTUALIZATION_INSTANCE_INFO {
468 fn clone(&self) -> Self {
469 *self
470 }
471 }
472 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
473 pub type PRJ_CANCEL_COMMAND_CB = ::core::option::Option<unsafe extern "system" fn(callbackdata: *const PRJ_CALLBACK_DATA) -> ()>;
474 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
475 pub type PRJ_END_DIRECTORY_ENUMERATION_CB = ::core::option::Option<unsafe extern "system" fn(callbackdata: *const PRJ_CALLBACK_DATA, enumerationid: *const ::windows_sys::core::GUID) -> ::windows_sys::core::HRESULT>;
476 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
477 pub type PRJ_GET_DIRECTORY_ENUMERATION_CB = ::core::option::Option<unsafe extern "system" fn(callbackdata: *const PRJ_CALLBACK_DATA, enumerationid: *const ::windows_sys::core::GUID, searchexpression: ::windows_sys::core::PCWSTR, direntrybufferhandle: PRJ_DIR_ENTRY_BUFFER_HANDLE) -> ::windows_sys::core::HRESULT>;
478 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
479 pub type PRJ_GET_FILE_DATA_CB = ::core::option::Option<unsafe extern "system" fn(callbackdata: *const PRJ_CALLBACK_DATA, byteoffset: u64, length: u32) -> ::windows_sys::core::HRESULT>;
480 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
481 pub type PRJ_GET_PLACEHOLDER_INFO_CB = ::core::option::Option<unsafe extern "system" fn(callbackdata: *const PRJ_CALLBACK_DATA) -> ::windows_sys::core::HRESULT>;
482 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`, `\"Win32_Foundation\"`*"]
483 #[cfg(feature = "Win32_Foundation")]
484 pub type PRJ_NOTIFICATION_CB = ::core::option::Option<unsafe extern "system" fn(callbackdata: *const PRJ_CALLBACK_DATA, isdirectory: super::super::Foundation::BOOLEAN, notification: PRJ_NOTIFICATION, destinationfilename: ::windows_sys::core::PCWSTR, operationparameters: *mut PRJ_NOTIFICATION_PARAMETERS) -> ::windows_sys::core::HRESULT>;
485 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
486 pub type PRJ_QUERY_FILE_NAME_CB = ::core::option::Option<unsafe extern "system" fn(callbackdata: *const PRJ_CALLBACK_DATA) -> ::windows_sys::core::HRESULT>;
487 #[doc = "*Required features: `\"Win32_Storage_ProjectedFileSystem\"`*"]
488 pub type PRJ_START_DIRECTORY_ENUMERATION_CB = ::core::option::Option<unsafe extern "system" fn(callbackdata: *const PRJ_CALLBACK_DATA, enumerationid: *const ::windows_sys::core::GUID) -> ::windows_sys::core::HRESULT>;