GME  13
MgaMetaSet.h
Go to the documentation of this file.
00001 
00002 #ifndef MGA_MGAMETASET_H
00003 #define MGA_MGAMETASET_H
00004 
00005 #ifndef MGA_MGAMETAFCO_H
00006 #include "MgaMetaFCO.h"
00007 #endif
00008 
00009 // --------------------------- CMgaMetaSet
00010 
00011 class ATL_NO_VTABLE CMgaMetaSet : 
00012         public CComCoClass<CMgaMetaSet, &__uuidof(MgaMetaSet)>,
00013         public CComObjectRootEx<CComSingleThreadModel>,
00014         public IDispatchImpl<IMgaMetaSet, &__uuidof(IMgaMetaSet), &__uuidof(__MGAMetaLib)>,
00015         public CMgaMetaFCO
00016 {
00017 public:
00018         IUnknown *GetUnknown() const { return (IMgaMetaSet*)this; }
00019 
00020 DECLARE_REGISTRY_RESOURCEID(IDR_MGAMETASET)
00021 DECLARE_ONLY_AGGREGATABLE(CMgaMetaSet)
00022 
00023 BEGIN_COM_MAP(CMgaMetaSet)
00024         COM_INTERFACE_ENTRY(IMgaMetaSet)
00025         COM_INTERFACE_ENTRY(IMgaMetaFCO)
00026         COM_INTERFACE_ENTRY2(IMgaMetaBase, CMgaMetaBase)
00027         COM_INTERFACE_ENTRY2(IDispatch, IMgaMetaSet)
00028 END_COM_MAP()
00029 
00030 DECLARE_MGAMETAFCO()
00031 
00032 public:
00033         STDMETHOD(get_MemberSpec)(IMgaMetaPointerSpec **p)
00034         { return ::QueryInterface(GetUnknown(), p); }
00035 
00036         STDMETHOD(CheckPath)(BSTR path, VARIANT_BOOL *p);
00037 
00038 // ------- Traverse
00039 
00040 public:
00041         static void Traverse(CMgaMetaProject *metaproject, CCoreObjectPtr &me);
00042 
00043 };
00044 
00045 #endif//MGA_MGAMETASET_H