-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathballex.h
78 lines (67 loc) · 2.58 KB
/
ballex.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
// Ball.h : Declaration of the CBall
#pragma once
#ifndef __BALL_H_
#define __BALL_H_
#include "resource.h" // main symbols
class Ball;
/////////////////////////////////////////////////////////////////////////////
// CBall
class BallEx :
public CComObjectRootEx<CComSingleThreadModel>,
public CComCoClass<BallEx, &CLSID_Ball>,
public IDispatchImpl<IBall, &IID_IBall, &LIBID_VPinballLib>,
public IFireEvents,
public IDebugCommands
{
public:
BallEx();
~BallEx();
DECLARE_REGISTRY_RESOURCEID(IDR_BALL)
DECLARE_PROTECT_FINAL_CONSTRUCT()
BEGIN_COM_MAP(BallEx)
COM_INTERFACE_ENTRY(IBall)
COM_INTERFACE_ENTRY(IDispatch)
END_COM_MAP()
// IBall
public:
STDMETHOD(get_Name)(/*[out, retval]*/ BSTR *pVal);
STDMETHOD(put_Name)(/*[in]*/ BSTR newVal);
STDMETHOD(get_BackDecal)(/*[out, retval]*/ BSTR *pVal);
STDMETHOD(put_BackDecal)(/*[in]*/ BSTR newVal);
STDMETHOD(get_FrontDecal)(/*[out, retval]*/ BSTR *pVal);
STDMETHOD(put_FrontDecal)(/*[in]*/ BSTR newVal);
STDMETHOD(get_Image)(/*[out, retval]*/ BSTR *pVal);
STDMETHOD(put_Image)(/*[in]*/ BSTR newVal);
STDMETHOD(get_Color)(/*[out, retval]*/ OLE_COLOR *pVal);
STDMETHOD(put_Color)(/*[in]*/ OLE_COLOR newVal);
STDMETHOD(get_DisableLighting)(/*[out, retval]*/ VARIANT_BOOL *pVal);
STDMETHOD(put_DisableLighting)(/*[in]*/ VARIANT_BOOL newVal);
STDMETHOD(get_VelZ)(/*[out, retval]*/ float *pVal);
STDMETHOD(put_VelZ)(/*[in]*/ float newVal);
STDMETHOD(get_Z)(/*[out, retval]*/ float *pVal);
STDMETHOD(put_Z)(/*[in]*/ float newVal);
STDMETHOD(get_VelY)(/*[out, retval]*/ float *pVal);
STDMETHOD(put_VelY)(/*[in]*/ float newVal);
STDMETHOD(get_VelX)(/*[out, retval]*/ float *pVal);
STDMETHOD(put_VelX)(/*[in]*/ float newVal);
STDMETHOD(get_Y)(/*[out, retval]*/ float *pVal);
STDMETHOD(put_Y)(/*[in]*/ float newVal);
STDMETHOD(get_X)(/*[out, retval]*/ float *pVal);
STDMETHOD(put_X)(/*[in]*/ float newVal);
STDMETHOD(get_Radius)(/*[out, retval]*/ float *pVal);
STDMETHOD(put_Radius)(/*[in]*/ float newVal);
STDMETHOD(get_CollisionMass)(/*[out, retval]*/ float *pVal);
STDMETHOD(put_CollisionMass)(/*[in]*/ float newVal);
STDMETHOD(get_UserValue)(VARIANT *pVal);
STDMETHOD(put_UserValue)(VARIANT *newVal);
STDMETHOD(DestroyBall)(/*[out, retval]*/ int *pVal);
virtual void FireGroupEvent(int dispid) {}
virtual IDispatch *GetDispatch() {return ((IDispatch *) this);}
virtual IDebugCommands *GetDebugCommands() {return (IDebugCommands *) this;}
// IDebugCommands
virtual void GetDebugCommands(VectorInt<int> *pvids, VectorInt<int> *pvcommandid);
virtual void RunDebugCommand(int id);
Ball *m_pball;
VARIANT m_uservalue;
};
#endif //__BALL_H_