/****************** adomd.idl : IDL source for adomd.dll *****************/ #include "m_guid.h" // Machine generated #include "m_help.inc" // Machine generated #include "dispids.h" // Forwards interface ICatalog; coclass Catalog; interface ICellset; coclass Cellset; interface Cell; interface Axis; interface Position; interface Member; interface Level; interface CubeDef; interface Dimension; interface Hierarchy; interface Axes; interface Positions; interface Members; interface CubeDefs; interface Dimensions; interface Hierarchies; interface Levels; #define UUIID_EnumMemberType uuid(000002AE-0000-0010-8000-00AA006D2EA4) #define DISPID_COLLECT ( -8 ) #define DEFAULT_METHOD id(0) #define CONNECTION_BASEDISPID 1 cpp_quote("#define TARGET_IS_NT40_OR_LATER 1") [ uuid(22813728-8BD3-11D0-B4EF-00A0C9138CA4), version(1.0), helpstring("Microsoft ActiveX Data Objects (Multi-dimensional) 1.0 Library") ] library ADOMD { importlib("stdole32.tlb"); importlib("msado15.dll"); /************************************ Enums **********************************************/ typedef [ UUIID_EnumMemberType ] enum MemberTypeEnum { [] adMemberUnknown = 0x0000, [] adMemberRegular = 0x0001, [] adMemberAll = 0x0002, [] adMemberMeasure = 0x0003, [] adMemberFormula = 0x0004 } MemberTypeEnum; /******************************* Interfaces **********************************************/ [ object, uuid(228136B1-8BD3-11D0-B4EF-00A0C9138CA4), dual, helpstring("ICatalog Interface"), pointer_default(unique) ] interface ICatalog : IDispatch { import "oaidl.idl"; [ propget ] HRESULT Name( [out, retval] BSTR *pbstr ); [ propputref ] HRESULT ActiveConnection( [in] IDispatch *pconn ); [ propput ] HRESULT ActiveConnection( [in] BSTR bstrConn ); [ propget ] HRESULT ActiveConnection( [out, retval] IDispatch **ppConn ); [ propget, DEFAULT_METHOD ] HRESULT CubeDefs( [out, retval] CubeDefs **ppvObject ); }; //--------------------------------------------------------------------------------------------- [ object, uuid(2281372A-8BD3-11D0-B4EF-00A0C9138CA4), dual, helpstring("ICellset Interface"), pointer_default(unique) ] interface ICellset : IDispatch { import "oaidl.idl"; [ propget, vararg, DEFAULT_METHOD ] HRESULT Item( [in] SAFEARRAY(VARIANT)* idx, [out, retval] Cell **ppvObject ); [ ] HRESULT Open( [in, optional] VARIANT DataSource, [in, optional] VARIANT ActiveConnection ); [ ] HRESULT Close(); [ propputref ] HRESULT Source([in] IDispatch *pcmd); [ propput ] HRESULT Source( [in] BSTR bstrCmd ); [ propget ] HRESULT Source( [out, retval] VARIANT *pvSource ); [ propputref ] HRESULT ActiveConnection( [in] IDispatch *pconn ); [ propput ] HRESULT ActiveConnection( [in] BSTR bstrConn ); [ propget ] HRESULT ActiveConnection( [out, retval] IDispatch **ppConn ); [ propget ] HRESULT State([out, retval] LONG *plState); [ propget ] HRESULT Axes( [out, retval] Axes **ppvObject ); [ propget ] HRESULT FilterAxis( [out, retval] Axis **ppvObject ); [ propget ] HRESULT Properties( [out, retval] ADODB.Properties **ppvObject ); }; //--------------------------------------------------------------------------------------------- [ object, uuid(2281372E-8BD3-11D0-B4EF-00A0C9138CA4), dual, helpstring("Cell Interface"), pointer_default(unique) ] interface Cell : IDispatch { import "oaidl.idl"; [ propget, DEFAULT_METHOD ] HRESULT Value( [out, retval] VARIANT *pvar ); [ propput ] HRESULT Value( [in] VARIANT var ); [ propget ] HRESULT Positions( [out, retval] Positions **ppvObject ); [ propget ] HRESULT Properties( [out, retval] ADODB.Properties **ppvObject ); [ propget ] HRESULT FormattedValue( [out, retval] BSTR *pbstr ); [ propput ] HRESULT FormattedValue( [in] BSTR bstr ); [ propget ] HRESULT Ordinal( [out, retval] long *pl ); }; //--------------------------------------------------------------------------------------------- [ object, uuid(22813732-8BD3-11D0-B4EF-00A0C9138CA4), dual, helpstring("Axis Interface"), pointer_default(unique) ] interface Axis : IDispatch { import "oaidl.idl"; [ propget ] HRESULT Name( [out, retval] BSTR *pbstr ); [ propget ] HRESULT DimensionCount( [out, retval] long *pl ); [ propget, DEFAULT_METHOD ] HRESULT Positions( [out, retval] Positions **ppvObject ); [ propget ] HRESULT Properties( [out, retval] ADODB.Properties **ppvObject ); }; //--------------------------------------------------------------------------------------------- [ object, uuid(22813734-8BD3-11D0-B4EF-00A0C9138CA4), dual, helpstring("Position Interface"), pointer_default(unique) ] interface Position : IDispatch { import "oaidl.idl"; [ propget ] HRESULT Ordinal( [out, retval] long *pl ); [ propget, DEFAULT_METHOD ] HRESULT Members( [out, retval] Members **ppvObject ); }; //--------------------------------------------------------------------------------------------- [ object, uuid(22813736-8BD3-11D0-B4EF-00A0C9138CA4), dual, helpstring("Member Interface"), pointer_default(unique) ] interface Member : IDispatch { import "oaidl.idl"; [ propget ] HRESULT Name( [out, retval] BSTR *pbstr ); [ propget ] HRESULT UniqueName( [out, retval] BSTR *pbstr ); [ propget, DEFAULT_METHOD ] HRESULT Caption( [out, retval] BSTR *pbstr ); [ propget ] HRESULT Description( [out, retval] BSTR *pbstr ); [ propget ] HRESULT Parent( [out, retval] Member **ppvObject ); [ propget ] HRESULT LevelDepth( [out, retval] long *pl ); [ propget ] HRESULT LevelName( [out, retval] BSTR *pbstr ); [ propget ] HRESULT Properties( [out, retval] ADODB.Properties **ppvObject ); [ propget ] HRESULT Type( [out, retval] MemberTypeEnum *ptype ); [ propget ] HRESULT ChildCount( [out, retval] long *pl ); [ propget ] HRESULT DrilledDown( [out, retval] VARIANT_BOOL *pf ); [ propget ] HRESULT ParentSameAsPrev( [out, retval] VARIANT_BOOL *pf ); [ propget ] HRESULT Children( [out, retval] Members **ppvObject ); }; //--------------------------------------------------------------------------------------------- [ object, uuid(2281373A-8BD3-11D0-B4EF-00A0C9138CA4), dual, helpstring("Level Interface"), pointer_default(unique) ] interface Level : IDispatch { import "oaidl.idl"; [ propget ] HRESULT Name( [out, retval] BSTR *pbstr ); [ propget ] HRESULT UniqueName( [out, retval] BSTR *pbstr ); [ propget ] HRESULT Caption( [out, retval] BSTR *pbstr ); [ propget ] HRESULT Description( [out, retval] BSTR *pbstr ); [ propget ] HRESULT Depth([out, retval] short *pw); [ propget ] HRESULT Properties( [out, retval] ADODB.Properties **ppvObject ); [ propget, DEFAULT_METHOD ] HRESULT Members( [out, retval] Members **ppvObject ); }; //--------------------------------------------------------------------------------------------- [ object, uuid(2281373E-8BD3-11D0-B4EF-00A0C9138CA4), dual, helpstring("CubeDef Interface"), pointer_default(unique) ] interface CubeDef : IDispatch { import "oaidl.idl"; [ propget ] HRESULT Name( [out, retval] BSTR *pbstr ); [ propget ] HRESULT Description( [out, retval] BSTR *pbstr ); [ propget ] HRESULT Properties( [out, retval] ADODB.Properties **ppvObject ); [ propget, DEFAULT_METHOD ] HRESULT Dimensions( [out, retval] Dimensions **ppvObject ); }; //--------------------------------------------------------------------------------------------- [ object, uuid(22813742-8BD3-11D0-B4EF-00A0C9138CA4), dual, helpstring("Dimension Interface"), pointer_default(unique) ] interface Dimension : IDispatch { import "oaidl.idl"; [ propget ] HRESULT Name( [out, retval] BSTR *pbstr ); [ propget ] HRESULT UniqueName( [out, retval] BSTR *pbstr ); [ propget ] HRESULT Description( [out, retval] BSTR *pbstr ); [ propget ] HRESULT Properties( [out, retval] ADODB.Properties **ppvObject ); [ propget, DEFAULT_METHOD ] HRESULT Hierarchies( [out, retval] Hierarchies **ppvObject ); }; //--------------------------------------------------------------------------------------------- [ object, uuid(22813746-8BD3-11D0-B4EF-00A0C9138CA4), dual, helpstring("Hierarchy Interface"), pointer_default(unique) ] interface Hierarchy : IDispatch { import "oaidl.idl"; [ propget ] HRESULT Name( [out, retval] BSTR *pbstr ); [ propget ] HRESULT UniqueName( [out, retval] BSTR *pbstr ); [ propget ] HRESULT Description( [out, retval] BSTR *pbstr ); [ propget ] HRESULT Properties( [out, retval] ADODB.Properties **ppvObject ); [ propget, DEFAULT_METHOD ] HRESULT Levels( [out, retval] Levels **ppvObject ); }; //--------------------------------------------------------------------------------------------- [ object, uuid(22813751-8BD3-11D0-B4EF-00A0C9138CA4), dual, helpstring("Collection Interface"), pointer_default(unique) ] interface MD_Collection : IDispatch { [ helpcontext(H_COLLECTION_Refresh), helpstring(H_COLLECTION_Refresh_str) ] HRESULT Refresh(); [ restricted, id(-4) ] HRESULT _NewEnum( [out, retval] IUnknown **ppvObject ); [ propget, ] HRESULT Count( [out, retval]long *c ); } //--------------------------------------------------------------------------------------------- [ object, uuid(22813757-8BD3-11D0-B4EF-00A0C9138CA4), dual, helpstring(H_PROPERTIES__str), pointer_default(unique) ] interface Members : MD_Collection { import "oaidl.idl"; //.. [ propget, DEFAULT_METHOD ] HRESULT Item( [in] VARIANT Index, [out, retval] Member **ppvObject ); } //--------------------------------------------------------------------------------------------- [ object, uuid(22813758-8BD3-11D0-B4EF-00A0C9138CA4), dual, helpstring(H_PROPERTIES__str), pointer_default(unique) ] interface Levels : MD_Collection { import "oaidl.idl"; //.. [ propget, DEFAULT_METHOD ] HRESULT Item( [in] VARIANT Index, [out, retval] Level **ppvObject ); } //--------------------------------------------------------------------------------------------- [ object, uuid(22813759-8BD3-11D0-B4EF-00A0C9138CA4), dual, helpstring(H_PROPERTIES__str), pointer_default(unique) ] interface Axes : MD_Collection { import "oaidl.idl"; //.. [ propget, DEFAULT_METHOD ] HRESULT Item( [in] VARIANT Index, [out, retval] Axis **ppvObject ); } //--------------------------------------------------------------------------------------------- [ object, uuid(2281375A-8BD3-11D0-B4EF-00A0C9138CA4), dual, helpstring(H_PROPERTIES__str), pointer_default(unique) ] interface Positions : MD_Collection { import "oaidl.idl"; //.. [ propget, DEFAULT_METHOD ] HRESULT Item( [in] VARIANT Index, [out, retval] Position **ppvObject ); } //--------------------------------------------------------------------------------------------- [ object, uuid(2281375B-8BD3-11D0-B4EF-00A0C9138CA4), dual, helpstring(H_PROPERTIES__str), pointer_default(unique) ] interface Hierarchies : MD_Collection { import "oaidl.idl"; //.. [ propget, DEFAULT_METHOD ] HRESULT Item( [in] VARIANT Index, [out, retval] Hierarchy **ppvObject ); } //--------------------------------------------------------------------------------------------- [ object, uuid(2281375C-8BD3-11D0-B4EF-00A0C9138CA4), dual, helpstring(H_PROPERTIES__str), pointer_default(unique) ] interface Dimensions : MD_Collection { import "oaidl.idl"; //.. [ propget, DEFAULT_METHOD ] HRESULT Item( [in] VARIANT Index, [out, retval] Dimension **ppvObject ); } //--------------------------------------------------------------------------------------------- [ object, uuid(2281375D-8BD3-11D0-B4EF-00A0C9138CA4), dual, helpstring(H_PROPERTIES__str), pointer_default(unique) ] interface CubeDefs : MD_Collection { import "oaidl.idl"; //.. [ propget, DEFAULT_METHOD ] HRESULT Item( [in] VARIANT Index, [out, retval] CubeDef **ppvObject ); } /******************************* Coclasses **********************************************/ [ uuid(228136B0-8BD3-11D0-B4EF-00A0C9138CA4), helpstring("ADOMD Catalog Class") ] coclass Catalog { [default] interface ICatalog; }; //--------------------------------------------------------------------------------------------- [ uuid(228136B8-8BD3-11D0-B4EF-00A0C9138CA4), helpstring("ADOMD Cellset Class") ] coclass Cellset { [default] interface ICellset; }; };