GME
13
|
00001 00002 #ifndef MGA_MGAMETACONNJOINT_H 00003 #define MGA_MGAMETACONNJOINT_H 00004 00005 // --------------------------- CMgaMetaConnJoint 00006 00007 class ATL_NO_VTABLE CMgaMetaConnJoint : 00008 public CComObjectRootEx<CComSingleThreadModel>, 00009 public CComCoClass<CMgaMetaConnJoint, &__uuidof(MgaMetaConnJoint)>, 00010 public IDispatchImpl<IMgaMetaConnJoint, &__uuidof(IMgaMetaConnJoint), &__uuidof(__MGAMetaLib)> 00011 { 00012 public: 00013 IUnknown *GetUnknown() const { return (IMgaMetaConnJoint*)this; } 00014 00015 DECLARE_REGISTRY_RESOURCEID(IDR_MGAMETACONNJOINT) 00016 DECLARE_ONLY_AGGREGATABLE(CMgaMetaConnJoint) 00017 00018 BEGIN_COM_MAP(CMgaMetaConnJoint) 00019 COM_INTERFACE_ENTRY(IMgaMetaConnJoint) 00020 COM_INTERFACE_ENTRY2(IDispatch, IMgaMetaConnJoint) 00021 END_COM_MAP() 00022 00023 public: 00024 STDMETHOD(get_PointerSpecs)(IMgaMetaPointerSpecs **p) 00025 { return ComGetCollectionValue<IMgaMetaPointerSpec>( 00026 GetUnknown(), ATTRID_PTRSPECS_COLL, p); } 00027 00028 STDMETHOD(get_Parent)(IMgaMetaConnection **p) 00029 { return ComGetPointerValue(GetUnknown(), ATTRID_CONNJOINTS_COLL,p); } 00030 00031 STDMETHOD(get_PointerSpecByName)(BSTR name, IMgaMetaPointerSpec **p) 00032 { return ComGetCollValueByName(name, GetUnknown(), ATTRID_PTRSPECS_COLL, ATTRID_PTRSPECNAME, p); } 00033 00034 STDMETHOD(GetPointerSpecByNameDisp)(BSTR name, IMgaMetaPointerSpec **p) 00035 { return get_PointerSpecByName( name, p); } 00036 // ------- Edit 00037 00038 public: 00039 STDMETHOD(CreatePointerSpec)(IMgaMetaPointerSpec **p) 00040 { return ComCreateMetaObj(GetUnknown(), METAID_METAPOINTERSPEC, ATTRID_PTRSPECS_COLL, p); } 00041 00042 // ------- Methods 00043 00044 public: 00045 static void Traverse(CMgaMetaProject *metaproject, CCoreObjectPtr &me); 00046 static bool CheckPaths(CCoreObjectPtr &self, jointpaths_type &jointpaths); 00047 }; 00048 00049 #endif//MGA_MGAMETACONNJOINT_H