1 #ifndef _HOOPS3DSTREAMCTRLEVENTS_H_
2 #define _HOOPS3DSTREAMCTRLEVENTS_H_
6 class CProxy_IHoops3dStreamCtrlEvents :
public IConnectionPointImpl<T, &DIID__IHoops3dStreamCtrlEvents, CComDynamicUnkArray>
10 HRESULT Fire_OnBeginLoad()
12 CComVariant varResult;
13 T* pT =
static_cast<T*
>(
this);
15 int nConnections = m_vec.GetSize();
17 for (nConnectionIndex = 0; nConnectionIndex < nConnections; nConnectionIndex++)
20 CComPtr<IUnknown> sp = m_vec.GetAt(nConnectionIndex);
22 IDispatch* pDispatch =
reinterpret_cast<IDispatch*
>(sp.p);
23 if (pDispatch != NULL)
25 VariantClear(&varResult);
26 DISPPARAMS disp = { NULL, NULL, 0, 0 };
27 pDispatch->Invoke(0x1, IID_NULL, LOCALE_USER_DEFAULT, DISPATCH_METHOD, &disp, &varResult, NULL, NULL);
30 return varResult.scode;
33 HRESULT Fire_OnEndLoad()
35 CComVariant varResult;
36 T* pT =
static_cast<T*
>(
this);
38 int nConnections = m_vec.GetSize();
40 for (nConnectionIndex = 0; nConnectionIndex < nConnections; nConnectionIndex++)
43 CComPtr<IUnknown> sp = m_vec.GetAt(nConnectionIndex);
45 IDispatch* pDispatch =
reinterpret_cast<IDispatch*
>(sp.p);
46 if (pDispatch != NULL)
48 VariantClear(&varResult);
49 DISPPARAMS disp = { NULL, NULL, 0, 0 };
50 pDispatch->Invoke(0x2, IID_NULL, LOCALE_USER_DEFAULT, DISPATCH_METHOD, &disp, &varResult, NULL, NULL);
53 return varResult.scode;
56 HRESULT Fire_OnSelect(BSTR sel_key)
58 CComVariant varResult;
59 T* pT =
static_cast<T*
>(
this);
61 CComVariant* pvars =
new CComVariant[1];
62 int nConnections = m_vec.GetSize();
64 for (nConnectionIndex = 0; nConnectionIndex < nConnections; nConnectionIndex++)
67 CComPtr<IUnknown> sp = m_vec.GetAt(nConnectionIndex);
69 IDispatch* pDispatch =
reinterpret_cast<IDispatch*
>(sp.p);
70 if (pDispatch != NULL)
72 VariantClear(&varResult);
74 DISPPARAMS disp = { pvars, NULL, 1, 0 };
75 pDispatch->Invoke(0x3, IID_NULL, LOCALE_USER_DEFAULT, DISPATCH_METHOD, &disp, &varResult, NULL, NULL);
79 return varResult.scode;
84 HRESULT Fire_OnModelStructureParsed()
86 CComVariant varResult;
87 T* pT =
static_cast<T*
>(
this);
89 int nConnections = m_vec.GetSize();
91 for (nConnectionIndex = 0; nConnectionIndex < nConnections; nConnectionIndex++)
94 CComPtr<IUnknown> sp = m_vec.GetAt(nConnectionIndex);
96 IDispatch* pDispatch =
reinterpret_cast<IDispatch*
>(sp.p);
97 if (pDispatch != NULL)
99 VariantClear(&varResult);
100 DISPPARAMS disp = { NULL, NULL, 0, 0 };
101 pDispatch->Invoke(0x5, IID_NULL, LOCALE_USER_DEFAULT, DISPATCH_METHOD, &disp, &varResult, NULL, NULL);
104 return varResult.scode;