home *** CD-ROM | disk | FTP | other *** search
/ Team Palmtops 7 / Palmtops_numero07.iso / WinCE / SDKWindowsCE / AutoPC / apcsdk10.exe / data1.cab / Emulation_Include_Files / iposnav.h < prev    next >
Encoding:
C/C++ Source or Header  |  1999-05-13  |  3.6 KB  |  123 lines

  1. /*
  2.     IPOSNAV.H
  3.  
  4.     Definition of an IPosNav interface for a PosNav object.
  5.     This custom interface is only supported from DLL-based objects.
  6.  
  7.     Copyright (c) 1996 Microsoft Corporation, All rights reserved.
  8. */
  9.  
  10. //We use the OLE 2.0 macro to define a new interface.
  11.  
  12. #ifndef _INC_IPOSNAV
  13. #define _INC_IPOSNAV
  14.  
  15. #include "pngen.h"
  16.  
  17. #undef  INTERFACE
  18. #define INTERFACE IPosNav
  19.  
  20. #ifndef LPLPVOID
  21.     typedef LPVOID* LPLPVOID;
  22. #endif
  23.  
  24. DECLARE_INTERFACE_(IPosNav, IUnknown)
  25. {
  26.     //IUnknown members.
  27.     STDMETHOD(QueryInterface)   (THIS_ REFIID, LPLPVOID) PURE;
  28.     STDMETHOD_(ULONG, AddRef)   (THIS) PURE;
  29.     STDMETHOD_(ULONG, Release)  (THIS) PURE;
  30.  
  31.     //IPosNav members.
  32.     STDMETHOD(FindDevices) (ppPNDEVICE,
  33.                                  pDWORD) PURE;
  34.  
  35.     STDMETHOD(DeleteDeviceList)    (pPNDEVICE) PURE;
  36.  
  37.     STDMETHOD(OpenDevice)  (phPNDevice,
  38.                                  pPNDEVICE) PURE;
  39.  
  40.     STDMETHOD(CloseDevice)      (hPNDevice) PURE;
  41.  
  42. //    STDMETHOD(ResetDevice)  (hPNDevice,
  43. //                                 PNReset_t) PURE;
  44.  
  45. //    STDMETHOD(GetVersion)  (pDWORD,
  46. //                                 pDWORD) PURE;
  47.  
  48.     STDMETHOD(SetData)     (hPNDevice,
  49.                                  LPVOID,
  50.                                  DWORD,
  51.                                  PNData_t) PURE;
  52.  
  53. //    STDMETHOD(SetPosition) (hPNDevice,
  54. //                                 pPNPOSLLA) PURE;
  55.  
  56. //    STDMETHOD(SetTime)     (hPNDevice,
  57. //                                 pPNTM) PURE;
  58.  
  59.     STDMETHOD(GetData)     (hPNDevice,
  60.                                  LPVOID,
  61.                                  DWORD,
  62.                                  PNData_t) PURE;
  63.  
  64. //    STDMETHOD(GetPosition) (hPNDevice,
  65. //                                 pPNPOSITION) PURE;
  66.  
  67. //    STDMETHOD(GetVelocity) (hPNDevice,
  68. //                                 pPNVELOCITY) PURE;
  69.  
  70. //    STDMETHOD(GetDeviceState)  (hPNDevice,
  71. //                                     pPNDEVSTATE) PURE;
  72.  
  73. //    STDMETHOD(GetAccuracy) (hPNDevice,
  74. //                                 pPNACCURACY) PURE;
  75.  
  76.     STDMETHOD(StartCall)   (hPNDevice,
  77.                                  PNData_t,
  78.                                  DWORD) PURE;
  79.  
  80.     STDMETHOD(StopCall)    (hPNDevice,
  81.                                  PNData_t) PURE;
  82.  
  83.     STDMETHOD(StartDirectCall) (hPNDevice,
  84.                                      PNData_t,
  85.                                      DWORD,
  86.                                      HWND) PURE;
  87.  
  88.     STDMETHOD(StopDirectCall)  (hPNDevice,
  89.                                      PNData_t) PURE;
  90.  
  91. //    STDMETHOD(LLAToXYZ)    (pPNPOSXYZ,
  92. //                                 const pPNPOSLLA,
  93. //                                 PNDatum_t) PURE;
  94.  
  95. //    STDMETHOD(XYZToLLA)    (pPNPOSLLA,
  96. //                                 const pPNPOSXYZ,
  97. //                                 PNDatum_t) PURE;
  98.  
  99. //    STDMETHOD(DatumToDatum)    (pPNPOSLLA,
  100. //                                     PNDatum_t,
  101. //                                     PNDatum_t) PURE;
  102.  
  103.     STDMETHOD(DegreesToRadians)    (pPNPOSLLA) PURE;
  104.  
  105.     STDMETHOD(RadiansToDegrees)    (pPNPOSLLA) PURE;
  106.  
  107.     STDMETHOD(VelocityToBearing)   (pPNVELBEAR,
  108.                                          const pPNVELENU) PURE;
  109.  
  110.     STDMETHOD(BearingToVelocity)   (pPNVELENU,
  111.                                          const pPNVELBEAR) PURE;
  112.  
  113.     STDMETHOD(PNTMToWintm) ( SYSTEMTIME&,
  114.                                   const PNTM& ) PURE;
  115.  
  116.     STDMETHOD(WintmToPNTM) ( PNTM&,
  117.                                   const SYSTEMTIME& ) PURE;
  118. };
  119.  
  120. typedef IPosNav *pIPosNav;
  121.  
  122. #endif
  123.