1 #![allow(non_snake_case, non_camel_case_types, non_upper_case_globals, clashing_extern_declarations, clippy::all)]
2 #[link(name = "windows")]
3 extern "system" {}
4 #[repr(transparent)]
5 pub struct CommonFileQuery(pub i32);
6 impl CommonFileQuery {
7     pub const DefaultQuery: Self = Self(0i32);
8     pub const OrderByName: Self = Self(1i32);
9     pub const OrderByTitle: Self = Self(2i32);
10     pub const OrderByMusicProperties: Self = Self(3i32);
11     pub const OrderBySearchRank: Self = Self(4i32);
12     pub const OrderByDate: Self = Self(5i32);
13 }
14 impl ::core::marker::Copy for CommonFileQuery {}
15 impl ::core::clone::Clone for CommonFileQuery {
clone(&self) -> Self16     fn clone(&self) -> Self {
17         *self
18     }
19 }
20 #[repr(transparent)]
21 pub struct CommonFolderQuery(pub i32);
22 impl CommonFolderQuery {
23     pub const DefaultQuery: Self = Self(0i32);
24     pub const GroupByYear: Self = Self(100i32);
25     pub const GroupByMonth: Self = Self(101i32);
26     pub const GroupByArtist: Self = Self(102i32);
27     pub const GroupByAlbum: Self = Self(103i32);
28     pub const GroupByAlbumArtist: Self = Self(104i32);
29     pub const GroupByComposer: Self = Self(105i32);
30     pub const GroupByGenre: Self = Self(106i32);
31     pub const GroupByPublishedYear: Self = Self(107i32);
32     pub const GroupByRating: Self = Self(108i32);
33     pub const GroupByTag: Self = Self(109i32);
34     pub const GroupByAuthor: Self = Self(110i32);
35     pub const GroupByType: Self = Self(111i32);
36 }
37 impl ::core::marker::Copy for CommonFolderQuery {}
38 impl ::core::clone::Clone for CommonFolderQuery {
clone(&self) -> Self39     fn clone(&self) -> Self {
40         *self
41     }
42 }
43 pub type ContentIndexer = *mut ::core::ffi::c_void;
44 pub type ContentIndexerQuery = *mut ::core::ffi::c_void;
45 #[repr(transparent)]
46 pub struct DateStackOption(pub i32);
47 impl DateStackOption {
48     pub const None: Self = Self(0i32);
49     pub const Year: Self = Self(1i32);
50     pub const Month: Self = Self(2i32);
51 }
52 impl ::core::marker::Copy for DateStackOption {}
53 impl ::core::clone::Clone for DateStackOption {
clone(&self) -> Self54     fn clone(&self) -> Self {
55         *self
56     }
57 }
58 #[repr(transparent)]
59 pub struct FolderDepth(pub i32);
60 impl FolderDepth {
61     pub const Shallow: Self = Self(0i32);
62     pub const Deep: Self = Self(1i32);
63 }
64 impl ::core::marker::Copy for FolderDepth {}
65 impl ::core::clone::Clone for FolderDepth {
clone(&self) -> Self66     fn clone(&self) -> Self {
67         *self
68     }
69 }
70 pub type IIndexableContent = *mut ::core::ffi::c_void;
71 pub type IStorageFolderQueryOperations = *mut ::core::ffi::c_void;
72 pub type IStorageQueryResultBase = *mut ::core::ffi::c_void;
73 pub type IndexableContent = *mut ::core::ffi::c_void;
74 #[repr(transparent)]
75 pub struct IndexedState(pub i32);
76 impl IndexedState {
77     pub const Unknown: Self = Self(0i32);
78     pub const NotIndexed: Self = Self(1i32);
79     pub const PartiallyIndexed: Self = Self(2i32);
80     pub const FullyIndexed: Self = Self(3i32);
81 }
82 impl ::core::marker::Copy for IndexedState {}
83 impl ::core::clone::Clone for IndexedState {
clone(&self) -> Self84     fn clone(&self) -> Self {
85         *self
86     }
87 }
88 #[repr(transparent)]
89 pub struct IndexerOption(pub i32);
90 impl IndexerOption {
91     pub const UseIndexerWhenAvailable: Self = Self(0i32);
92     pub const OnlyUseIndexer: Self = Self(1i32);
93     pub const DoNotUseIndexer: Self = Self(2i32);
94     pub const OnlyUseIndexerAndOptimizeForIndexedProperties: Self = Self(3i32);
95 }
96 impl ::core::marker::Copy for IndexerOption {}
97 impl ::core::clone::Clone for IndexerOption {
clone(&self) -> Self98     fn clone(&self) -> Self {
99         *self
100     }
101 }
102 pub type QueryOptions = *mut ::core::ffi::c_void;
103 #[repr(C)]
104 pub struct SortEntry {
105     pub PropertyName: ::windows_sys::core::HSTRING,
106     pub AscendingOrder: bool,
107 }
108 impl ::core::marker::Copy for SortEntry {}
109 impl ::core::clone::Clone for SortEntry {
clone(&self) -> Self110     fn clone(&self) -> Self {
111         *self
112     }
113 }
114 pub type SortEntryVector = *mut ::core::ffi::c_void;
115 pub type StorageFileQueryResult = *mut ::core::ffi::c_void;
116 pub type StorageFolderQueryResult = *mut ::core::ffi::c_void;
117 pub type StorageItemQueryResult = *mut ::core::ffi::c_void;
118 pub type StorageLibraryChangeTrackerTriggerDetails = *mut ::core::ffi::c_void;
119 pub type StorageLibraryContentChangedTriggerDetails = *mut ::core::ffi::c_void;
120 pub type ValueAndLanguage = *mut ::core::ffi::c_void;
121