zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

locationapi.h (33388B) - Raw


      1 /*** Autogenerated by WIDL 10.4 from include/locationapi.idl - Do not edit ***/
      2 
      3 #ifdef _WIN32
      4 #ifndef __REQUIRED_RPCNDR_H_VERSION__
      5 #define __REQUIRED_RPCNDR_H_VERSION__ 475
      6 #endif
      7 #include <rpc.h>
      8 #include <rpcndr.h>
      9 #endif
     10 
     11 #ifndef COM_NO_WINDOWS_H
     12 #include <windows.h>
     13 #include <ole2.h>
     14 #endif
     15 
     16 #ifndef __locationapi_h__
     17 #define __locationapi_h__
     18 
     19 /* Forward declarations */
     20 
     21 #ifndef __ILocationReport_FWD_DEFINED__
     22 #define __ILocationReport_FWD_DEFINED__
     23 typedef interface ILocationReport ILocationReport;
     24 #ifdef __cplusplus
     25 interface ILocationReport;
     26 #endif /* __cplusplus */
     27 #endif
     28 
     29 #ifndef __ICivicAddressReport_FWD_DEFINED__
     30 #define __ICivicAddressReport_FWD_DEFINED__
     31 typedef interface ICivicAddressReport ICivicAddressReport;
     32 #ifdef __cplusplus
     33 interface ICivicAddressReport;
     34 #endif /* __cplusplus */
     35 #endif
     36 
     37 #ifndef __ILatLongReport_FWD_DEFINED__
     38 #define __ILatLongReport_FWD_DEFINED__
     39 typedef interface ILatLongReport ILatLongReport;
     40 #ifdef __cplusplus
     41 interface ILatLongReport;
     42 #endif /* __cplusplus */
     43 #endif
     44 
     45 #ifndef __IDefaultLocation_FWD_DEFINED__
     46 #define __IDefaultLocation_FWD_DEFINED__
     47 typedef interface IDefaultLocation IDefaultLocation;
     48 #ifdef __cplusplus
     49 interface IDefaultLocation;
     50 #endif /* __cplusplus */
     51 #endif
     52 
     53 #ifndef __ILocationEvents_FWD_DEFINED__
     54 #define __ILocationEvents_FWD_DEFINED__
     55 typedef interface ILocationEvents ILocationEvents;
     56 #ifdef __cplusplus
     57 interface ILocationEvents;
     58 #endif /* __cplusplus */
     59 #endif
     60 
     61 #ifndef __ILocation_FWD_DEFINED__
     62 #define __ILocation_FWD_DEFINED__
     63 typedef interface ILocation ILocation;
     64 #ifdef __cplusplus
     65 interface ILocation;
     66 #endif /* __cplusplus */
     67 #endif
     68 
     69 #ifndef __Location_FWD_DEFINED__
     70 #define __Location_FWD_DEFINED__
     71 #ifdef __cplusplus
     72 typedef class Location Location;
     73 #else
     74 typedef struct Location Location;
     75 #endif /* defined __cplusplus */
     76 #endif /* defined __Location_FWD_DEFINED__ */
     77 
     78 /* Headers for imported files */
     79 
     80 #include <oaidl.h>
     81 #include <ocidl.h>
     82 #include <sensorsapi.h>
     83 
     84 #ifdef __cplusplus
     85 extern "C" {
     86 #endif
     87 
     88 #include <propkeydef.h>
     89 typedef enum LOCATION_REPORT_STATUS {
     90     REPORT_NOT_SUPPORTED = 0,
     91     REPORT_ERROR = 1,
     92     REPORT_ACCESS_DENIED = 2,
     93     REPORT_INITIALIZING = 3,
     94     REPORT_RUNNING = 4
     95 } LOCATION_REPORT_STATUS;
     96 /*****************************************************************************
     97  * ILocationReport interface
     98  */
     99 #ifndef __ILocationReport_INTERFACE_DEFINED__
    100 #define __ILocationReport_INTERFACE_DEFINED__
    101 
    102 DEFINE_GUID(IID_ILocationReport, 0xc8b7f7ee, 0x75d0, 0x4db9, 0xb6,0x2d, 0x7a,0x0f,0x36,0x9c,0xa4,0x56);
    103 #if defined(__cplusplus) && !defined(CINTERFACE)
    104 MIDL_INTERFACE("c8b7f7ee-75d0-4db9-b62d-7a0f369ca456")
    105 ILocationReport : public IUnknown
    106 {
    107     virtual HRESULT STDMETHODCALLTYPE GetSensorID(
    108         SENSOR_ID *pSensorID) = 0;
    109 
    110     virtual HRESULT STDMETHODCALLTYPE GetTimestamp(
    111         SYSTEMTIME *pCreationTime) = 0;
    112 
    113     virtual HRESULT STDMETHODCALLTYPE GetValue(
    114         REFPROPERTYKEY pKey,
    115         PROPVARIANT *pValue) = 0;
    116 
    117 };
    118 #ifdef __CRT_UUID_DECL
    119 __CRT_UUID_DECL(ILocationReport, 0xc8b7f7ee, 0x75d0, 0x4db9, 0xb6,0x2d, 0x7a,0x0f,0x36,0x9c,0xa4,0x56)
    120 #endif
    121 #else
    122 typedef struct ILocationReportVtbl {
    123     BEGIN_INTERFACE
    124 
    125     /*** IUnknown methods ***/
    126     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
    127         ILocationReport *This,
    128         REFIID riid,
    129         void **ppvObject);
    130 
    131     ULONG (STDMETHODCALLTYPE *AddRef)(
    132         ILocationReport *This);
    133 
    134     ULONG (STDMETHODCALLTYPE *Release)(
    135         ILocationReport *This);
    136 
    137     /*** ILocationReport methods ***/
    138     HRESULT (STDMETHODCALLTYPE *GetSensorID)(
    139         ILocationReport *This,
    140         SENSOR_ID *pSensorID);
    141 
    142     HRESULT (STDMETHODCALLTYPE *GetTimestamp)(
    143         ILocationReport *This,
    144         SYSTEMTIME *pCreationTime);
    145 
    146     HRESULT (STDMETHODCALLTYPE *GetValue)(
    147         ILocationReport *This,
    148         REFPROPERTYKEY pKey,
    149         PROPVARIANT *pValue);
    150 
    151     END_INTERFACE
    152 } ILocationReportVtbl;
    153 
    154 interface ILocationReport {
    155     CONST_VTBL ILocationReportVtbl* lpVtbl;
    156 };
    157 
    158 #ifdef COBJMACROS
    159 #ifndef WIDL_C_INLINE_WRAPPERS
    160 /*** IUnknown methods ***/
    161 #define ILocationReport_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    162 #define ILocationReport_AddRef(This) (This)->lpVtbl->AddRef(This)
    163 #define ILocationReport_Release(This) (This)->lpVtbl->Release(This)
    164 /*** ILocationReport methods ***/
    165 #define ILocationReport_GetSensorID(This,pSensorID) (This)->lpVtbl->GetSensorID(This,pSensorID)
    166 #define ILocationReport_GetTimestamp(This,pCreationTime) (This)->lpVtbl->GetTimestamp(This,pCreationTime)
    167 #define ILocationReport_GetValue(This,pKey,pValue) (This)->lpVtbl->GetValue(This,pKey,pValue)
    168 #else
    169 /*** IUnknown methods ***/
    170 static inline HRESULT ILocationReport_QueryInterface(ILocationReport* This,REFIID riid,void **ppvObject) {
    171     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    172 }
    173 static inline ULONG ILocationReport_AddRef(ILocationReport* This) {
    174     return This->lpVtbl->AddRef(This);
    175 }
    176 static inline ULONG ILocationReport_Release(ILocationReport* This) {
    177     return This->lpVtbl->Release(This);
    178 }
    179 /*** ILocationReport methods ***/
    180 static inline HRESULT ILocationReport_GetSensorID(ILocationReport* This,SENSOR_ID *pSensorID) {
    181     return This->lpVtbl->GetSensorID(This,pSensorID);
    182 }
    183 static inline HRESULT ILocationReport_GetTimestamp(ILocationReport* This,SYSTEMTIME *pCreationTime) {
    184     return This->lpVtbl->GetTimestamp(This,pCreationTime);
    185 }
    186 static inline HRESULT ILocationReport_GetValue(ILocationReport* This,REFPROPERTYKEY pKey,PROPVARIANT *pValue) {
    187     return This->lpVtbl->GetValue(This,pKey,pValue);
    188 }
    189 #endif
    190 #endif
    191 
    192 #endif
    193 
    194 
    195 #endif  /* __ILocationReport_INTERFACE_DEFINED__ */
    196 
    197 /*****************************************************************************
    198  * ICivicAddressReport interface
    199  */
    200 #ifndef __ICivicAddressReport_INTERFACE_DEFINED__
    201 #define __ICivicAddressReport_INTERFACE_DEFINED__
    202 
    203 DEFINE_GUID(IID_ICivicAddressReport, 0xc0b19f70, 0x4adf, 0x445d, 0x87,0xf2, 0xca,0xd8,0xfd,0x71,0x17,0x92);
    204 #if defined(__cplusplus) && !defined(CINTERFACE)
    205 MIDL_INTERFACE("c0b19f70-4adf-445d-87f2-cad8fd711792")
    206 ICivicAddressReport : public ILocationReport
    207 {
    208     virtual HRESULT STDMETHODCALLTYPE GetAddressLine1(
    209         BSTR *pbstrAddress1) = 0;
    210 
    211     virtual HRESULT STDMETHODCALLTYPE GetAddressLine2(
    212         BSTR *pbstrAddress2) = 0;
    213 
    214     virtual HRESULT STDMETHODCALLTYPE GetCity(
    215         BSTR *pbstrCity) = 0;
    216 
    217     virtual HRESULT STDMETHODCALLTYPE GetStateProvince(
    218         BSTR *pbstrStateProvince) = 0;
    219 
    220     virtual HRESULT STDMETHODCALLTYPE GetPostalCode(
    221         BSTR *pbstrPostalCode) = 0;
    222 
    223     virtual HRESULT STDMETHODCALLTYPE GetCountryRegion(
    224         BSTR *pbstrCountryRegion) = 0;
    225 
    226     virtual HRESULT STDMETHODCALLTYPE GetDetailLevel(
    227         DWORD *pDetailLevel) = 0;
    228 
    229 };
    230 #ifdef __CRT_UUID_DECL
    231 __CRT_UUID_DECL(ICivicAddressReport, 0xc0b19f70, 0x4adf, 0x445d, 0x87,0xf2, 0xca,0xd8,0xfd,0x71,0x17,0x92)
    232 #endif
    233 #else
    234 typedef struct ICivicAddressReportVtbl {
    235     BEGIN_INTERFACE
    236 
    237     /*** IUnknown methods ***/
    238     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
    239         ICivicAddressReport *This,
    240         REFIID riid,
    241         void **ppvObject);
    242 
    243     ULONG (STDMETHODCALLTYPE *AddRef)(
    244         ICivicAddressReport *This);
    245 
    246     ULONG (STDMETHODCALLTYPE *Release)(
    247         ICivicAddressReport *This);
    248 
    249     /*** ILocationReport methods ***/
    250     HRESULT (STDMETHODCALLTYPE *GetSensorID)(
    251         ICivicAddressReport *This,
    252         SENSOR_ID *pSensorID);
    253 
    254     HRESULT (STDMETHODCALLTYPE *GetTimestamp)(
    255         ICivicAddressReport *This,
    256         SYSTEMTIME *pCreationTime);
    257 
    258     HRESULT (STDMETHODCALLTYPE *GetValue)(
    259         ICivicAddressReport *This,
    260         REFPROPERTYKEY pKey,
    261         PROPVARIANT *pValue);
    262 
    263     /*** ICivicAddressReport methods ***/
    264     HRESULT (STDMETHODCALLTYPE *GetAddressLine1)(
    265         ICivicAddressReport *This,
    266         BSTR *pbstrAddress1);
    267 
    268     HRESULT (STDMETHODCALLTYPE *GetAddressLine2)(
    269         ICivicAddressReport *This,
    270         BSTR *pbstrAddress2);
    271 
    272     HRESULT (STDMETHODCALLTYPE *GetCity)(
    273         ICivicAddressReport *This,
    274         BSTR *pbstrCity);
    275 
    276     HRESULT (STDMETHODCALLTYPE *GetStateProvince)(
    277         ICivicAddressReport *This,
    278         BSTR *pbstrStateProvince);
    279 
    280     HRESULT (STDMETHODCALLTYPE *GetPostalCode)(
    281         ICivicAddressReport *This,
    282         BSTR *pbstrPostalCode);
    283 
    284     HRESULT (STDMETHODCALLTYPE *GetCountryRegion)(
    285         ICivicAddressReport *This,
    286         BSTR *pbstrCountryRegion);
    287 
    288     HRESULT (STDMETHODCALLTYPE *GetDetailLevel)(
    289         ICivicAddressReport *This,
    290         DWORD *pDetailLevel);
    291 
    292     END_INTERFACE
    293 } ICivicAddressReportVtbl;
    294 
    295 interface ICivicAddressReport {
    296     CONST_VTBL ICivicAddressReportVtbl* lpVtbl;
    297 };
    298 
    299 #ifdef COBJMACROS
    300 #ifndef WIDL_C_INLINE_WRAPPERS
    301 /*** IUnknown methods ***/
    302 #define ICivicAddressReport_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    303 #define ICivicAddressReport_AddRef(This) (This)->lpVtbl->AddRef(This)
    304 #define ICivicAddressReport_Release(This) (This)->lpVtbl->Release(This)
    305 /*** ILocationReport methods ***/
    306 #define ICivicAddressReport_GetSensorID(This,pSensorID) (This)->lpVtbl->GetSensorID(This,pSensorID)
    307 #define ICivicAddressReport_GetTimestamp(This,pCreationTime) (This)->lpVtbl->GetTimestamp(This,pCreationTime)
    308 #define ICivicAddressReport_GetValue(This,pKey,pValue) (This)->lpVtbl->GetValue(This,pKey,pValue)
    309 /*** ICivicAddressReport methods ***/
    310 #define ICivicAddressReport_GetAddressLine1(This,pbstrAddress1) (This)->lpVtbl->GetAddressLine1(This,pbstrAddress1)
    311 #define ICivicAddressReport_GetAddressLine2(This,pbstrAddress2) (This)->lpVtbl->GetAddressLine2(This,pbstrAddress2)
    312 #define ICivicAddressReport_GetCity(This,pbstrCity) (This)->lpVtbl->GetCity(This,pbstrCity)
    313 #define ICivicAddressReport_GetStateProvince(This,pbstrStateProvince) (This)->lpVtbl->GetStateProvince(This,pbstrStateProvince)
    314 #define ICivicAddressReport_GetPostalCode(This,pbstrPostalCode) (This)->lpVtbl->GetPostalCode(This,pbstrPostalCode)
    315 #define ICivicAddressReport_GetCountryRegion(This,pbstrCountryRegion) (This)->lpVtbl->GetCountryRegion(This,pbstrCountryRegion)
    316 #define ICivicAddressReport_GetDetailLevel(This,pDetailLevel) (This)->lpVtbl->GetDetailLevel(This,pDetailLevel)
    317 #else
    318 /*** IUnknown methods ***/
    319 static inline HRESULT ICivicAddressReport_QueryInterface(ICivicAddressReport* This,REFIID riid,void **ppvObject) {
    320     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    321 }
    322 static inline ULONG ICivicAddressReport_AddRef(ICivicAddressReport* This) {
    323     return This->lpVtbl->AddRef(This);
    324 }
    325 static inline ULONG ICivicAddressReport_Release(ICivicAddressReport* This) {
    326     return This->lpVtbl->Release(This);
    327 }
    328 /*** ILocationReport methods ***/
    329 static inline HRESULT ICivicAddressReport_GetSensorID(ICivicAddressReport* This,SENSOR_ID *pSensorID) {
    330     return This->lpVtbl->GetSensorID(This,pSensorID);
    331 }
    332 static inline HRESULT ICivicAddressReport_GetTimestamp(ICivicAddressReport* This,SYSTEMTIME *pCreationTime) {
    333     return This->lpVtbl->GetTimestamp(This,pCreationTime);
    334 }
    335 static inline HRESULT ICivicAddressReport_GetValue(ICivicAddressReport* This,REFPROPERTYKEY pKey,PROPVARIANT *pValue) {
    336     return This->lpVtbl->GetValue(This,pKey,pValue);
    337 }
    338 /*** ICivicAddressReport methods ***/
    339 static inline HRESULT ICivicAddressReport_GetAddressLine1(ICivicAddressReport* This,BSTR *pbstrAddress1) {
    340     return This->lpVtbl->GetAddressLine1(This,pbstrAddress1);
    341 }
    342 static inline HRESULT ICivicAddressReport_GetAddressLine2(ICivicAddressReport* This,BSTR *pbstrAddress2) {
    343     return This->lpVtbl->GetAddressLine2(This,pbstrAddress2);
    344 }
    345 static inline HRESULT ICivicAddressReport_GetCity(ICivicAddressReport* This,BSTR *pbstrCity) {
    346     return This->lpVtbl->GetCity(This,pbstrCity);
    347 }
    348 static inline HRESULT ICivicAddressReport_GetStateProvince(ICivicAddressReport* This,BSTR *pbstrStateProvince) {
    349     return This->lpVtbl->GetStateProvince(This,pbstrStateProvince);
    350 }
    351 static inline HRESULT ICivicAddressReport_GetPostalCode(ICivicAddressReport* This,BSTR *pbstrPostalCode) {
    352     return This->lpVtbl->GetPostalCode(This,pbstrPostalCode);
    353 }
    354 static inline HRESULT ICivicAddressReport_GetCountryRegion(ICivicAddressReport* This,BSTR *pbstrCountryRegion) {
    355     return This->lpVtbl->GetCountryRegion(This,pbstrCountryRegion);
    356 }
    357 static inline HRESULT ICivicAddressReport_GetDetailLevel(ICivicAddressReport* This,DWORD *pDetailLevel) {
    358     return This->lpVtbl->GetDetailLevel(This,pDetailLevel);
    359 }
    360 #endif
    361 #endif
    362 
    363 #endif
    364 
    365 
    366 #endif  /* __ICivicAddressReport_INTERFACE_DEFINED__ */
    367 
    368 /*****************************************************************************
    369  * ILatLongReport interface
    370  */
    371 #ifndef __ILatLongReport_INTERFACE_DEFINED__
    372 #define __ILatLongReport_INTERFACE_DEFINED__
    373 
    374 DEFINE_GUID(IID_ILatLongReport, 0x7fed806d, 0x0ef8, 0x4f07, 0x80,0xac, 0x36,0xa0,0xbe,0xae,0x31,0x34);
    375 #if defined(__cplusplus) && !defined(CINTERFACE)
    376 MIDL_INTERFACE("7fed806d-0ef8-4f07-80ac-36a0beae3134")
    377 ILatLongReport : public ILocationReport
    378 {
    379     virtual HRESULT STDMETHODCALLTYPE GetLatitude(
    380         DOUBLE *pLatitude) = 0;
    381 
    382     virtual HRESULT STDMETHODCALLTYPE GetLongitude(
    383         DOUBLE *pLongitude) = 0;
    384 
    385     virtual HRESULT STDMETHODCALLTYPE GetErrorRadius(
    386         DOUBLE *pErrorRadius) = 0;
    387 
    388     virtual HRESULT STDMETHODCALLTYPE GetAltitude(
    389         DOUBLE *pAltitude) = 0;
    390 
    391     virtual HRESULT STDMETHODCALLTYPE GetAltitudeError(
    392         DOUBLE *pAltitudeError) = 0;
    393 
    394 };
    395 #ifdef __CRT_UUID_DECL
    396 __CRT_UUID_DECL(ILatLongReport, 0x7fed806d, 0x0ef8, 0x4f07, 0x80,0xac, 0x36,0xa0,0xbe,0xae,0x31,0x34)
    397 #endif
    398 #else
    399 typedef struct ILatLongReportVtbl {
    400     BEGIN_INTERFACE
    401 
    402     /*** IUnknown methods ***/
    403     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
    404         ILatLongReport *This,
    405         REFIID riid,
    406         void **ppvObject);
    407 
    408     ULONG (STDMETHODCALLTYPE *AddRef)(
    409         ILatLongReport *This);
    410 
    411     ULONG (STDMETHODCALLTYPE *Release)(
    412         ILatLongReport *This);
    413 
    414     /*** ILocationReport methods ***/
    415     HRESULT (STDMETHODCALLTYPE *GetSensorID)(
    416         ILatLongReport *This,
    417         SENSOR_ID *pSensorID);
    418 
    419     HRESULT (STDMETHODCALLTYPE *GetTimestamp)(
    420         ILatLongReport *This,
    421         SYSTEMTIME *pCreationTime);
    422 
    423     HRESULT (STDMETHODCALLTYPE *GetValue)(
    424         ILatLongReport *This,
    425         REFPROPERTYKEY pKey,
    426         PROPVARIANT *pValue);
    427 
    428     /*** ILatLongReport methods ***/
    429     HRESULT (STDMETHODCALLTYPE *GetLatitude)(
    430         ILatLongReport *This,
    431         DOUBLE *pLatitude);
    432 
    433     HRESULT (STDMETHODCALLTYPE *GetLongitude)(
    434         ILatLongReport *This,
    435         DOUBLE *pLongitude);
    436 
    437     HRESULT (STDMETHODCALLTYPE *GetErrorRadius)(
    438         ILatLongReport *This,
    439         DOUBLE *pErrorRadius);
    440 
    441     HRESULT (STDMETHODCALLTYPE *GetAltitude)(
    442         ILatLongReport *This,
    443         DOUBLE *pAltitude);
    444 
    445     HRESULT (STDMETHODCALLTYPE *GetAltitudeError)(
    446         ILatLongReport *This,
    447         DOUBLE *pAltitudeError);
    448 
    449     END_INTERFACE
    450 } ILatLongReportVtbl;
    451 
    452 interface ILatLongReport {
    453     CONST_VTBL ILatLongReportVtbl* lpVtbl;
    454 };
    455 
    456 #ifdef COBJMACROS
    457 #ifndef WIDL_C_INLINE_WRAPPERS
    458 /*** IUnknown methods ***/
    459 #define ILatLongReport_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    460 #define ILatLongReport_AddRef(This) (This)->lpVtbl->AddRef(This)
    461 #define ILatLongReport_Release(This) (This)->lpVtbl->Release(This)
    462 /*** ILocationReport methods ***/
    463 #define ILatLongReport_GetSensorID(This,pSensorID) (This)->lpVtbl->GetSensorID(This,pSensorID)
    464 #define ILatLongReport_GetTimestamp(This,pCreationTime) (This)->lpVtbl->GetTimestamp(This,pCreationTime)
    465 #define ILatLongReport_GetValue(This,pKey,pValue) (This)->lpVtbl->GetValue(This,pKey,pValue)
    466 /*** ILatLongReport methods ***/
    467 #define ILatLongReport_GetLatitude(This,pLatitude) (This)->lpVtbl->GetLatitude(This,pLatitude)
    468 #define ILatLongReport_GetLongitude(This,pLongitude) (This)->lpVtbl->GetLongitude(This,pLongitude)
    469 #define ILatLongReport_GetErrorRadius(This,pErrorRadius) (This)->lpVtbl->GetErrorRadius(This,pErrorRadius)
    470 #define ILatLongReport_GetAltitude(This,pAltitude) (This)->lpVtbl->GetAltitude(This,pAltitude)
    471 #define ILatLongReport_GetAltitudeError(This,pAltitudeError) (This)->lpVtbl->GetAltitudeError(This,pAltitudeError)
    472 #else
    473 /*** IUnknown methods ***/
    474 static inline HRESULT ILatLongReport_QueryInterface(ILatLongReport* This,REFIID riid,void **ppvObject) {
    475     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    476 }
    477 static inline ULONG ILatLongReport_AddRef(ILatLongReport* This) {
    478     return This->lpVtbl->AddRef(This);
    479 }
    480 static inline ULONG ILatLongReport_Release(ILatLongReport* This) {
    481     return This->lpVtbl->Release(This);
    482 }
    483 /*** ILocationReport methods ***/
    484 static inline HRESULT ILatLongReport_GetSensorID(ILatLongReport* This,SENSOR_ID *pSensorID) {
    485     return This->lpVtbl->GetSensorID(This,pSensorID);
    486 }
    487 static inline HRESULT ILatLongReport_GetTimestamp(ILatLongReport* This,SYSTEMTIME *pCreationTime) {
    488     return This->lpVtbl->GetTimestamp(This,pCreationTime);
    489 }
    490 static inline HRESULT ILatLongReport_GetValue(ILatLongReport* This,REFPROPERTYKEY pKey,PROPVARIANT *pValue) {
    491     return This->lpVtbl->GetValue(This,pKey,pValue);
    492 }
    493 /*** ILatLongReport methods ***/
    494 static inline HRESULT ILatLongReport_GetLatitude(ILatLongReport* This,DOUBLE *pLatitude) {
    495     return This->lpVtbl->GetLatitude(This,pLatitude);
    496 }
    497 static inline HRESULT ILatLongReport_GetLongitude(ILatLongReport* This,DOUBLE *pLongitude) {
    498     return This->lpVtbl->GetLongitude(This,pLongitude);
    499 }
    500 static inline HRESULT ILatLongReport_GetErrorRadius(ILatLongReport* This,DOUBLE *pErrorRadius) {
    501     return This->lpVtbl->GetErrorRadius(This,pErrorRadius);
    502 }
    503 static inline HRESULT ILatLongReport_GetAltitude(ILatLongReport* This,DOUBLE *pAltitude) {
    504     return This->lpVtbl->GetAltitude(This,pAltitude);
    505 }
    506 static inline HRESULT ILatLongReport_GetAltitudeError(ILatLongReport* This,DOUBLE *pAltitudeError) {
    507     return This->lpVtbl->GetAltitudeError(This,pAltitudeError);
    508 }
    509 #endif
    510 #endif
    511 
    512 #endif
    513 
    514 
    515 #endif  /* __ILatLongReport_INTERFACE_DEFINED__ */
    516 
    517 /*****************************************************************************
    518  * IDefaultLocation interface
    519  */
    520 #ifndef __IDefaultLocation_INTERFACE_DEFINED__
    521 #define __IDefaultLocation_INTERFACE_DEFINED__
    522 
    523 DEFINE_GUID(IID_IDefaultLocation, 0xa65af77e, 0x969a, 0x4a2e, 0x8a,0xca, 0x33,0xbb,0x7c,0xbb,0x12,0x35);
    524 #if defined(__cplusplus) && !defined(CINTERFACE)
    525 MIDL_INTERFACE("a65af77e-969a-4a2e-8aca-33bb7cbb1235")
    526 IDefaultLocation : public IUnknown
    527 {
    528     virtual HRESULT STDMETHODCALLTYPE SetReport(
    529         REFIID reportType,
    530         ILocationReport *pLocationReport) = 0;
    531 
    532     virtual HRESULT STDMETHODCALLTYPE GetReport(
    533         REFIID reportType,
    534         ILocationReport **ppLocationReport) = 0;
    535 
    536 };
    537 #ifdef __CRT_UUID_DECL
    538 __CRT_UUID_DECL(IDefaultLocation, 0xa65af77e, 0x969a, 0x4a2e, 0x8a,0xca, 0x33,0xbb,0x7c,0xbb,0x12,0x35)
    539 #endif
    540 #else
    541 typedef struct IDefaultLocationVtbl {
    542     BEGIN_INTERFACE
    543 
    544     /*** IUnknown methods ***/
    545     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
    546         IDefaultLocation *This,
    547         REFIID riid,
    548         void **ppvObject);
    549 
    550     ULONG (STDMETHODCALLTYPE *AddRef)(
    551         IDefaultLocation *This);
    552 
    553     ULONG (STDMETHODCALLTYPE *Release)(
    554         IDefaultLocation *This);
    555 
    556     /*** IDefaultLocation methods ***/
    557     HRESULT (STDMETHODCALLTYPE *SetReport)(
    558         IDefaultLocation *This,
    559         REFIID reportType,
    560         ILocationReport *pLocationReport);
    561 
    562     HRESULT (STDMETHODCALLTYPE *GetReport)(
    563         IDefaultLocation *This,
    564         REFIID reportType,
    565         ILocationReport **ppLocationReport);
    566 
    567     END_INTERFACE
    568 } IDefaultLocationVtbl;
    569 
    570 interface IDefaultLocation {
    571     CONST_VTBL IDefaultLocationVtbl* lpVtbl;
    572 };
    573 
    574 #ifdef COBJMACROS
    575 #ifndef WIDL_C_INLINE_WRAPPERS
    576 /*** IUnknown methods ***/
    577 #define IDefaultLocation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    578 #define IDefaultLocation_AddRef(This) (This)->lpVtbl->AddRef(This)
    579 #define IDefaultLocation_Release(This) (This)->lpVtbl->Release(This)
    580 /*** IDefaultLocation methods ***/
    581 #define IDefaultLocation_SetReport(This,reportType,pLocationReport) (This)->lpVtbl->SetReport(This,reportType,pLocationReport)
    582 #define IDefaultLocation_GetReport(This,reportType,ppLocationReport) (This)->lpVtbl->GetReport(This,reportType,ppLocationReport)
    583 #else
    584 /*** IUnknown methods ***/
    585 static inline HRESULT IDefaultLocation_QueryInterface(IDefaultLocation* This,REFIID riid,void **ppvObject) {
    586     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    587 }
    588 static inline ULONG IDefaultLocation_AddRef(IDefaultLocation* This) {
    589     return This->lpVtbl->AddRef(This);
    590 }
    591 static inline ULONG IDefaultLocation_Release(IDefaultLocation* This) {
    592     return This->lpVtbl->Release(This);
    593 }
    594 /*** IDefaultLocation methods ***/
    595 static inline HRESULT IDefaultLocation_SetReport(IDefaultLocation* This,REFIID reportType,ILocationReport *pLocationReport) {
    596     return This->lpVtbl->SetReport(This,reportType,pLocationReport);
    597 }
    598 static inline HRESULT IDefaultLocation_GetReport(IDefaultLocation* This,REFIID reportType,ILocationReport **ppLocationReport) {
    599     return This->lpVtbl->GetReport(This,reportType,ppLocationReport);
    600 }
    601 #endif
    602 #endif
    603 
    604 #endif
    605 
    606 
    607 #endif  /* __IDefaultLocation_INTERFACE_DEFINED__ */
    608 
    609 /*****************************************************************************
    610  * ILocationEvents interface
    611  */
    612 #ifndef __ILocationEvents_INTERFACE_DEFINED__
    613 #define __ILocationEvents_INTERFACE_DEFINED__
    614 
    615 DEFINE_GUID(IID_ILocationEvents, 0xcae02bbf, 0x798b, 0x4508, 0xa2,0x07, 0x35,0xa7,0x90,0x6d,0xc7,0x3d);
    616 #if defined(__cplusplus) && !defined(CINTERFACE)
    617 MIDL_INTERFACE("cae02bbf-798b-4508-a207-35a7906dc73d")
    618 ILocationEvents : public IUnknown
    619 {
    620     virtual HRESULT STDMETHODCALLTYPE OnLocationChanged(
    621         REFIID reportType,
    622         ILocationReport *pLocationReport) = 0;
    623 
    624     virtual HRESULT STDMETHODCALLTYPE OnStatusChanged(
    625         REFIID reportType,
    626         LOCATION_REPORT_STATUS newStatus) = 0;
    627 
    628 };
    629 #ifdef __CRT_UUID_DECL
    630 __CRT_UUID_DECL(ILocationEvents, 0xcae02bbf, 0x798b, 0x4508, 0xa2,0x07, 0x35,0xa7,0x90,0x6d,0xc7,0x3d)
    631 #endif
    632 #else
    633 typedef struct ILocationEventsVtbl {
    634     BEGIN_INTERFACE
    635 
    636     /*** IUnknown methods ***/
    637     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
    638         ILocationEvents *This,
    639         REFIID riid,
    640         void **ppvObject);
    641 
    642     ULONG (STDMETHODCALLTYPE *AddRef)(
    643         ILocationEvents *This);
    644 
    645     ULONG (STDMETHODCALLTYPE *Release)(
    646         ILocationEvents *This);
    647 
    648     /*** ILocationEvents methods ***/
    649     HRESULT (STDMETHODCALLTYPE *OnLocationChanged)(
    650         ILocationEvents *This,
    651         REFIID reportType,
    652         ILocationReport *pLocationReport);
    653 
    654     HRESULT (STDMETHODCALLTYPE *OnStatusChanged)(
    655         ILocationEvents *This,
    656         REFIID reportType,
    657         LOCATION_REPORT_STATUS newStatus);
    658 
    659     END_INTERFACE
    660 } ILocationEventsVtbl;
    661 
    662 interface ILocationEvents {
    663     CONST_VTBL ILocationEventsVtbl* lpVtbl;
    664 };
    665 
    666 #ifdef COBJMACROS
    667 #ifndef WIDL_C_INLINE_WRAPPERS
    668 /*** IUnknown methods ***/
    669 #define ILocationEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    670 #define ILocationEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
    671 #define ILocationEvents_Release(This) (This)->lpVtbl->Release(This)
    672 /*** ILocationEvents methods ***/
    673 #define ILocationEvents_OnLocationChanged(This,reportType,pLocationReport) (This)->lpVtbl->OnLocationChanged(This,reportType,pLocationReport)
    674 #define ILocationEvents_OnStatusChanged(This,reportType,newStatus) (This)->lpVtbl->OnStatusChanged(This,reportType,newStatus)
    675 #else
    676 /*** IUnknown methods ***/
    677 static inline HRESULT ILocationEvents_QueryInterface(ILocationEvents* This,REFIID riid,void **ppvObject) {
    678     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    679 }
    680 static inline ULONG ILocationEvents_AddRef(ILocationEvents* This) {
    681     return This->lpVtbl->AddRef(This);
    682 }
    683 static inline ULONG ILocationEvents_Release(ILocationEvents* This) {
    684     return This->lpVtbl->Release(This);
    685 }
    686 /*** ILocationEvents methods ***/
    687 static inline HRESULT ILocationEvents_OnLocationChanged(ILocationEvents* This,REFIID reportType,ILocationReport *pLocationReport) {
    688     return This->lpVtbl->OnLocationChanged(This,reportType,pLocationReport);
    689 }
    690 static inline HRESULT ILocationEvents_OnStatusChanged(ILocationEvents* This,REFIID reportType,LOCATION_REPORT_STATUS newStatus) {
    691     return This->lpVtbl->OnStatusChanged(This,reportType,newStatus);
    692 }
    693 #endif
    694 #endif
    695 
    696 #endif
    697 
    698 
    699 #endif  /* __ILocationEvents_INTERFACE_DEFINED__ */
    700 
    701 /*****************************************************************************
    702  * ILocation interface
    703  */
    704 #ifndef __ILocation_INTERFACE_DEFINED__
    705 #define __ILocation_INTERFACE_DEFINED__
    706 
    707 DEFINE_GUID(IID_ILocation, 0xab2ece69, 0x56d9, 0x4f28, 0xb5,0x25, 0xde,0x1b,0x0e,0xe4,0x42,0x37);
    708 #if defined(__cplusplus) && !defined(CINTERFACE)
    709 MIDL_INTERFACE("ab2ece69-56d9-4f28-b525-de1b0ee44237")
    710 ILocation : public IUnknown
    711 {
    712     virtual HRESULT STDMETHODCALLTYPE RegisterForReport(
    713         ILocationEvents *pEvents,
    714         REFIID reportType,
    715         DWORD dwRequestedReportInterval) = 0;
    716 
    717     virtual HRESULT STDMETHODCALLTYPE UnregisterForReport(
    718         REFIID reportType) = 0;
    719 
    720     virtual HRESULT STDMETHODCALLTYPE GetReport(
    721         REFIID reportType,
    722         ILocationReport **ppLocationReport) = 0;
    723 
    724     virtual HRESULT STDMETHODCALLTYPE GetReportStatus(
    725         REFIID reportType,
    726         LOCATION_REPORT_STATUS *pStatus) = 0;
    727 
    728     virtual HRESULT STDMETHODCALLTYPE GetReportInterval(
    729         REFIID reportType,
    730         DWORD *pMilliseconds) = 0;
    731 
    732     virtual HRESULT STDMETHODCALLTYPE SetReportInterval(
    733         REFIID reportType,
    734         DWORD millisecondsRequested) = 0;
    735 
    736     virtual HRESULT STDMETHODCALLTYPE GetDesiredAccuracy(
    737         REFIID reportType,
    738         LOCATION_DESIRED_ACCURACY *pDesiredAccuracy) = 0;
    739 
    740     virtual HRESULT STDMETHODCALLTYPE SetDesiredAccuracy(
    741         REFIID reportType,
    742         LOCATION_DESIRED_ACCURACY desiredAccuracy) = 0;
    743 
    744     virtual HRESULT STDMETHODCALLTYPE RequestPermissions(
    745         HWND hParent,
    746         IID pReportTypes[],
    747         ULONG count,
    748         WINBOOL fModal) = 0;
    749 
    750 };
    751 #ifdef __CRT_UUID_DECL
    752 __CRT_UUID_DECL(ILocation, 0xab2ece69, 0x56d9, 0x4f28, 0xb5,0x25, 0xde,0x1b,0x0e,0xe4,0x42,0x37)
    753 #endif
    754 #else
    755 typedef struct ILocationVtbl {
    756     BEGIN_INTERFACE
    757 
    758     /*** IUnknown methods ***/
    759     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
    760         ILocation *This,
    761         REFIID riid,
    762         void **ppvObject);
    763 
    764     ULONG (STDMETHODCALLTYPE *AddRef)(
    765         ILocation *This);
    766 
    767     ULONG (STDMETHODCALLTYPE *Release)(
    768         ILocation *This);
    769 
    770     /*** ILocation methods ***/
    771     HRESULT (STDMETHODCALLTYPE *RegisterForReport)(
    772         ILocation *This,
    773         ILocationEvents *pEvents,
    774         REFIID reportType,
    775         DWORD dwRequestedReportInterval);
    776 
    777     HRESULT (STDMETHODCALLTYPE *UnregisterForReport)(
    778         ILocation *This,
    779         REFIID reportType);
    780 
    781     HRESULT (STDMETHODCALLTYPE *GetReport)(
    782         ILocation *This,
    783         REFIID reportType,
    784         ILocationReport **ppLocationReport);
    785 
    786     HRESULT (STDMETHODCALLTYPE *GetReportStatus)(
    787         ILocation *This,
    788         REFIID reportType,
    789         LOCATION_REPORT_STATUS *pStatus);
    790 
    791     HRESULT (STDMETHODCALLTYPE *GetReportInterval)(
    792         ILocation *This,
    793         REFIID reportType,
    794         DWORD *pMilliseconds);
    795 
    796     HRESULT (STDMETHODCALLTYPE *SetReportInterval)(
    797         ILocation *This,
    798         REFIID reportType,
    799         DWORD millisecondsRequested);
    800 
    801     HRESULT (STDMETHODCALLTYPE *GetDesiredAccuracy)(
    802         ILocation *This,
    803         REFIID reportType,
    804         LOCATION_DESIRED_ACCURACY *pDesiredAccuracy);
    805 
    806     HRESULT (STDMETHODCALLTYPE *SetDesiredAccuracy)(
    807         ILocation *This,
    808         REFIID reportType,
    809         LOCATION_DESIRED_ACCURACY desiredAccuracy);
    810 
    811     HRESULT (STDMETHODCALLTYPE *RequestPermissions)(
    812         ILocation *This,
    813         HWND hParent,
    814         IID pReportTypes[],
    815         ULONG count,
    816         WINBOOL fModal);
    817 
    818     END_INTERFACE
    819 } ILocationVtbl;
    820 
    821 interface ILocation {
    822     CONST_VTBL ILocationVtbl* lpVtbl;
    823 };
    824 
    825 #ifdef COBJMACROS
    826 #ifndef WIDL_C_INLINE_WRAPPERS
    827 /*** IUnknown methods ***/
    828 #define ILocation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    829 #define ILocation_AddRef(This) (This)->lpVtbl->AddRef(This)
    830 #define ILocation_Release(This) (This)->lpVtbl->Release(This)
    831 /*** ILocation methods ***/
    832 #define ILocation_RegisterForReport(This,pEvents,reportType,dwRequestedReportInterval) (This)->lpVtbl->RegisterForReport(This,pEvents,reportType,dwRequestedReportInterval)
    833 #define ILocation_UnregisterForReport(This,reportType) (This)->lpVtbl->UnregisterForReport(This,reportType)
    834 #define ILocation_GetReport(This,reportType,ppLocationReport) (This)->lpVtbl->GetReport(This,reportType,ppLocationReport)
    835 #define ILocation_GetReportStatus(This,reportType,pStatus) (This)->lpVtbl->GetReportStatus(This,reportType,pStatus)
    836 #define ILocation_GetReportInterval(This,reportType,pMilliseconds) (This)->lpVtbl->GetReportInterval(This,reportType,pMilliseconds)
    837 #define ILocation_SetReportInterval(This,reportType,millisecondsRequested) (This)->lpVtbl->SetReportInterval(This,reportType,millisecondsRequested)
    838 #define ILocation_GetDesiredAccuracy(This,reportType,pDesiredAccuracy) (This)->lpVtbl->GetDesiredAccuracy(This,reportType,pDesiredAccuracy)
    839 #define ILocation_SetDesiredAccuracy(This,reportType,desiredAccuracy) (This)->lpVtbl->SetDesiredAccuracy(This,reportType,desiredAccuracy)
    840 #define ILocation_RequestPermissions(This,hParent,pReportTypes,count,fModal) (This)->lpVtbl->RequestPermissions(This,hParent,pReportTypes,count,fModal)
    841 #else
    842 /*** IUnknown methods ***/
    843 static inline HRESULT ILocation_QueryInterface(ILocation* This,REFIID riid,void **ppvObject) {
    844     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    845 }
    846 static inline ULONG ILocation_AddRef(ILocation* This) {
    847     return This->lpVtbl->AddRef(This);
    848 }
    849 static inline ULONG ILocation_Release(ILocation* This) {
    850     return This->lpVtbl->Release(This);
    851 }
    852 /*** ILocation methods ***/
    853 static inline HRESULT ILocation_RegisterForReport(ILocation* This,ILocationEvents *pEvents,REFIID reportType,DWORD dwRequestedReportInterval) {
    854     return This->lpVtbl->RegisterForReport(This,pEvents,reportType,dwRequestedReportInterval);
    855 }
    856 static inline HRESULT ILocation_UnregisterForReport(ILocation* This,REFIID reportType) {
    857     return This->lpVtbl->UnregisterForReport(This,reportType);
    858 }
    859 static inline HRESULT ILocation_GetReport(ILocation* This,REFIID reportType,ILocationReport **ppLocationReport) {
    860     return This->lpVtbl->GetReport(This,reportType,ppLocationReport);
    861 }
    862 static inline HRESULT ILocation_GetReportStatus(ILocation* This,REFIID reportType,LOCATION_REPORT_STATUS *pStatus) {
    863     return This->lpVtbl->GetReportStatus(This,reportType,pStatus);
    864 }
    865 static inline HRESULT ILocation_GetReportInterval(ILocation* This,REFIID reportType,DWORD *pMilliseconds) {
    866     return This->lpVtbl->GetReportInterval(This,reportType,pMilliseconds);
    867 }
    868 static inline HRESULT ILocation_SetReportInterval(ILocation* This,REFIID reportType,DWORD millisecondsRequested) {
    869     return This->lpVtbl->SetReportInterval(This,reportType,millisecondsRequested);
    870 }
    871 static inline HRESULT ILocation_GetDesiredAccuracy(ILocation* This,REFIID reportType,LOCATION_DESIRED_ACCURACY *pDesiredAccuracy) {
    872     return This->lpVtbl->GetDesiredAccuracy(This,reportType,pDesiredAccuracy);
    873 }
    874 static inline HRESULT ILocation_SetDesiredAccuracy(ILocation* This,REFIID reportType,LOCATION_DESIRED_ACCURACY desiredAccuracy) {
    875     return This->lpVtbl->SetDesiredAccuracy(This,reportType,desiredAccuracy);
    876 }
    877 static inline HRESULT ILocation_RequestPermissions(ILocation* This,HWND hParent,IID pReportTypes[],ULONG count,WINBOOL fModal) {
    878     return This->lpVtbl->RequestPermissions(This,hParent,pReportTypes,count,fModal);
    879 }
    880 #endif
    881 #endif
    882 
    883 #endif
    884 
    885 
    886 #endif  /* __ILocation_INTERFACE_DEFINED__ */
    887 
    888 /*****************************************************************************
    889  * Location coclass
    890  */
    891 
    892 DEFINE_GUID(CLSID_Location, 0xe5b8e079, 0xee6d, 0x4e33, 0xa4,0x38, 0xc8,0x7f,0x2e,0x95,0x92,0x54);
    893 
    894 #ifdef __cplusplus
    895 class DECLSPEC_UUID("e5b8e079-ee6d-4e33-a438-c87f2e959254") Location;
    896 #ifdef __CRT_UUID_DECL
    897 __CRT_UUID_DECL(Location, 0xe5b8e079, 0xee6d, 0x4e33, 0xa4,0x38, 0xc8,0x7f,0x2e,0x95,0x92,0x54)
    898 #endif
    899 #endif
    900 
    901 /* Begin additional prototypes for all interfaces */
    902 
    903 ULONG           __RPC_USER BSTR_UserSize     (ULONG *, ULONG, BSTR *);
    904 unsigned char * __RPC_USER BSTR_UserMarshal  (ULONG *, unsigned char *, BSTR *);
    905 unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
    906 void            __RPC_USER BSTR_UserFree     (ULONG *, BSTR *);
    907 ULONG           __RPC_USER LPSAFEARRAY_UserSize     (ULONG *, ULONG, LPSAFEARRAY *);
    908 unsigned char * __RPC_USER LPSAFEARRAY_UserMarshal  (ULONG *, unsigned char *, LPSAFEARRAY *);
    909 unsigned char * __RPC_USER LPSAFEARRAY_UserUnmarshal(ULONG *, unsigned char *, LPSAFEARRAY *);
    910 void            __RPC_USER LPSAFEARRAY_UserFree     (ULONG *, LPSAFEARRAY *);
    911 ULONG           __RPC_USER HWND_UserSize     (ULONG *, ULONG, HWND *);
    912 unsigned char * __RPC_USER HWND_UserMarshal  (ULONG *, unsigned char *, HWND *);
    913 unsigned char * __RPC_USER HWND_UserUnmarshal(ULONG *, unsigned char *, HWND *);
    914 void            __RPC_USER HWND_UserFree     (ULONG *, HWND *);
    915 
    916 /* End additional prototypes */
    917 
    918 #ifdef __cplusplus
    919 }
    920 #endif
    921 
    922 #endif /* __locationapi_h__ */