1 /** 2 * This file has no copyright assigned and is placed in the Public Domain. 3 * This file is part of the mingw-w64 runtime package. 4 * No warranty is given; refer to the file DISCLAIMER.PD within this package. 5 */ 6 #ifndef _INC_ADHOC 7 #define _INC_ADHOC 8 9 #if (_WIN32_WINNT >= 0x0600) 10 11 typedef enum tagDOT11_ADHOC_AUTH_ALGORITHM { 12 DOT11_ADHOC_AUTH_ALGO_INVALID = -1, 13 DOT11_ADHOC_AUTH_ALGO_80211_OPEN = 1, 14 DOT11_ADHOC_AUTH_ALGO_RSNA_PSK = 7 15 } DOT11_ADHOC_AUTH_ALGORITHM; 16 17 typedef enum tagDOT11_ADHOC_CIPHER_ALGORITHM { 18 DOT11_ADHOC_CIPHER_ALGO_INVALID = -1, 19 DOT11_ADHOC_CIPHER_ALGO_NONE = 0x00, 20 DOT11_ADHOC_CIPHER_ALGO_CCMP = 0x04, 21 DOT11_ADHOC_CIPHER_ALGO_WEP = 0x101 22 } DOT11_ADHOC_CIPHER_ALGORITHM; 23 24 typedef enum tagDOT11_ADHOC_CONNECT_FAIL_REASON { 25 DOT11_ADHOC_CONNECT_FAIL_DOMAIN_MISMATCH = 0, 26 DOT11_ADHOC_CONNECT_FAIL_PASSPHRASE_MISMATCH = 1, 27 DOT11_ADHOC_CONNECT_FAIL_OTHER = 2 28 } DOT11_ADHOC_CONNECT_FAIL_REASON; 29 30 typedef enum tagDOT11_ADHOC_NETWORK_CONNECTION_STATUS { 31 DOT11_ADHOC_NETWORK_CONNECTION_STATUS_INVALID = 0, 32 DOT11_ADHOC_NETWORK_CONNECTION_STATUS_DISCONNECTED = 11, 33 DOT11_ADHOC_NETWORK_CONNECTION_STATUS_CONNECTING = 12, 34 DOT11_ADHOC_NETWORK_CONNECTION_STATUS_CONNECTED = 13, 35 DOT11_ADHOC_NETWORK_CONNECTION_STATUS_FORMED = 14 36 } DOT11_ADHOC_NETWORK_CONNECTION_STATUS; 37 38 typedef struct IDot11AdHocInterfaceNotificationSink IDot11AdHocInterfaceNotificationSink; 39 typedef struct IDot11AdHocInterface IDot11AdHocInterface; 40 typedef struct IDot11AdHocManager IDot11AdHocManager; 41 typedef struct IDot11AdHocManagerNotificationSink IDot11AdHocManagerNotificationSink; 42 typedef struct IDot11AdHocNetwork IDot11AdHocNetwork; 43 typedef struct IEnumDot11AdHocSecuritySettings IEnumDot11AdHocSecuritySettings; 44 typedef struct IEnumDot11AdHocNetworks IEnumDot11AdHocNetworks; 45 typedef struct IDot11AdHocSecuritySettings IDot11AdHocSecuritySettings; 46 typedef struct IEnumDot11AdHocNetworks IEnumDot11AdHocNetworks; 47 typedef struct IEnumDot11AdHocInterfaces IEnumDot11AdHocInterfaces; 48 49 #undef INTERFACE 50 #define INTERFACE IDot11AdHocInterfaceNotificationSink 51 DECLARE_INTERFACE_(IDot11AdHocInterfaceNotificationSink,IUnknown) 52 { 53 BEGIN_INTERFACE 54 55 /* IUnknown methods */ 56 STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; 57 STDMETHOD_(ULONG, AddRef)(THIS) PURE; 58 STDMETHOD_(ULONG, Release)(THIS) PURE; 59 60 /* IDot11AdHocInterfaceNotificationSink methods */ 61 STDMETHOD_(HRESULT,OnConnectionStatusChange)(THIS_ DOT11_ADHOC_NETWORK_CONNECTION_STATUS eStatus) PURE; 62 63 END_INTERFACE 64 }; 65 #ifdef COBJMACROS 66 #define IDot11AdHocInterfaceNotificationSink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 67 #define IDot11AdHocInterfaceNotificationSink_AddRef(This) (This)->lpVtbl->AddRef(This) 68 #define IDot11AdHocInterfaceNotificationSink_Release(This) (This)->lpVtbl->Release(This) 69 #define IDot11AdHocInterfaceNotificationSink_OnConnectionStatusChange(This,eStatus) (This)->lpVtbl->OnConnectionStatusChange(This,eStatus) 70 #endif /*COBJMACROS*/ 71 72 #undef INTERFACE 73 #define INTERFACE IDot11AdHocInterface 74 #ifdef __GNUC__ 75 #warning COM interfaces layout in this header has not been verified. 76 #warning COM interfaces with incorrect layout may not work at all. 77 __MINGW_BROKEN_INTERFACE(INTERFACE) 78 #endif 79 DECLARE_INTERFACE_(IDot11AdHocInterface,IUnknown) 80 { 81 BEGIN_INTERFACE 82 83 /* IUnknown methods */ 84 STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; 85 STDMETHOD_(ULONG, AddRef)(THIS) PURE; 86 STDMETHOD_(ULONG, Release)(THIS) PURE; 87 88 /* IDot11AdHocInterface methods */ 89 STDMETHOD_(HRESULT,GetDeviceSignature)(THIS_ GUID *pSignature) PURE; 90 STDMETHOD_(HRESULT,GetFriendlyName)(THIS_ LPWSTR *ppszName) PURE; 91 STDMETHOD_(HRESULT,IsDot11d)(THIS_ BOOLEAN *pf11d) PURE; 92 STDMETHOD_(HRESULT,IsAdHocCapable)(THIS_ BOOLEAN *pfAdHocCapable) PURE; 93 STDMETHOD_(HRESULT,IsRadioOn)(THIS_ BOOLEAN *pfIsRadioOn) PURE; 94 STDMETHOD_(HRESULT,GetActiveNetwork)(THIS_ IDot11AdHocNetwork **ppNetwork) PURE; 95 STDMETHOD_(HRESULT,GetIEnumSecuritySettings)(THIS_ IEnumDot11AdHocSecuritySettings **ppEnum) PURE; 96 STDMETHOD_(HRESULT,GetIEnumDot11AdHocNetworks)(THIS_ GUID *pFilterGuid,IEnumDot11AdHocNetworks **ppEnum) PURE; 97 STDMETHOD_(HRESULT,GetStatus)(THIS_ DOT11_ADHOC_NETWORK_CONNECTION_STATUS *pState) PURE; 98 99 END_INTERFACE 100 }; 101 #ifdef COBJMACROS 102 #define IDot11AdHocInterface_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 103 #define IDot11AdHocInterface_AddRef(This) (This)->lpVtbl->AddRef(This) 104 #define IDot11AdHocInterface_Release(This) (This)->lpVtbl->Release(This) 105 #define IDot11AdHocInterface_GetDeviceSignature(This,pSignature) (This)->lpVtbl->GetDeviceSignature(This,pSignature) 106 #define IDot11AdHocInterface_GetFriendlyName(This,ppszName) (This)->lpVtbl->GetFriendlyName(This,ppszName) 107 #define IDot11AdHocInterface_IsDot11d(This,pf11d) (This)->lpVtbl->IsDot11d(This,pf11d) 108 #define IDot11AdHocInterface_IsAdHocCapable(This,pfAdHocCapable) (This)->lpVtbl->IsAdHocCapable(This,pfAdHocCapable) 109 #define IDot11AdHocInterface_IsRadioOn(This,pfIsRadioOn) (This)->lpVtbl->IsRadioOn(This,pfIsRadioOn) 110 #define IDot11AdHocInterface_GetActiveNetwork(This,ppNetwork) (This)->lpVtbl->GetActiveNetwork(This,ppNetwork) 111 #define IDot11AdHocInterface_GetIEnumSecuritySettings(This,ppEnum) (This)->lpVtbl->GetIEnumSecuritySettings(This,ppEnum) 112 #define IDot11AdHocInterface_GetIEnumDot11AdHocNetworks(This,pFilterGuid,ppEnum) (This)->lpVtbl->GetIEnumDot11AdHocNetworks(This,pFilterGuid,ppEnum) 113 #define IDot11AdHocInterface_GetStatus(This,pState) (This)->lpVtbl->GetStatus(This,pState) 114 #endif /*COBJMACROS*/ 115 116 #undef INTERFACE 117 #define INTERFACE IDot11AdHocManager 118 #ifdef __GNUC__ 119 #warning COM interfaces layout in this header has not been verified. 120 #warning COM interfaces with incorrect layout may not work at all. 121 __MINGW_BROKEN_INTERFACE(INTERFACE) 122 #endif 123 DECLARE_INTERFACE_(IDot11AdHocManager,IUnknown) 124 { 125 BEGIN_INTERFACE 126 127 /* IUnknown methods */ 128 STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; 129 STDMETHOD_(ULONG, AddRef)(THIS) PURE; 130 STDMETHOD_(ULONG, Release)(THIS) PURE; 131 132 /* IDot11AdHocManager methods */ 133 STDMETHOD_(HRESULT,CreateNetwork)(THIS_ LPCWSTR Name,LPCWSTR Password,LONG GeographicalId,IDot11AdHocInterface *pInterface,IDot11AdHocSecuritySettings *pSecurity,GUID *pContextGuid,IDot11AdHocNetwork **pIAdHoc) PURE; 134 STDMETHOD_(HRESULT,CommitCreatedNetwork)(THIS_ IDot11AdHocNetwork *pIAdHoc,BOOLEAN fSaveProfile,BOOLEAN fMakeSavedProfileUserSpecific) PURE; 135 STDMETHOD_(HRESULT,GetIEnumDot11AdHocNetworks)(THIS_ GUID *pContextGuid,IEnumDot11AdHocNetworks **ppEnum) PURE; 136 STDMETHOD_(HRESULT,GetIEnumDot11AdHocInterfaces)(THIS_ IEnumDot11AdHocInterfaces **ppEnum) PURE; 137 STDMETHOD_(HRESULT,GetNetwork)(THIS_ GUID *NetworkSignature,IDot11AdHocNetwork **pNetwork) PURE; 138 139 END_INTERFACE 140 }; 141 #ifdef COBJMACROS 142 #define IDot11AdHocManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 143 #define IDot11AdHocManager_AddRef(This) (This)->lpVtbl->AddRef(This) 144 #define IDot11AdHocManager_Release(This) (This)->lpVtbl->Release(This) 145 #define IDot11AdHocManager_CreateNetwork(This,Name,Password,GeographicalId,pInterface,pSecurity,pContextGuid,pIAdHoc) (This)->lpVtbl->CreateNetwork(This,Name,Password,GeographicalId,pInterface,pSecurity,pContextGuid,pIAdHoc) 146 #define IDot11AdHocManager_CommitCreatedNetwork(This,pIAdHoc,fSaveProfile,fMakeSavedProfileUserSpecific) (This)->lpVtbl->CommitCreatedNetwork(This,pIAdHoc,fSaveProfile,fMakeSavedProfileUserSpecific) 147 #define IDot11AdHocManager_GetIEnumDot11AdHocNetworks(This,pContextGuid,ppEnum) (This)->lpVtbl->GetIEnumDot11AdHocNetworks(This,pContextGuid,ppEnum) 148 #define IDot11AdHocManager_GetIEnumDot11AdHocInterfaces(This,ppEnum) (This)->lpVtbl->GetIEnumDot11AdHocInterfaces(This,ppEnum) 149 #define IDot11AdHocManager_GetNetwork(This,NetworkSignature,pNetwork) (This)->lpVtbl->GetNetwork(This,NetworkSignature,pNetwork) 150 #endif /*COBJMACROS*/ 151 152 #undef INTERFACE 153 #define INTERFACE IDot11AdHocManagerNotificationSink 154 #ifdef __GNUC__ 155 #warning COM interfaces layout in this header has not been verified. 156 #warning COM interfaces with incorrect layout may not work at all. 157 __MINGW_BROKEN_INTERFACE(INTERFACE) 158 #endif 159 DECLARE_INTERFACE_(IDot11AdHocManagerNotificationSink,IUnknown) 160 { 161 BEGIN_INTERFACE 162 163 /* IUnknown methods */ 164 STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; 165 STDMETHOD_(ULONG, AddRef)(THIS) PURE; 166 STDMETHOD_(ULONG, Release)(THIS) PURE; 167 168 /* IDot11AdHocManagerNotificationSink methods */ 169 STDMETHOD_(HRESULT,OnNetworkAdd)(THIS_ IDot11AdHocNetwork *pIAdHocNetwork) PURE; 170 STDMETHOD_(HRESULT,OnNetworkRemove)(THIS_ GUID *Signature) PURE; 171 STDMETHOD_(HRESULT,OnInterfaceAdd)(THIS_ IDot11AdHocInterface *pIAdHocInterface) PURE; 172 STDMETHOD_(HRESULT,OnInterfaceRemove)(THIS_ GUID *Signature) PURE; 173 174 END_INTERFACE 175 }; 176 #ifdef COBJMACROS 177 #define IDot11AdHocManagerNotificationSink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 178 #define IDot11AdHocManagerNotificationSink_AddRef(This) (This)->lpVtbl->AddRef(This) 179 #define IDot11AdHocManagerNotificationSink_Release(This) (This)->lpVtbl->Release(This) 180 #define IDot11AdHocManagerNotificationSink_OnNetworkAdd(This,pIAdHocNetwork) (This)->lpVtbl->OnNetworkAdd(This,pIAdHocNetwork) 181 #define IDot11AdHocManagerNotificationSink_OnNetworkRemove(This,Signature) (This)->lpVtbl->OnNetworkRemove(This,Signature) 182 #define IDot11AdHocManagerNotificationSink_OnInterfaceAdd(This,pIAdHocInterface) (This)->lpVtbl->OnInterfaceAdd(This,pIAdHocInterface) 183 #define IDot11AdHocManagerNotificationSink_OnInterfaceRemove(This,Signature) (This)->lpVtbl->OnInterfaceRemove(This,Signature) 184 #endif /*COBJMACROS*/ 185 186 #undef INTERFACE 187 #define INTERFACE IDot11AdHocNetwork 188 #ifdef __GNUC__ 189 #warning COM interfaces layout in this header has not been verified. 190 #warning COM interfaces with incorrect layout may not work at all. 191 __MINGW_BROKEN_INTERFACE(INTERFACE) 192 #endif 193 DECLARE_INTERFACE_(IDot11AdHocNetwork,IUnknown) 194 { 195 BEGIN_INTERFACE 196 197 /* IUnknown methods */ 198 STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; 199 STDMETHOD_(ULONG, AddRef)(THIS) PURE; 200 STDMETHOD_(ULONG, Release)(THIS) PURE; 201 202 /* IDot11AdHocNetwork methods */ 203 STDMETHOD_(HRESULT,GetStatus)(THIS_ DOT11_ADHOC_NETWORK_CONNECTION_STATUS *eStatus) PURE; 204 STDMETHOD_(HRESULT,GetSSID)(THIS_ LPWSTR *ppszwSSID) PURE; 205 STDMETHOD_(HRESULT,HasProfile)(THIS_ BOOLEAN *pf11d) PURE; 206 STDMETHOD_(HRESULT,GetProfileName)(THIS_ LPWSTR *ppszwProfileName) PURE; 207 STDMETHOD_(HRESULT,DeleteProfile)(THIS) PURE; 208 STDMETHOD_(HRESULT,GetSignalQuality)(THIS_ ULONG *puStrengthValue,ULONG *puStrengthMax) PURE; 209 STDMETHOD_(HRESULT,GetSecuritySetting)(THIS_ IDot11AdHocSecuritySettings **pAdHocSecuritySetting) PURE; 210 STDMETHOD_(HRESULT,GetContextGuid)(THIS_ GUID *pContextGuid) PURE; 211 STDMETHOD_(HRESULT,GetSignature)(THIS_ GUID *pSignature) PURE; 212 STDMETHOD_(HRESULT,GetInterface)(THIS_ IDot11AdHocInterface **pAdHocInterface) PURE; 213 STDMETHOD_(HRESULT,Connect)(THIS_ LPCWSTR Passphrase,LONG GeographicalId,BOOLEAN fSaveProfile,BOOLEAN fMakeSavedProfileUserSpecific) PURE; 214 STDMETHOD_(HRESULT,Disconnect)(THIS) PURE; 215 216 END_INTERFACE 217 }; 218 #ifdef COBJMACROS 219 #define IDot11AdHocNetwork_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 220 #define IDot11AdHocNetwork_AddRef(This) (This)->lpVtbl->AddRef(This) 221 #define IDot11AdHocNetwork_Release(This) (This)->lpVtbl->Release(This) 222 #define IDot11AdHocNetwork_GetStatus(This,eStatus) (This)->lpVtbl->GetStatus(This,eStatus) 223 #define IDot11AdHocNetwork_GetSSID(This,ppszwSSID) (This)->lpVtbl->GetSSID(This,ppszwSSID) 224 #define IDot11AdHocNetwork_HasProfile(This,pf11d) (This)->lpVtbl->HasProfile(This,pf11d) 225 #define IDot11AdHocNetwork_GetProfileName(This,ppszwProfileName) (This)->lpVtbl->GetProfileName(This,ppszwProfileName) 226 #define IDot11AdHocNetwork_DeleteProfile() (This)->lpVtbl->DeleteProfile(This) 227 #define IDot11AdHocNetwork_GetSignalQuality(This,puStrengthValue,puStrengthMax) (This)->lpVtbl->GetSignalQuality(This,puStrengthValue,puStrengthMax) 228 #define IDot11AdHocNetwork_GetSecuritySetting(This,pAdHocSecuritySetting) (This)->lpVtbl->GetSecuritySetting(This,pAdHocSecuritySetting) 229 #define IDot11AdHocNetwork_GetContextGuid(This,pContextGuid) (This)->lpVtbl->GetContextGuid(This,pContextGuid) 230 #define IDot11AdHocNetwork_GetSignature(This,pSignature) (This)->lpVtbl->GetSignature(This,pSignature) 231 #define IDot11AdHocNetwork_GetInterface(This,pAdHocInterface) (This)->lpVtbl->GetInterface(This,pAdHocInterface) 232 #define IDot11AdHocNetwork_Connect(This,Passphrase,GeographicalId,fSaveProfile,fMakeSavedProfileUserSpecific) (This)->lpVtbl->Connect(This,Passphrase,GeographicalId,fSaveProfile,fMakeSavedProfileUserSpecific) 233 #define IDot11AdHocNetwork_Disconnect() (This)->lpVtbl->Disconnect(This) 234 #endif /*COBJMACROS*/ 235 236 #undef INTERFACE 237 #define INTERFACE IDot11AdHocNetworkNotificationSink 238 #ifdef __GNUC__ 239 #warning COM interfaces layout in this header has not been verified. 240 #warning COM interfaces with incorrect layout may not work at all. 241 __MINGW_BROKEN_INTERFACE(INTERFACE) 242 #endif 243 DECLARE_INTERFACE_(IDot11AdHocNetworkNotificationSink,IUnknown) 244 { 245 BEGIN_INTERFACE 246 247 /* IUnknown methods */ 248 STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; 249 STDMETHOD_(ULONG, AddRef)(THIS) PURE; 250 STDMETHOD_(ULONG, Release)(THIS) PURE; 251 252 /* IDot11AdHocNetworkNotificationSink methods */ 253 STDMETHOD_(HRESULT,OnStatusChange)(THIS_ DOT11_ADHOC_NETWORK_CONNECTION_STATUS eStatus) PURE; 254 STDMETHOD_(HRESULT,OnConnectFail)(THIS_ DOT11_ADHOC_CONNECT_FAIL_REASON eFailReason) PURE; 255 256 END_INTERFACE 257 }; 258 #ifdef COBJMACROS 259 #define IDot11AdHocNetworkNotificationSink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 260 #define IDot11AdHocNetworkNotificationSink_AddRef(This) (This)->lpVtbl->AddRef(This) 261 #define IDot11AdHocNetworkNotificationSink_Release(This) (This)->lpVtbl->Release(This) 262 #define IDot11AdHocNetworkNotificationSink_OnStatusChange(This,eStatus) (This)->lpVtbl->OnStatusChange(This,eStatus) 263 #define IDot11AdHocNetworkNotificationSink_OnConnectFail(This,eFailReason) (This)->lpVtbl->OnConnectFail(This,eFailReason) 264 #endif /*COBJMACROS*/ 265 266 #undef INTERFACE 267 #define INTERFACE IDot11AdHocSecuritySettings 268 #ifdef __GNUC__ 269 #warning COM interfaces layout in this header has not been verified. 270 #warning COM interfaces with incorrect layout may not work at all. 271 __MINGW_BROKEN_INTERFACE(INTERFACE) 272 #endif 273 DECLARE_INTERFACE_(IDot11AdHocSecuritySettings,IUnknown) 274 { 275 BEGIN_INTERFACE 276 277 /* IUnknown methods */ 278 STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; 279 STDMETHOD_(ULONG, AddRef)(THIS) PURE; 280 STDMETHOD_(ULONG, Release)(THIS) PURE; 281 282 /* IDot11AdHocSecuritySettings methods */ 283 STDMETHOD_(HRESULT,GetDot11AuthAlgorithm)(THIS_ DOT11_ADHOC_AUTH_ALGORITHM *pAuth) PURE; 284 STDMETHOD_(HRESULT,GetDot11CipherAlgorithm)(THIS_ DOT11_ADHOC_CIPHER_ALGORITHM *pCipher) PURE; 285 286 END_INTERFACE 287 }; 288 #ifdef COBJMACROS 289 #define IDot11AdHocSecuritySettings_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 290 #define IDot11AdHocSecuritySettings_AddRef(This) (This)->lpVtbl->AddRef(This) 291 #define IDot11AdHocSecuritySettings_Release(This) (This)->lpVtbl->Release(This) 292 #define IDot11AdHocSecuritySettings_GetDot11AuthAlgorithm(This,pAuth) (This)->lpVtbl->GetDot11AuthAlgorithm(This,pAuth) 293 #define IDot11AdHocSecuritySettings_GetDot11CipherAlgorithm(This,pCipher) (This)->lpVtbl->GetDot11CipherAlgorithm(This,pCipher) 294 #endif /*COBJMACROS*/ 295 296 #undef INTERFACE 297 #define INTERFACE IEnumDot11AdHocInterfaces 298 #ifdef __GNUC__ 299 #warning COM interfaces layout in this header has not been verified. 300 #warning COM interfaces with incorrect layout may not work at all. 301 __MINGW_BROKEN_INTERFACE(INTERFACE) 302 #endif 303 DECLARE_INTERFACE_(IEnumDot11AdHocInterfaces,IUnknown) 304 { 305 BEGIN_INTERFACE 306 307 /* IUnknown methods */ 308 STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; 309 STDMETHOD_(ULONG, AddRef)(THIS) PURE; 310 STDMETHOD_(ULONG, Release)(THIS) PURE; 311 312 /* IEnumDot11AdHocInterfaces methods */ 313 STDMETHOD_(HRESULT,Next)(THIS_ ULONG cElt,IDot11AdHocInterface **rgElt,ULONG *pcEltFetched) PURE; 314 STDMETHOD_(HRESULT,Skip)(THIS_ ULONG cElt) PURE; 315 STDMETHOD_(HRESULT,Reset)(THIS) PURE; 316 STDMETHOD_(HRESULT,Clone)(THIS_ IEnumDot11AdHocInterfaces **ppEnum) PURE; 317 318 END_INTERFACE 319 }; 320 #ifdef COBJMACROS 321 #define IEnumDot11AdHocInterfaces_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 322 #define IEnumDot11AdHocInterfaces_AddRef(This) (This)->lpVtbl->AddRef(This) 323 #define IEnumDot11AdHocInterfaces_Release(This) (This)->lpVtbl->Release(This) 324 #define IEnumDot11AdHocInterfaces_Next(This,cElt,rgElt,pcEltFetched) (This)->lpVtbl->Next(This,cElt,rgElt,pcEltFetched) 325 #define IEnumDot11AdHocInterfaces_Skip(This,cElt) (This)->lpVtbl->Skip(This,cElt) 326 #define IEnumDot11AdHocInterfaces_Reset() (This)->lpVtbl->Reset(This) 327 #define IEnumDot11AdHocInterfaces_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum) 328 #endif /*COBJMACROS*/ 329 330 #undef INTERFACE 331 #define INTERFACE IEnumDot11AdHocNetworks 332 #ifdef __GNUC__ 333 #warning COM interfaces layout in this header has not been verified. 334 #warning COM interfaces with incorrect layout may not work at all. 335 __MINGW_BROKEN_INTERFACE(INTERFACE) 336 #endif 337 DECLARE_INTERFACE_(IEnumDot11AdHocNetworks,IUnknown) 338 { 339 BEGIN_INTERFACE 340 341 /* IUnknown methods */ 342 STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; 343 STDMETHOD_(ULONG, AddRef)(THIS) PURE; 344 STDMETHOD_(ULONG, Release)(THIS) PURE; 345 346 /* IEnumDot11AdHocNetworks methods */ 347 STDMETHOD_(HRESULT,Next)(THIS_ ULONG cElt,IDot11AdHocNetwork **rgElt,ULONG *pcEltFetched) PURE; 348 STDMETHOD_(HRESULT,Skip)(THIS_ ULONG cElt) PURE; 349 STDMETHOD_(HRESULT,Reset)(THIS) PURE; 350 STDMETHOD_(HRESULT,Clone)(THIS_ IEnumDot11AdHocNetworks **ppEnum) PURE; 351 352 END_INTERFACE 353 }; 354 #ifdef COBJMACROS 355 #define IEnumDot11AdHocNetworks_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 356 #define IEnumDot11AdHocNetworks_AddRef(This) (This)->lpVtbl->AddRef(This) 357 #define IEnumDot11AdHocNetworks_Release(This) (This)->lpVtbl->Release(This) 358 #define IEnumDot11AdHocNetworks_Next(This,cElt,rgElt,pcEltFetched) (This)->lpVtbl->Next(This,cElt,rgElt,pcEltFetched) 359 #define IEnumDot11AdHocNetworks_Skip(This,cElt) (This)->lpVtbl->Skip(This,cElt) 360 #define IEnumDot11AdHocNetworks_Reset() (This)->lpVtbl->Reset(This) 361 #define IEnumDot11AdHocNetworks_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum) 362 #endif /*COBJMACROS*/ 363 364 #undef INTERFACE 365 #define INTERFACE IEnumDot11AdHocSecuritySettings 366 #ifdef __GNUC__ 367 #warning COM interfaces layout in this header has not been verified. 368 #warning COM interfaces with incorrect layout may not work at all. 369 __MINGW_BROKEN_INTERFACE(INTERFACE) 370 #endif 371 DECLARE_INTERFACE_(IEnumDot11AdHocSecuritySettings,IUnknown) 372 { 373 BEGIN_INTERFACE 374 375 /* IUnknown methods */ 376 STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; 377 STDMETHOD_(ULONG, AddRef)(THIS) PURE; 378 STDMETHOD_(ULONG, Release)(THIS) PURE; 379 380 /* IEnumDot11AdHocSecuritySettings methods */ 381 STDMETHOD_(HRESULT,Next)(THIS_ ULONG cElt,IDot11AdHocSecuritySettings **rgElt,ULONG *pcEltFetched) PURE; 382 STDMETHOD_(HRESULT,Skip)(THIS_ ULONG cElt) PURE; 383 STDMETHOD_(HRESULT,Reset)(THIS) PURE; 384 STDMETHOD_(HRESULT,Clone)(THIS_ IEnumDot11AdHocSecuritySettings **ppEnum) PURE; 385 386 END_INTERFACE 387 }; 388 #ifdef COBJMACROS 389 #define IEnumDot11AdHocSecuritySettings_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 390 #define IEnumDot11AdHocSecuritySettings_AddRef(This) (This)->lpVtbl->AddRef(This) 391 #define IEnumDot11AdHocSecuritySettings_Release(This) (This)->lpVtbl->Release(This) 392 #define IEnumDot11AdHocSecuritySettings_Next(This,cElt,rgElt,pcEltFetched) (This)->lpVtbl->Next(This,cElt,rgElt,pcEltFetched) 393 #define IEnumDot11AdHocSecuritySettings_Skip(This,cElt) (This)->lpVtbl->Skip(This,cElt) 394 #define IEnumDot11AdHocSecuritySettings_Reset() (This)->lpVtbl->Reset(This) 395 #define IEnumDot11AdHocSecuritySettings_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum) 396 #endif /*COBJMACROS*/ 397 398 #endif /*(_WIN32_WINNT >= 0x0600)*/ 399 #endif /*_INC_ADHOC*/ 400