home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Windows Gam…ming Gurus (2nd Edition) / Disc2.iso / msdn_vcb / samples / vc98 / sdk / internet / scripting / spruuids / debug / spruuids.h next >
Encoding:
C/C++ Source or Header  |  1998-03-30  |  14.2 KB  |  471 lines

  1. /* This header file machine-generated by mktyplib.exe */
  2. /* Interface to type library: SPRUUIDS */
  3.  
  4. #ifndef _SPRUUIDS_H_
  5. #define _SPRUUIDS_H_
  6.  
  7. DEFINE_GUID(LIBID_SPRUUIDS,0x8703FF61L,0x669C,0x11CF,0xA9,0x2B,0x00,0xAA,0x00,0x68,0x8A,0x2F);
  8. #ifndef BEGIN_INTERFACE
  9. #define BEGIN_INTERFACE
  10. #endif
  11.  
  12. #ifdef __cplusplus
  13. class SpruuidsApp;
  14. #endif
  15.  
  16. interface ISpruuidsApp;
  17.  
  18. #ifdef __cplusplus
  19. class Game;
  20. #endif
  21.  
  22. interface IGame;
  23.  
  24. interface IGameEvents;
  25.  
  26. #ifdef __cplusplus
  27. class SpriteClass;
  28. #endif
  29.  
  30. interface ISpriteClass;
  31.  
  32. interface ISpriteClassEvents;
  33.  
  34. #ifdef __cplusplus
  35. class Sprite;
  36. #endif
  37.  
  38. interface ISprite;
  39.  
  40. DEFINE_GUID(IID_ISpruuidsApp,0x8703FF62L,0x669C,0x11CF,0xA9,0x2B,0x00,0xAA,0x00,0x68,0x8A,0x2F);
  41.  
  42. /* Definition of interface: ISpruuidsApp */
  43. #undef INTERFACE
  44. #define INTERFACE ISpruuidsApp
  45.  
  46. DECLARE_INTERFACE_(ISpruuidsApp, IDispatch)
  47. {
  48. BEGIN_INTERFACE
  49. #ifndef NO_BASEINTERFACE_FUNCS
  50.  
  51.     /* IUnknown methods */
  52.     STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
  53.     STDMETHOD_(ULONG, AddRef)(THIS) PURE;
  54.     STDMETHOD_(ULONG, Release)(THIS) PURE;
  55.  
  56.     /* IDispatch methods */
  57.     STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;
  58.  
  59.     STDMETHOD(GetTypeInfo)(
  60.       THIS_
  61.       UINT itinfo,
  62.       LCID lcid,
  63.       ITypeInfo FAR* FAR* pptinfo) PURE;
  64.  
  65.     STDMETHOD(GetIDsOfNames)(
  66.       THIS_
  67.       REFIID riid,
  68.       OLECHAR FAR* FAR* rgszNames,
  69.       UINT cNames,
  70.       LCID lcid,
  71.       DISPID FAR* rgdispid) PURE;
  72.  
  73.     STDMETHOD(Invoke)(
  74.       THIS_
  75.       DISPID dispidMember,
  76.       REFIID riid,
  77.       LCID lcid,
  78.       WORD wFlags,
  79.       DISPPARAMS FAR* pdispparams,
  80.       VARIANT FAR* pvarResult,
  81.       EXCEPINFO FAR* pexcepinfo,
  82.       UINT FAR* puArgErr) PURE;
  83. #endif
  84.  
  85.     /* ISpruuidsApp methods */
  86.     STDMETHOD(get_Application)(THIS_ ISpruuidsApp FAR* FAR* ppRet) PURE;
  87.     STDMETHOD(get_Parent)(THIS_ ISpruuidsApp FAR* FAR* ppRet) PURE;
  88.     STDMETHOD(Quit)(THIS) PURE;
  89.     STDMETHOD(get_Game)(THIS_ IGame FAR* FAR* ppRet) PURE;
  90. };
  91.  
  92. DEFINE_GUID(CLSID_SpruuidsApp,0x8703FF63L,0x669C,0x11CF,0xA9,0x2B,0x00,0xAA,0x00,0x68,0x8A,0x2F);
  93.  
  94. #ifdef __cplusplus
  95. class SpruuidsApp;
  96. #endif
  97.  
  98. DEFINE_GUID(IID_IGame,0x8703FF64L,0x669C,0x11CF,0xA9,0x2B,0x00,0xAA,0x00,0x68,0x8A,0x2F);
  99.  
  100. /* Definition of interface: IGame */
  101. #undef INTERFACE
  102. #define INTERFACE IGame
  103.  
  104. DECLARE_INTERFACE_(IGame, IDispatch)
  105. {
  106. BEGIN_INTERFACE
  107. #ifndef NO_BASEINTERFACE_FUNCS
  108.  
  109.     /* IUnknown methods */
  110.     STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
  111.     STDMETHOD_(ULONG, AddRef)(THIS) PURE;
  112.     STDMETHOD_(ULONG, Release)(THIS) PURE;
  113.  
  114.     /* IDispatch methods */
  115.     STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;
  116.  
  117.     STDMETHOD(GetTypeInfo)(
  118.       THIS_
  119.       UINT itinfo,
  120.       LCID lcid,
  121.       ITypeInfo FAR* FAR* pptinfo) PURE;
  122.  
  123.     STDMETHOD(GetIDsOfNames)(
  124.       THIS_
  125.       REFIID riid,
  126.       OLECHAR FAR* FAR* rgszNames,
  127.       UINT cNames,
  128.       LCID lcid,
  129.       DISPID FAR* rgdispid) PURE;
  130.  
  131.     STDMETHOD(Invoke)(
  132.       THIS_
  133.       DISPID dispidMember,
  134.       REFIID riid,
  135.       LCID lcid,
  136.       WORD wFlags,
  137.       DISPPARAMS FAR* pdispparams,
  138.       VARIANT FAR* pvarResult,
  139.       EXCEPINFO FAR* pexcepinfo,
  140.       UINT FAR* puArgErr) PURE;
  141. #endif
  142.  
  143.     /* IGame methods */
  144.     STDMETHOD(get_Caption)(THIS_ BSTR FAR* pbstrReturn) PURE;
  145.     STDMETHOD(put_Caption)(THIS_ BSTR bstr) PURE;
  146.     STDMETHOD(get_Application)(THIS_ ISpruuidsApp FAR* FAR* ppRet) PURE;
  147.     STDMETHOD(get_Parent)(THIS_ ISpruuidsApp FAR* FAR* ppRet) PURE;
  148.     STDMETHOD(StartGame)(THIS) PURE;
  149.     STDMETHOD(EndGame)(THIS) PURE;
  150.     STDMETHOD(RemoveAllSprites)(THIS) PURE;
  151.     STDMETHOD(NextLevel)(THIS) PURE;
  152.     STDMETHOD(Refresh)(THIS) PURE;
  153.     STDMETHOD(AddScore)(THIS_ int val) PURE;
  154.     STDMETHOD(StdBorderBounce)(THIS_ ISprite FAR* pspr, int brd) PURE;
  155.     STDMETHOD(StdBorderWrap)(THIS_ ISprite FAR* pspr, int brd) PURE;
  156.     STDMETHOD(StdInitRand)(THIS_ ISprite FAR* pspr, VARIANT user) PURE;
  157.     STDMETHOD(StdInitEdge)(THIS_ ISprite FAR* pspr, VARIANT user) PURE;
  158.     STDMETHOD(get_Paused)(THIS_ VARIANT_BOOL FAR* pRet) PURE;
  159.     STDMETHOD(put_Paused)(THIS_ VARIANT_BOOL val) PURE;
  160.     STDMETHOD(get_Width)(THIS_ int FAR* pRet) PURE;
  161.     STDMETHOD(put_Width)(THIS_ int val) PURE;
  162.     STDMETHOD(get_Height)(THIS_ int FAR* pRet) PURE;
  163.     STDMETHOD(put_Height)(THIS_ int val) PURE;
  164.     STDMETHOD(get_BackColor)(THIS_ long FAR* pRet) PURE;
  165.     STDMETHOD(put_BackColor)(THIS_ long val) PURE;
  166.     STDMETHOD(get_Score)(THIS_ int FAR* pRet) PURE;
  167.     STDMETHOD(put_Score)(THIS_ int val) PURE;
  168.     STDMETHOD(get_Level)(THIS_ int FAR* pRet) PURE;
  169.     STDMETHOD(put_Level)(THIS_ int val) PURE;
  170.     STDMETHOD(get_ShipCount)(THIS_ int FAR* pRet) PURE;
  171.     STDMETHOD(put_ShipCount)(THIS_ int val) PURE;
  172.     STDMETHOD(get_ScoreFirst1Up)(THIS_ int FAR* pRet) PURE;
  173.     STDMETHOD(put_ScoreFirst1Up)(THIS_ int val) PURE;
  174.     STDMETHOD(get_ScoreSecond1Up)(THIS_ int FAR* pRet) PURE;
  175.     STDMETHOD(put_ScoreSecond1Up)(THIS_ int val) PURE;
  176.     STDMETHOD(get_DScoreNext1Up)(THIS_ int FAR* pRet) PURE;
  177.     STDMETHOD(put_DScoreNext1Up)(THIS_ int val) PURE;
  178.     STDMETHOD(get_ShipsStart)(THIS_ int FAR* pRet) PURE;
  179.     STDMETHOD(put_ShipsStart)(THIS_ int val) PURE;
  180.     STDMETHOD(get_Tag)(THIS_ VARIANT FAR* pRet) PURE;
  181.     STDMETHOD(put_Tag)(THIS_ VARIANT val) PURE;
  182.     STDMETHOD(get_StatusText)(THIS_ BSTR FAR* pbstrReturn) PURE;
  183.     STDMETHOD(put_StatusText)(THIS_ BSTR bstr) PURE;
  184. };
  185.  
  186. DEFINE_GUID(DIID_IGameEvents,0x8703FF65L,0x669C,0x11CF,0xA9,0x2B,0x00,0xAA,0x00,0x68,0x8A,0x2F);
  187.  
  188. /* Definition of dispatch interface: IGameEvents */
  189. #undef INTERFACE
  190. #define INTERFACE IGameEvents
  191.  
  192. DECLARE_INTERFACE_(IGameEvents, IDispatch)
  193. {
  194. BEGIN_INTERFACE
  195. #ifndef NO_BASEINTERFACE_FUNCS
  196.  
  197.     /* IUnknown methods */
  198.     STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
  199.     STDMETHOD_(ULONG, AddRef)(THIS) PURE;
  200.     STDMETHOD_(ULONG, Release)(THIS) PURE;
  201.  
  202.     /* IDispatch methods */
  203.     STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;
  204.  
  205.     STDMETHOD(GetTypeInfo)(
  206.       THIS_
  207.       UINT itinfo,
  208.       LCID lcid,
  209.       ITypeInfo FAR* FAR* pptinfo) PURE;
  210.  
  211.     STDMETHOD(GetIDsOfNames)(
  212.       THIS_
  213.       REFIID riid,
  214.       OLECHAR FAR* FAR* rgszNames,
  215.       UINT cNames,
  216.       LCID lcid,
  217.       DISPID FAR* rgdispid) PURE;
  218.  
  219.     STDMETHOD(Invoke)(
  220.       THIS_
  221.       DISPID dispidMember,
  222.       REFIID riid,
  223.       LCID lcid,
  224.       WORD wFlags,
  225.       DISPPARAMS FAR* pdispparams,
  226.       VARIANT FAR* pvarResult,
  227.       EXCEPINFO FAR* pexcepinfo,
  228.       UINT FAR* puArgErr) PURE;
  229. #endif
  230.  
  231.     /* IGameEvents methods:
  232.     void NewGame(void);
  233.     void NewLevel(void);
  234.     void NewShip(void);
  235.     void Collide(IDispatch * pspr1, IDispatch * pspr2, long collide);
  236.     void Tick(void);
  237.     void KeyDown(long vk);
  238.     void KeyPress(long ascii);
  239.     void KeyUp(long vk);
  240.     void MouseMove(long x, long y, long keys, long buttons);
  241.     void MouseDown(long x, long y, long keys, long buttons);
  242.     void MouseOver(long x, long y, long keys, long buttons);
  243.     */
  244. };
  245.  
  246. DEFINE_GUID(CLSID_Game,0x8703FF66L,0x669C,0x11CF,0xA9,0x2B,0x00,0xAA,0x00,0x68,0x8A,0x2F);
  247.  
  248. #ifdef __cplusplus
  249. class Game;
  250. #endif
  251.  
  252. DEFINE_GUID(IID_ISpriteClass,0x8703FF67L,0x669C,0x11CF,0xA9,0x2B,0x00,0xAA,0x00,0x68,0x8A,0x2F);
  253.  
  254. /* Definition of interface: ISpriteClass */
  255. #undef INTERFACE
  256. #define INTERFACE ISpriteClass
  257.  
  258. DECLARE_INTERFACE_(ISpriteClass, IDispatch)
  259. {
  260. BEGIN_INTERFACE
  261. #ifndef NO_BASEINTERFACE_FUNCS
  262.  
  263.     /* IUnknown methods */
  264.     STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
  265.     STDMETHOD_(ULONG, AddRef)(THIS) PURE;
  266.     STDMETHOD_(ULONG, Release)(THIS) PURE;
  267.  
  268.     /* IDispatch methods */
  269.     STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;
  270.  
  271.     STDMETHOD(GetTypeInfo)(
  272.       THIS_
  273.       UINT itinfo,
  274.       LCID lcid,
  275.       ITypeInfo FAR* FAR* pptinfo) PURE;
  276.  
  277.     STDMETHOD(GetIDsOfNames)(
  278.       THIS_
  279.       REFIID riid,
  280.       OLECHAR FAR* FAR* rgszNames,
  281.       UINT cNames,
  282.       LCID lcid,
  283.       DISPID FAR* rgdispid) PURE;
  284.  
  285.     STDMETHOD(Invoke)(
  286.       THIS_
  287.       DISPID dispidMember,
  288.       REFIID riid,
  289.       LCID lcid,
  290.       WORD wFlags,
  291.       DISPPARAMS FAR* pdispparams,
  292.       VARIANT FAR* pvarResult,
  293.       EXCEPINFO FAR* pexcepinfo,
  294.       UINT FAR* puArgErr) PURE;
  295. #endif
  296.  
  297.     /* ISpriteClass methods */
  298.     STDMETHOD(get_Application)(THIS_ ISpruuidsApp FAR* FAR* ppRet) PURE;
  299.     STDMETHOD(get_Parent)(THIS_ IGame FAR* FAR* ppRet) PURE;
  300.     STDMETHOD(CreateSprite)(THIS_ int x, int y, VARIANT arg, ISprite FAR* FAR* ppRet) PURE;
  301.     STDMETHOD(get_Tag)(THIS_ VARIANT FAR* pRet) PURE;
  302.     STDMETHOD(put_Tag)(THIS_ VARIANT val) PURE;
  303.     STDMETHOD(get_Image)(THIS_ int FAR* pRet) PURE;
  304.     STDMETHOD(put_Image)(THIS_ int val) PURE;
  305.     STDMETHOD(get_Border)(THIS_ int FAR* pRet) PURE;
  306.     STDMETHOD(put_Border)(THIS_ int val) PURE;
  307.     STDMETHOD(get_Collide)(THIS_ int FAR* pRet) PURE;
  308.     STDMETHOD(put_Collide)(THIS_ int val) PURE;
  309.     STDMETHOD(get_MaximumVelocity)(THIS_ float FAR* pRet) PURE;
  310.     STDMETHOD(put_MaximumVelocity)(THIS_ float val) PURE;
  311.     STDMETHOD(get_Friction)(THIS_ float FAR* pRet) PURE;
  312.     STDMETHOD(put_Friction)(THIS_ float val) PURE;
  313.     STDMETHOD(get_MaximumAcceleration)(THIS_ float FAR* pRet) PURE;
  314.     STDMETHOD(put_MaximumAcceleration)(THIS_ float val) PURE;
  315.     STDMETHOD(get_AccelerationFriction)(THIS_ float FAR* pRet) PURE;
  316.     STDMETHOD(put_AccelerationFriction)(THIS_ float val) PURE;
  317.     STDMETHOD(get_SpriteCount)(THIS_ int FAR* pRet) PURE;
  318. };
  319.  
  320. DEFINE_GUID(DIID_ISpriteClassEvents,0x8703FF68L,0x669C,0x11CF,0xA9,0x2B,0x00,0xAA,0x00,0x68,0x8A,0x2F);
  321.  
  322. /* Definition of dispatch interface: ISpriteClassEvents */
  323. #undef INTERFACE
  324. #define INTERFACE ISpriteClassEvents
  325.  
  326. DECLARE_INTERFACE_(ISpriteClassEvents, IDispatch)
  327. {
  328. BEGIN_INTERFACE
  329. #ifndef NO_BASEINTERFACE_FUNCS
  330.  
  331.     /* IUnknown methods */
  332.     STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
  333.     STDMETHOD_(ULONG, AddRef)(THIS) PURE;
  334.     STDMETHOD_(ULONG, Release)(THIS) PURE;
  335.  
  336.     /* IDispatch methods */
  337.     STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;
  338.  
  339.     STDMETHOD(GetTypeInfo)(
  340.       THIS_
  341.       UINT itinfo,
  342.       LCID lcid,
  343.       ITypeInfo FAR* FAR* pptinfo) PURE;
  344.  
  345.     STDMETHOD(GetIDsOfNames)(
  346.       THIS_
  347.       REFIID riid,
  348.       OLECHAR FAR* FAR* rgszNames,
  349.       UINT cNames,
  350.       LCID lcid,
  351.       DISPID FAR* rgdispid) PURE;
  352.  
  353.     STDMETHOD(Invoke)(
  354.       THIS_
  355.       DISPID dispidMember,
  356.       REFIID riid,
  357.       LCID lcid,
  358.       WORD wFlags,
  359.       DISPPARAMS FAR* pdispparams,
  360.       VARIANT FAR* pvarResult,
  361.       EXCEPINFO FAR* pexcepinfo,
  362.       UINT FAR* puArgErr) PURE;
  363. #endif
  364.  
  365.     /* ISpriteClassEvents methods:
  366.     void Init(IDispatch * sprite, VARIANT arg);
  367.     void Tick(IDispatch * sprite);
  368.     void Border(IDispatch * sprite, long border);
  369.     void Term(IDispatch * sprite);
  370.     void lastTerm(void);
  371.     */
  372. };
  373.  
  374. DEFINE_GUID(CLSID_SpriteClass,0x8703FF69L,0x669C,0x11CF,0xA9,0x2B,0x00,0xAA,0x00,0x68,0x8A,0x2F);
  375.  
  376. #ifdef __cplusplus
  377. class SpriteClass;
  378. #endif
  379.  
  380. DEFINE_GUID(IID_ISprite,0x8703FF6AL,0x669C,0x11CF,0xA9,0x2B,0x00,0xAA,0x00,0x68,0x8A,0x2F);
  381.  
  382. /* Definition of interface: ISprite */
  383. #undef INTERFACE
  384. #define INTERFACE ISprite
  385.  
  386. DECLARE_INTERFACE_(ISprite, IDispatch)
  387. {
  388. BEGIN_INTERFACE
  389. #ifndef NO_BASEINTERFACE_FUNCS
  390.  
  391.     /* IUnknown methods */
  392.     STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
  393.     STDMETHOD_(ULONG, AddRef)(THIS) PURE;
  394.     STDMETHOD_(ULONG, Release)(THIS) PURE;
  395.  
  396.     /* IDispatch methods */
  397.     STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;
  398.  
  399.     STDMETHOD(GetTypeInfo)(
  400.       THIS_
  401.       UINT itinfo,
  402.       LCID lcid,
  403.       ITypeInfo FAR* FAR* pptinfo) PURE;
  404.  
  405.     STDMETHOD(GetIDsOfNames)(
  406.       THIS_
  407.       REFIID riid,
  408.       OLECHAR FAR* FAR* rgszNames,
  409.       UINT cNames,
  410.       LCID lcid,
  411.       DISPID FAR* rgdispid) PURE;
  412.  
  413.     STDMETHOD(Invoke)(
  414.       THIS_
  415.       DISPID dispidMember,
  416.       REFIID riid,
  417.       LCID lcid,
  418.       WORD wFlags,
  419.       DISPPARAMS FAR* pdispparams,
  420.       VARIANT FAR* pvarResult,
  421.       EXCEPINFO FAR* pexcepinfo,
  422.       UINT FAR* puArgErr) PURE;
  423. #endif
  424.  
  425.     /* ISprite methods */
  426.     STDMETHOD(get_Application)(THIS_ ISpruuidsApp FAR* FAR* ppRet) PURE;
  427.     STDMETHOD(get_Parent)(THIS_ ISpriteClass FAR* FAR* ppRet) PURE;
  428.     STDMETHOD(MoveTo)(THIS_ float x, float y) PURE;
  429.     STDMETHOD(MoveBy)(THIS_ float dx, float dy) PURE;
  430.     STDMETHOD(MoveAtSprite)(THIS_ ISprite FAR* sprite, float scale, float dMax, long flags) PURE;
  431.     STDMETHOD(Remove)(THIS) PURE;
  432.     STDMETHOD(Refresh)(THIS) PURE;
  433.     STDMETHOD(IgnoreMove)(THIS) PURE;
  434.     STDMETHOD(get_Left)(THIS_ float FAR* pRet) PURE;
  435.     STDMETHOD(put_Left)(THIS_ float val) PURE;
  436.     STDMETHOD(get_Top)(THIS_ float FAR* pRet) PURE;
  437.     STDMETHOD(put_Top)(THIS_ float val) PURE;
  438.     STDMETHOD(get_Vx)(THIS_ float FAR* pRet) PURE;
  439.     STDMETHOD(put_Vx)(THIS_ float val) PURE;
  440.     STDMETHOD(get_Vy)(THIS_ float FAR* pRet) PURE;
  441.     STDMETHOD(put_Vy)(THIS_ float val) PURE;
  442.     STDMETHOD(get_Ax)(THIS_ float FAR* pRet) PURE;
  443.     STDMETHOD(put_Ax)(THIS_ float val) PURE;
  444.     STDMETHOD(get_Ay)(THIS_ float FAR* pRet) PURE;
  445.     STDMETHOD(put_Ay)(THIS_ float val) PURE;
  446.     STDMETHOD(get_FrictionX)(THIS_ float FAR* pRet) PURE;
  447.     STDMETHOD(put_FrictionX)(THIS_ float val) PURE;
  448.     STDMETHOD(get_FrictionY)(THIS_ float FAR* pRet) PURE;
  449.     STDMETHOD(put_FrictionY)(THIS_ float val) PURE;
  450.     STDMETHOD(get_Image)(THIS_ int FAR* pRet) PURE;
  451.     STDMETHOD(put_Image)(THIS_ int val) PURE;
  452.     STDMETHOD(get_TickMove)(THIS_ int FAR* pRet) PURE;
  453.     STDMETHOD(put_TickMove)(THIS_ int val) PURE;
  454.     STDMETHOD(get_TickEvent)(THIS_ int FAR* pRet) PURE;
  455.     STDMETHOD(put_TickEvent)(THIS_ int val) PURE;
  456.     STDMETHOD(get_Visible)(THIS_ VARIANT_BOOL FAR* pRet) PURE;
  457.     STDMETHOD(put_Visible)(THIS_ VARIANT_BOOL val) PURE;
  458.     STDMETHOD(get_Tag)(THIS_ VARIANT FAR* pRet) PURE;
  459.     STDMETHOD(put_Tag)(THIS_ VARIANT val) PURE;
  460.     STDMETHOD(get_Width)(THIS_ int FAR* pRet) PURE;
  461.     STDMETHOD(get_Height)(THIS_ int FAR* pRet) PURE;
  462. };
  463.  
  464. DEFINE_GUID(CLSID_Sprite,0x8703FF6BL,0x669C,0x11CF,0xA9,0x2B,0x00,0xAA,0x00,0x68,0x8A,0x2F);
  465.  
  466. #ifdef __cplusplus
  467. class Sprite;
  468. #endif
  469.  
  470. #endif
  471.