Mobile API Reference  MicroStrategy 2019
MCESchema Class Reference

#include <MCESchema.h>

Inheritance diagram for MCESchema:
DFCSchemaInterface

Public Member Functions

 MCESchema (MBase::Buffer *ipBuffer)
 
 ~MCESchema ()
 
HRESULT InitSchema ()
 
HRESULT InitLocalOrProjRelVector ()
 
HRESULT HandleNoLocalRel (const DSS_ID &iChildID, const DSS_ID &iParentID)
 
HRESULT HandleMMLocalRel (const DSS_ID &iChildID, const DSS_ID &iParentID)
 
HRESULT Handle1MOr11LocalRel (const DSS_ID &iChildID, const DSS_ID &iParentID)
 
void IsDirectRel (Int32 iChildIndex, Int32 iParentIndex, DFCVecIntVec *iRefChildrenVec, bool &oIsDirectRel)
 
HRESULT RemoveRedundantRefEdge ()
 
HRESULT GetClosestChild (const DSS_ID iAttrID, MCEDSSIDVec *iAttrs, DSS_ID &oAttrID, bool iOnlyOne2MRelationFlag=false)
 
HRESULT GetClosestChild (const DSS_ID iAttrID, const int iAttrNum, const DSS_ID *ipAttrArr, DSS_ID &oAttrID, bool iOnlyOne2MRelationFlag=false)
 
HRESULT GetClosestParent (const DSS_ID iAttrID, MCEDSSIDVec *iAttrs, DSS_ID &oAttrID, bool iOnlyOne2MRelationFlag=false)
 
HRESULT GetClosestParent (const DSS_ID iAttrID, const int iAttrNum, const DSS_ID *ipAttrArr, DSS_ID &oAttrID, bool iOnlyOne2MRelationFlag=false)
 
HRESULT GetClosestAttr (const DSS_ID iAttrID, const int iAttrNum, const DSS_ID *ipAttrArr, DSS_ID &oAttrID, bool iOnlyOne2MRelationFlag=false, bool iParent2Child=true)
 
HRESULT GetClosestSibling (const DSS_ID iAttrID, MCEDSSIDVec *iAttrs, DSS_ID &oAttrID)
 
HRESULT GetClosestAttrs (const DSS_ID iAttrID, const int iAttrNum, const DSS_ID *ipAttrArr, MCEDSSIDVec &oAttrIDs, bool iOnlyOne2MRelationFlag=false, bool iParent2Child=true)
 
HRESULT GetTemplateAttrs (Int32 iCubeIndex, DFCAttrGroup &oAG)
 
HRESULT AddAttributesFromOneCube (MCEAttrVec *ipAttrSet, DSS_ID &iID, DFCString *ipCubeName)
 
EnumMCEAttrRelation DetermineRelationship (MCEAttr *ipSrc, MCEAttr *ipDest)
 
EnumMCEAttrRelation DetermineRelationship (Int32 iSrcIndex, Int32 iDestIndex, bool isIgnoreSibling=false)
 
EnumMCEAttrRelation DetermineRelationship (DSS_ID &iSrc, DSS_ID &iDest)
 
HRESULT OptimizationForGraph (MCEAttr *ipSrc, MCEAttr *ipDest, DFCBitVector *ipOutOfRangeAttrBV)
 
bool IsStrongSibling (MCEAttr *ipAttr1, MCEAttr *ipAttr2, MCEIntSet *ipDataSets)
 
bool IsStrongSibling (Int32 iAttrNbr1, Int32 iAttrNbr2, MCEIntSet *ipDataSets)
 
bool IsTwoAttrsInSameCube (MCEAttr *ipAttr1, MCEAttr *ipAttr2)
 
HRESULT CubesContainingTwoAttrs (MCEAttr *ipAttr1, MCEAttr *ipAttr2, MCEIntSet *iopResultSet)
 
DFCBitVector * GetReducibleAttrBV ()
 
MCEAttrVec * GetAttributes ()
 
MCEAttr * GetAttr (Int32 iIndex)
 
MCEAttr * GetAttr (DFCAttr *ipAttr)
 
MCEAttr * GetAttr (const DSS_ID &iID)
 
DFCAttrGetDFCAttr (const DSS_ID &iID)
 
bool IsConORCG (const DSS_ID &iID)
 
MBase::ReturnWString GetAttrName (const DSS_ID &iID)
 
DFCString * GetCubeName (Int32 iIndex)
 
DSS_ID GetCubeID (Int32 iIndex)
 
HRESULT SetDFC2MCEMap (DSS_ID &iID, MCEAttr *ipMCEAttr)
 
HRESULT SetDSSID2DFCAttrMap (DSS_ID &iID, DFCAttr *ipDFCAttr)
 
HRESULT AddMCEAttr (MCEAttr *ipMCEAttr)
 
Int32 FindMCEIndex (const DFCAttr *ipAttr)
 
HRESULT CalculateReducibleAttrs ()
 
MCEAttrVecVec * GetMCEAttrVecVec ()
 
void Print1MDescendant (ostream &iOstream)
 
void PrintM1Ancestor (ostream &iOstream)
 
void SetDescendantBV (VecBitVec *ipVecBV)
 
void SetAncestorBV (VecBitVec *ipVecBV)
 
void SetMMDescendantBV (VecBitVec *ipVecBV)
 
void SetMMAncestorBV (VecBitVec *ipVecBV)
 
void SetMCEAttrVecVec (MCEAttrVecVec *ipMCEAttrVecVec)
 
void SetMCEAttrVec (MCEAttrVec *ipMCEAttrVec)
 
void FindLowestAttrs (MCEDSSIDVec *iAttrs, GUIDSet &ioLowestAttrs)
 
void FindLowestAttrs (GUIDSet *iAttrs, GUIDSet &ioLowestAttrs)
 
void FindLowerAttrs (DSS_ID iAttrID, MCEDSSIDVec *iAttrs, GUIDSet &ioLowerAttrs)
 
void FindAllAncestors (GUIDSet &iAttrs, GUIDSet &ioLowestAttrs, GUIDSet &oAncestors)
 
HRESULT DimGroupingCalculation ()
 
DFCFunc * GetFuncSUM ()
 
DFCFunc * GetFuncIN ()
 
DFCFunc * GetFuncAND ()
 
DFCFunc * GetFuncOR ()
 
DFCFunc * GetFuncNot ()
 
DFCFunc * GetFuncEQUAL ()
 
DFCForm * GetAttrForm (DSS_ID &iFormID)
 
DFCFunc * GetFunc (DSS_ID &iFuncID)
 
DFCFact * GetFact (DSS_ID &iFactID)
 
HRESULT TopologicalSort (MCEDSSIDVec &ioVector, bool iFromParent2Child=true)
 
HRESULT TopologicalSort (MCEIntVec &ioVector, bool iFromParent2Child=true)
 
HRESULT AttrGroup2DFCBitVector (MBase::Buffer *ipBuffer, DFCAttrGroup &iAG, DFCBitVector **oppAttrsBV)
 
HRESULT MCEDSSIDVec2DFCBitVector (MBase::Buffer *ipBuffer, MCEDSSIDVec *ipAttrs, DFCBitVector **oppAttrsBV)
 
HRESULT GUIDSet2DFCBitVector (MBase::Buffer *ipBuffer, GUIDSet &ipAttrs, DFCBitVector **oppAttrsBV)
 
HRESULT GUIDSet2MCEIntSet (GUIDSet &ipAttrs, MCEIntSet &oAttrSet)
 
HRESULT UnionAllDescendants (MBase::Buffer *ipBuffer, DFCAttrGroup &iAG, DFCBitVector **oppAttrsBV)
 
HRESULT GetAllCommonDescendants (MBase::Buffer *ipBuffer, MCEIntVec &iAttrs, DFCBitVector **oppAttrsBV)
 
HRESULT UnionAllAncestors (MBase::Buffer *ipBuffer, DFCAttrGroup &iAG, DFCBitVector **oppAttrsBV)
 
HRESULT NewEmptyBVs (MBase::Buffer *ipBuffer, DFCBitVector **oppBV)
 
HRESULT CalculateJoinClosure (DFCBitVector *ipLowestAttrsBV1, DFCBitVector *ipLowestAttrsBV2, MCEDSSIDVec *ipAttrsUnion, MBase::Buffer *ipBuffer, GUIDSet *opAttrSet)
 
HRESULT ExistsChild (DSS_ID &iID, MCEDSSIDVec &iAttrs, bool &oExists)
 
HRESULT ExistsParent (DSS_ID &iID, GUIDSet &iAttrs, bool &oExists, bool iOnlyOne2MRelationFlag=true)
 
HRESULT IsRelated (DSS_ID &iID, MCEDSSIDVec &iAttrs, bool &oRelated)
 
HRESULT IsRelated (DSS_ID &iID, GUIDSet &iAttrs, bool &oRelated)
 
HRESULT GetRelations (Int32 iIndexA, MCEIntSet &iAttrs, Int32 &oRelatedStatus, DFCBitVector *ipMask=NULL)
 
Int64 EstimateSize ()
 
HRESULT UnserializeForSmartClient (ICDSSReadBlockStream *ipReadBlockStream)
 
DFCAttrFindAttr (Int32 iNbr)
 
DFCAttrFindAttr (DFCString &iName)
 
DFCBitVectorBase * GetDescendentsBVOfAttr (const DFCAttr *ipAttr)
 
DFCBitVectorBase * GetDescendentsBVOfAttr (const Int32 iMCEIndex)
 
DFCBitVectorBase * GetAncestorsBVOfAttr (const DFCAttr *ipAttr)
 
DFCBitVectorBase * GetAncestorsBVOfAttr (const Int32 iMCEIndex)
 
DFCBitVectorBase * GetPartnersBVOfAttr (const DFCAttr *ipAttr)
 
DFCBitVectorBase * GetParDescendentsBVOfAttr (const DFCAttr *ipAttr)
 
DFCBitVectorBase * GetParAncestorsBVOfAttr (const DFCAttr *ipAttr)
 
DFCBitVectorBase * GetParPartnersBVOfAttr (const DFCAttr *ipAttr)
 
DFCBitVectorBase * GetMMDescendentsBVOfAttr (const DFCAttr *ipAttr)
 
DFCBitVectorBase * GetMMAncestorsBVOfAttr (const DFCAttr *ipAttr)
 
DFCBitVectorBase * GetMMPartnersBVOfAttr (const DFCAttr *ipAttr)
 
DFCBitVectorBase * GetMMDescendentsBVOfAttr (const Int32 iMCEIndex)
 
DFCBitVectorBase * GetMMAncestorsBVOfAttr (const Int32 iMCEIndex)
 
DFCVecIntVec * GetRefChildrenVec ()
 
DFCIntVec * GetRefChildrenVecOfAttr (const DFCAttr *ipAttr)
 
DFCIntVec * GetRefChildrenVecOfAttr (const Int32 iMCEIndex)
 
DFCIntVec * GetRefParentsVecOfAttr (const DFCAttr *ipAttr)
 
DFCIntVec * GetRefParentsVecOfAttr (const Int32 iMCEIndex)
 
DFCIntVec * GetRefMMChildrenVecOfAttr (const DFCAttr *ipAttr)
 
DFCIntVec * GetRefMMChildrenVecOfAttr (const Int32 iMCEIndex)
 
DFCIntVec * GetRefMMParentsVecOfAttr (const DFCAttr *ipAttr)
 
DFCIntVec * GetRefMMParentsVecOfAttr (const Int32 iMCEIndex)
 
DFCBitVectorBase * NewEmptyBV (MBase::Buffer *iBuffer)
 
DFCBitVectorBase * NewEmptyBV (Int32 iLength, MBase::Buffer *iBuffer)
 
DFCBitVectorBase * NewBV (const DFCBitVectorBase *iInput, MBase::Buffer *iBuffer)
 
void PrintAllBitVectors (ostream &iOstream)
 
Int32 GetNumAttr ()
 
virtual void AddLocale ()
 
virtual void CheckLocaleInSchema ()
 
virtual bool ReplaceAttrIfExisted (DFCAttr *ipAttr)
 
virtual DFCCol * FindCol (DFCString &)
 
virtual DFCCol * FindCol (Int32)
 
virtual DFCDBRole * FindDBRole (Int32 iNbr)
 
virtual DFCDBRole * FindDBRole (DFCString &iName)
 
virtual DFCDBRole * FindDBRole (DSS_ID *iID)
 
virtual DFCDatabase * FindDatabase (Int32 iNbr)
 
virtual DFCDatabase * FindDatabase (DFCString &iName)
 
virtual DFCDim * FindDim (DFCString &iName)
 
virtual DFCDim * FindDim (Int32 iNbr)
 
virtual DFCFact * FindFact (DFCString &iName)
 
virtual DFCFact * FindFact (Int32 iNbr)
 
virtual DFCFactGroup * FindFactGroup (DFCString &iName)
 
virtual DFCFactGroup * FindFactGroup (Int32 iNbr)
 
virtual DFCFunc * FindFunc (DFCString &iName)
 
virtual DFCFunc * FindFunc (Int32 iId)
 
virtual DFCRole * FindRole (DFCString &iName)
 
virtual DFCRole * FindRole (Int32 iNbr)
 
virtual DFCTable * FindTable (DFCString &iName)
 
virtual DFCTable * FindTable (Int32 iNbr)
 
virtual DFCTableSource * FindTableSource (DFCString &iName)
 
virtual DFCTableSource * FindTableSource (Int32 iNbr)
 
virtual DFCFunc * GetFuncBETWEEN ()
 
virtual DFCFunc * GetFuncCOUNT ()
 
virtual DFCFunc * GetFuncGREATEQUAL ()
 
virtual DFCFunc * GetFuncGREATER ()
 
virtual DFCFunc * GetFuncGREATEREQUAL ()
 
virtual DFCFunc * GetFuncINTERSECT ()
 
virtual DFCFunc * GetFuncINTERSECTIN ()
 
virtual DFCFunc * GetFuncISNOTNULL ()
 
virtual DFCFunc * GetFuncISNULL (bool iTest=false)
 
virtual DFCFunc * GetFuncLESS ()
 
virtual DFCFunc * GetFuncLESSEQUAL ()
 
virtual DFCFunc * GetFuncLIKE ()
 
virtual DFCFunc * GetFuncMAX ()
 
virtual DFCFunc * GetFuncMIN ()
 
virtual DFCFunc * GetFuncNOT ()
 
virtual DFCFunc * GetFuncNOTBETWEEN ()
 
virtual DFCFunc * GetFuncNOTEQUAL ()
 
virtual DFCFunc * GetFuncNOTIN ()
 
virtual DFCFunc * GetFuncNOTLIKE ()
 
virtual DFCFunc * GetFuncNULLTOZERO ()
 
virtual DFCFunc * GetFuncRANK ()
 
virtual DFCFunc * GetFuncZEROTONULL ()
 
virtual DFCFunc * GetFuncPLUS ()
 
virtual DFCFunc * GetFuncMINUS ()
 
virtual DFCFunc * GetFuncTIMES ()
 
virtual DFCFunc * GetFuncDIVIDE ()
 
virtual DFCFunc * GetFuncTUPLE ()
 
virtual DFCFunc * GetFuncLAST ()
 
virtual DFCFunc * GetFuncFIRST ()
 
virtual DFCFunc * GetFuncIF (bool iTest=false)
 
virtual DFCFunc * GetFuncUNION ()
 
virtual DFCFunc * GetFuncEXCEPT ()
 
virtual void PrintAttr (ostream &iOstream)
 
virtual void PrintCol (ostream &iOstream)
 
virtual void PrintDBRole (ostream &iOstream)
 
virtual void PrintDatabase (ostream &iOstream)
 
virtual void PrintDim (ostream &iOstream)
 
virtual void PrintFact (ostream &iOstream)
 
virtual void PrintFactGroup (ostream &iOstream)
 
virtual void PrintFunc (ostream &iOstream)
 
virtual void PrintRole (ostream &iOstream)
 
virtual void PrintTable (ostream &iOstream)
 
virtual void PrintTableSource (ostream &iOstream)
 
virtual void PrintAll (ostream &iOstream)
 
virtual bool HasSecAggFunc ()
 
virtual void SetHasSecAggFunc (bool iHasSecAggFunc)
 
virtual Int32 GetNumCol ()
 
virtual Int32 GetNumDatabase ()
 
virtual Int32 GetNumDBRole ()
 
virtual Int32 GetNumDim ()
 
virtual Int32 GetNumFact ()
 
virtual Int32 GetNumFunc ()
 
virtual Int32 GetNumFactGroup ()
 
virtual Int32 GetNumRole ()
 
virtual Int32 GetNumTable ()
 
virtual Int32 GetNumTableSource ()
 
virtual EnumDSSDatabaseType GetDatabaseType ()
 
virtual void SetDatabaseType (EnumDSSDatabaseType iDbType)
 
virtual bool IsProjectSchema ()
 
virtual void SetAttrBitVectors ()
 
virtual void SetLocalAttrBitVectors ()
 
virtual DFCProjectSchema * GetProjectSchema ()
 
virtual void AddLocale (Int32 iLocale)
 
virtual bool CheckLocaleInSchema (Int32 iLocale)
 
virtual bool UseSQLDI ()
 
virtual void SetUseSQLDI (bool input)
 
virtual bool GetProjectDIEnabled ()
 
virtual void SetProjectDIEnabled (bool input)
 
virtual const set< Int32, less< Int32 >, MBase::Allocator< Int32 > > * GetLocales ()
 
virtual void UpdateDatabase ()
 
- Public Member Functions inherited from DFCSchemaInterface
 DFCSchemaInterface (MBase::Buffer *ipBuffer)
 
 ~DFCSchemaInterface ()
 
virtual DFCAttrFindAttrIncludingProject (DSS_ID *iID)
 
virtual DFCFact * FindFact (DSS_ID &iID)
 
virtual DFCTable * FindTableByLogicalDSS_ID (DSS_ID &iID)
 
virtual DFCFunc * GetFuncAmpersand ()
 
virtual const VecBitVecGetDescendentsBVs () const
 
virtual const VecBitVecGetAncestorsBVs () const
 
virtual const VecBitVecGetPartnersBVs () const
 
virtual const VecBitVecGetParDescendentsBVs () const
 
virtual const VecBitVecGetParAncestorsBVs () const
 
virtual const VecBitVecGetParPartnersBVs () const
 
virtual const VecBitVecGetMMDescendentsBVs () const
 
virtual const VecBitVecGetMMAncestorsBVs () const
 
virtual const VecBitVecGetMMPartnersBVs () const
 
virtual const DFCVecIntVec * GetRefChildrenVec () const
 
virtual const DFCVecIntVec * GetRefParentsVec () const
 
virtual const DFCVecIntVec * GetRefMMChildrenVec () const
 
virtual const DFCVecIntVec * GetRefMMParentsVec () const
 
virtual const DFCVecIntVec * GetRefParChildrenVec () const
 
virtual const DFCVecIntVec * GetRefParParentsVec () const
 
void PrintBVs ()
 
virtual Int32 InsertAttr (DFCAttr &iAttr, DFCString &iName)
 
virtual Int32 InsertCol (DFCCol &iCol, DFCString &iName)
 
virtual Int32 InsertDatabase (DFCDatabase &iDatabase, DFCString &iName)
 
virtual Int32 InsertDBRole (DFCDBRole &iDBRole, DFCString &iName)
 
virtual Int32 InsertDim (DFCDim &iDim, DFCString &iName)
 
virtual Int32 InsertFact (DFCFact &iFact, DFCString &iName)
 
virtual Int32 InsertFactGroup (DFCFactGroup &iFactGroup, DFCString &iName)
 
virtual Int32 InsertFunc (DFCFunc &iFunc, DFCString &iName)
 
virtual Int32 InsertRole (DFCRole &iRole, DFCString &iName)
 
virtual Int32 InsertTable (DFCTable &iTable, DFCString &iName)
 
virtual Int32 InsertTableSource (DFCTableSource &iTableSource, DFCString &iName)
 
DFCSchemaInterface::SCHEMA_TYPE GetSchemaType () const
 
MBase::BufferGetBuffer () const
 
virtual Int32 InsertAttrForm (DFCForm &iAttrForm, DFCString &iName)
 
virtual DFCSchemaInterface::SingleCubeWisdomConfigGetWisdomConfigForCube (DSS_ID iCubeID)
 
SchemaLoadIndex * GetSchemaLoadIndex ()
 
void SetSchemaLoadIndex (SchemaLoadIndex *ipSmIndex)
 
EnumDFCAttrRelation DetermineRelationship (Int32 iSrcIndex, Int32 iDestIndex, bool isIgnoreSibling=false)
 
virtual bool ContainHadoopFileTable (bool iReportLevelOnly=false)
 
virtual bool ContainSchema (DFCSchemaInterface *ipSchema)
 

Static Public Member Functions

static MCESchemaUnserializeForSmartClient (ICDSSReadBlockStream *ipReadBlockStream, MBase::Buffer *ipBuffer)
 
- Static Public Member Functions inherited from DFCSchemaInterface
static void AddEdge (Int32 iChildIndex, Int32 iParentIndex, VecBitVec *ioDescendentsBVs, VecBitVec *ioAncestorsBVs, MBase::Buffer *iBuffer)
 
static void DeleteEdge (Int32 iChildIndex, Int32 iParentIndex, DFCVecIntVec *iRefChildrenVec, DFCVecIntVec *iRefParentsVec, VecBitVec *ioDescendentsBVs, VecBitVec *ioAncestorsBVs, MBase::Buffer *iBuffer)
 
static void AddRefEdge (Int32 iChildIndex, Int32 iParentIndex, DFCVecIntVec *ioRefChildrenVec, DFCVecIntVec *ioRefParentsVec, VecBitVec *iDescendentsBVs, VecBitVec *iAncestorsBVs, MBase::Buffer *iBuffer, DFCVecIntVec *io1MRefChildrenVec=NULL)
 
static void DeleteRefEdge (Int32 iChildIndex, Int32 iParentIndex, DFCVecIntVec *ioRefChildrenVec, DFCVecIntVec *ioRefParentsVec, MBase::Buffer *iBuffer)
 
static void hRemoveRedundantRefEdge (VecBitVec *iDescendentsBVs, VecBitVec *iAncestorsBVs, DFCVecIntVec *ioRefChildrenVec, DFCVecIntVec *ioRefParentsVec, MBase::Buffer *iBuffer, DFCVecIntVec *io1MRefChildrenVec=NULL)
 
static void hReComputeBVByRef (Int32 iIndex, DFCVecIntVec *iRefChildrenVec, DFCVecIntVec *iRefParentsVec, VecBitVec *ioDescendentsBVs, MBase::Buffer *iBuffer)
 
static bool hHasIndirectPath (Int32 iChildIndex, Int32 iParentIndex, DFCVecIntVec *iRefChildrenVec, MBase::Buffer *iBuffer)
 
static void IsDirectRel (Int32 iChildIndex, Int32 iParentIndex, DFCVecIntVec *iRefChildrenVec, bool &oIsDirectRel)
 
static void hChangeDirect1MToSingleMM (Int32 iChildIndex, Int32 iParentIndex, MBase::Buffer *iBuffer, DFCVecIntVec *ioRefChildrenVec, DFCVecIntVec *ioRefParentsVec, DFCVecIntVec *ioRefMMChildrenVec, DFCVecIntVec *ioRefMMParentsVec, VecBitVec *ioDescendentsBVs, VecBitVec *ioAncestorsBVs, VecBitVec *ioMMDescendentsBVs, VecBitVec *ioMMAncestorsBVs)
 
static void hChangeDirect1MToCircleMM (Int32 iChildIndex, Int32 iParentIndex, MBase::Buffer *iBuffer, DFCVecIntVec *ioRefChildrenVec, DFCVecIntVec *ioRefParentsVec, DFCVecIntVec *ioRefMMChildrenVec, DFCVecIntVec *ioRefMMParentsVec, VecBitVec *ioDescendentsBVs, VecBitVec *ioAncestorsBVs, VecBitVec *ioMMDescendentsBVs, VecBitVec *ioMMAncestorsBVs)
 
static void hChangeDirectMMTo1M (Int32 iChildIndex, Int32 iParentIndex, MBase::Buffer *iBuffer, DFCVecIntVec *ioRefChildrenVec, DFCVecIntVec *ioRefParentsVec, DFCVecIntVec *ioRefMMChildrenVec, DFCVecIntVec *ioRefMMParentsVec, VecBitVec *ioDescendentsBVs, VecBitVec *ioAncestorsBVs, VecBitVec *ioMMDescendentsBVs, VecBitVec *ioMMAncestorsBVs)
 
static void hSetDirect1MRel (Int32 iChildIndex, Int32 iParentIndex, MBase::Buffer *iBuffer, DFCVecIntVec *ioRefChildrenVec, DFCVecIntVec *ioRefParentsVec, DFCVecIntVec *ioRefMMChildrenVec, DFCVecIntVec *ioRefMMParentsVec, VecBitVec *ioDescendentsBVs, VecBitVec *ioAncestorsBVs, VecBitVec *ioMMDescendentsBVs, VecBitVec *ioMMAncestorsBVs)
 
static void hSetDirectMMRel (Int32 iChildIndex, Int32 iParentIndex, MBase::Buffer *iBuffer, DFCVecIntVec *ioRefChildrenVec, DFCVecIntVec *ioRefParentsVec, DFCVecIntVec *ioRefMMChildrenVec, DFCVecIntVec *ioRefMMParentsVec, VecBitVec *ioDescendentsBVs, VecBitVec *ioAncestorsBVs, VecBitVec *ioMMDescendentsBVs, VecBitVec *ioMMAncestorsBVs)
 
static HRESULT HandleMMLocalRel (Int32 iChildIndex, Int32 iParentIndex, MBase::Buffer *iBuffer, Int32 iPreviousRelationType, VecBitVec *ioLocalOrProjRelVec, DFCVecIntVec *ioRefChildrenVec, DFCVecIntVec *ioRefParentsVec, DFCVecIntVec *ioRefMMChildrenVec, DFCVecIntVec *ioRefMMParentsVec, VecBitVec *ioDescendentsBVs, VecBitVec *ioAncestorsBVs, VecBitVec *ioMMDescendentsBVs, VecBitVec *ioMMAncestorsBVs)
 
static HRESULT Handle1MOr11LocalRel (Int32 iChildIndex, Int32 iParentIndex, MBase::Buffer *iBuffer, Int32 iPreviousRelationType, VecBitVec *ioLocalOrProjRelVec, DFCVecIntVec *ioRefChildrenVec, DFCVecIntVec *ioRefParentsVec, DFCVecIntVec *ioRefMMChildrenVec, DFCVecIntVec *ioRefMMParentsVec, VecBitVec *ioDescendentsBVs, VecBitVec *ioAncestorsBVs, VecBitVec *ioMMDescendentsBVs, VecBitVec *ioMMAncestorsBVs)
 

Additional Inherited Members

- Public Types inherited from DFCSchemaInterface
enum  SCHEMA_TYPE { dssProjectLevelSchema = 0, dssReportLevelSchema }
 
- Protected Member Functions inherited from DFCSchemaInterface
void ProcessJointChildrenGroup (Int32 iAttrID, DFCVecIntVec *iJointChildrenGroup, VecBitVec *ioDescendentsBVs, VecBitVec *ioAncestorsBVs, VecBitVec *ioPartnersBVs)
 
void AddEdge (Int32 iChildID, Int32 iParentID, VecBitVec *ioDescendentsBVs, VecBitVec *ioAncestorsBVs, VecBitVec *ioPartnerBVs)
 
- Protected Attributes inherited from DFCSchemaInterface
MBase::BuffermpBuffer
 
VecBitVecmpbvDescendentsBVs
 
VecBitVecmpbvAncestorsBVs
 
VecBitVecmpbvPartnersBVs
 
VecBitVecmpbvParDescendentsBVs
 
VecBitVecmpbvParAncestorsBVs
 
VecBitVecmpbvParPartnersBVs
 
VecBitVecmpbvMMDescendentsBVs
 
VecBitVecmpbvMMAncestorsBVs
 
VecBitVecmpbvMMPartnersBVs
 
DFCVecIntVec * mpvRefChildrenVec
 
DFCVecIntVec * mpvRefParentsVec
 
DFCVecIntVec * mpvRefParChildrenVec
 
DFCVecIntVec * mpvRefParParentsVec
 
DFCVecIntVec * mpvRefMMChildrenVec
 
DFCVecIntVec * mpvRefMMParentsVec
 
DFCVecVecIntVec * mpvJointChildrenGroupVec
 
AttrLkup mAttrs
 
ColLkup mCols
 
DatabaseLkup mDatabases
 
DBRoleLkup mDBRoles
 
DimLkup mDims
 
FactLkup mFacts
 
FactGroupLkup mFactGroups
 
FuncLkup mFuncs
 
RoleLkup mRoles
 
TableLkup mTables
 
TableSourceLkup mTableSources
 
AttrFormLkup mForms
 
SCHEMA_TYPE mSchemaType
 
SchemaLoadIndex * mpSmIndex
 

Constructor & Destructor Documentation

◆ MCESchema()

MCESchema::MCESchema ( MBase::Buffer ipBuffer)

◆ ~MCESchema()

MCESchema::~MCESchema ( )

Member Function Documentation

◆ AddAttributesFromOneCube()

HRESULT MCESchema::AddAttributesFromOneCube ( MCEAttrVec *  ipAttrSet,
DSS_ID iID,
DFCString *  ipCubeName 
)

◆ AddLocale() [1/2]

virtual void MCESchema::AddLocale ( )
inlinevirtual

◆ AddLocale() [2/2]

virtual void MCESchema::AddLocale ( Int32  iLocale)
inlinevirtual

Implements DFCSchemaInterface.

◆ AddMCEAttr()

HRESULT MCESchema::AddMCEAttr ( MCEAttr *  ipMCEAttr)

◆ AttrGroup2DFCBitVector()

HRESULT MCESchema::AttrGroup2DFCBitVector ( MBase::Buffer ipBuffer,
DFCAttrGroup iAG,
DFCBitVector **  oppAttrsBV 
)

◆ CalculateJoinClosure()

HRESULT MCESchema::CalculateJoinClosure ( DFCBitVector *  ipLowestAttrsBV1,
DFCBitVector *  ipLowestAttrsBV2,
MCEDSSIDVec *  ipAttrsUnion,
MBase::Buffer ipBuffer,
GUIDSet *  opAttrSet 
)

◆ CalculateReducibleAttrs()

HRESULT MCESchema::CalculateReducibleAttrs ( )

◆ CheckLocaleInSchema() [1/2]

virtual void MCESchema::CheckLocaleInSchema ( )
inlinevirtual

◆ CheckLocaleInSchema() [2/2]

virtual bool MCESchema::CheckLocaleInSchema ( Int32  iLocale)
inlinevirtual

Implements DFCSchemaInterface.

◆ CubesContainingTwoAttrs()

HRESULT MCESchema::CubesContainingTwoAttrs ( MCEAttr *  ipAttr1,
MCEAttr *  ipAttr2,
MCEIntSet *  iopResultSet 
)

◆ DetermineRelationship() [1/3]

EnumMCEAttrRelation MCESchema::DetermineRelationship ( MCEAttr *  ipSrc,
MCEAttr *  ipDest 
)

◆ DetermineRelationship() [2/3]

EnumMCEAttrRelation MCESchema::DetermineRelationship ( Int32  iSrcIndex,
Int32  iDestIndex,
bool  isIgnoreSibling = false 
)

◆ DetermineRelationship() [3/3]

EnumMCEAttrRelation MCESchema::DetermineRelationship ( DSS_ID iSrc,
DSS_ID iDest 
)

◆ DimGroupingCalculation()

HRESULT MCESchema::DimGroupingCalculation ( )

◆ EstimateSize()

Int64 MCESchema::EstimateSize ( )

◆ ExistsChild()

HRESULT MCESchema::ExistsChild ( DSS_ID iID,
MCEDSSIDVec &  iAttrs,
bool &  oExists 
)

◆ ExistsParent()

HRESULT MCESchema::ExistsParent ( DSS_ID iID,
GUIDSet &  iAttrs,
bool &  oExists,
bool  iOnlyOne2MRelationFlag = true 
)

◆ FindAllAncestors()

void MCESchema::FindAllAncestors ( GUIDSet &  iAttrs,
GUIDSet &  ioLowestAttrs,
GUIDSet &  oAncestors 
)

◆ FindAttr() [1/2]

DFCAttr* MCESchema::FindAttr ( Int32  iNbr)
virtual

Implements DFCSchemaInterface.

◆ FindAttr() [2/2]

DFCAttr* MCESchema::FindAttr ( DFCString &  iName)
virtual

Implements DFCSchemaInterface.

◆ FindCol() [1/2]

virtual DFCCol* MCESchema::FindCol ( DFCString &  )
inlinevirtual

Implements DFCSchemaInterface.

◆ FindCol() [2/2]

virtual DFCCol* MCESchema::FindCol ( Int32  )
inlinevirtual

Implements DFCSchemaInterface.

◆ FindDatabase() [1/2]

virtual DFCDatabase* MCESchema::FindDatabase ( Int32  iNbr)
inlinevirtual

Implements DFCSchemaInterface.

◆ FindDatabase() [2/2]

virtual DFCDatabase* MCESchema::FindDatabase ( DFCString &  iName)
inlinevirtual

Implements DFCSchemaInterface.

◆ FindDBRole() [1/3]

virtual DFCDBRole* MCESchema::FindDBRole ( Int32  iNbr)
inlinevirtual

Implements DFCSchemaInterface.

◆ FindDBRole() [2/3]

virtual DFCDBRole* MCESchema::FindDBRole ( DFCString &  iName)
inlinevirtual

Implements DFCSchemaInterface.

◆ FindDBRole() [3/3]

virtual DFCDBRole* MCESchema::FindDBRole ( DSS_ID iID)
inlinevirtual

Implements DFCSchemaInterface.

◆ FindDim() [1/2]

virtual DFCDim* MCESchema::FindDim ( DFCString &  iName)
inlinevirtual

Implements DFCSchemaInterface.

◆ FindDim() [2/2]

virtual DFCDim* MCESchema::FindDim ( Int32  iNbr)
inlinevirtual

Implements DFCSchemaInterface.

◆ FindFact() [1/2]

virtual DFCFact* MCESchema::FindFact ( DFCString &  iName)
inlinevirtual

Implements DFCSchemaInterface.

◆ FindFact() [2/2]

virtual DFCFact* MCESchema::FindFact ( Int32  iNbr)
inlinevirtual

Implements DFCSchemaInterface.

◆ FindFactGroup() [1/2]

virtual DFCFactGroup* MCESchema::FindFactGroup ( DFCString &  iName)
inlinevirtual

Implements DFCSchemaInterface.

◆ FindFactGroup() [2/2]

virtual DFCFactGroup* MCESchema::FindFactGroup ( Int32  iNbr)
inlinevirtual

Implements DFCSchemaInterface.

◆ FindFunc() [1/2]

virtual DFCFunc* MCESchema::FindFunc ( DFCString &  iName)
inlinevirtual

Implements DFCSchemaInterface.

◆ FindFunc() [2/2]

virtual DFCFunc* MCESchema::FindFunc ( Int32  iId)
inlinevirtual

Implements DFCSchemaInterface.

◆ FindLowerAttrs()

void MCESchema::FindLowerAttrs ( DSS_ID  iAttrID,
MCEDSSIDVec *  iAttrs,
GUIDSet &  ioLowerAttrs 
)

◆ FindLowestAttrs() [1/2]

void MCESchema::FindLowestAttrs ( MCEDSSIDVec *  iAttrs,
GUIDSet &  ioLowestAttrs 
)

◆ FindLowestAttrs() [2/2]

void MCESchema::FindLowestAttrs ( GUIDSet *  iAttrs,
GUIDSet &  ioLowestAttrs 
)

◆ FindMCEIndex()

Int32 MCESchema::FindMCEIndex ( const DFCAttr ipAttr)

◆ FindRole() [1/2]

virtual DFCRole* MCESchema::FindRole ( DFCString &  iName)
inlinevirtual

Implements DFCSchemaInterface.

◆ FindRole() [2/2]

virtual DFCRole* MCESchema::FindRole ( Int32  iNbr)
inlinevirtual

Implements DFCSchemaInterface.

◆ FindTable() [1/2]

virtual DFCTable* MCESchema::FindTable ( DFCString &  iName)
inlinevirtual

Implements DFCSchemaInterface.

◆ FindTable() [2/2]

virtual DFCTable* MCESchema::FindTable ( Int32  iNbr)
inlinevirtual

Implements DFCSchemaInterface.

◆ FindTableSource() [1/2]

virtual DFCTableSource* MCESchema::FindTableSource ( DFCString &  iName)
inlinevirtual

Implements DFCSchemaInterface.

◆ FindTableSource() [2/2]

virtual DFCTableSource* MCESchema::FindTableSource ( Int32  iNbr)
inlinevirtual

Implements DFCSchemaInterface.

◆ GetAllCommonDescendants()

HRESULT MCESchema::GetAllCommonDescendants ( MBase::Buffer ipBuffer,
MCEIntVec &  iAttrs,
DFCBitVector **  oppAttrsBV 
)

◆ GetAncestorsBVOfAttr() [1/2]

DFCBitVectorBase* MCESchema::GetAncestorsBVOfAttr ( const DFCAttr ipAttr)
virtual

Implements DFCSchemaInterface.

◆ GetAncestorsBVOfAttr() [2/2]

DFCBitVectorBase* MCESchema::GetAncestorsBVOfAttr ( const Int32  iMCEIndex)

◆ GetAttr() [1/3]

MCEAttr* MCESchema::GetAttr ( Int32  iIndex)

◆ GetAttr() [2/3]

MCEAttr* MCESchema::GetAttr ( DFCAttr ipAttr)

◆ GetAttr() [3/3]

MCEAttr* MCESchema::GetAttr ( const DSS_ID iID)

◆ GetAttrForm()

DFCForm* MCESchema::GetAttrForm ( DSS_ID iFormID)
inline

◆ GetAttributes()

MCEAttrVec* MCESchema::GetAttributes ( )

◆ GetAttrName()

MBase::ReturnWString MCESchema::GetAttrName ( const DSS_ID iID)

◆ GetClosestAttr()

HRESULT MCESchema::GetClosestAttr ( const DSS_ID  iAttrID,
const int  iAttrNum,
const DSS_ID ipAttrArr,
DSS_ID oAttrID,
bool  iOnlyOne2MRelationFlag = false,
bool  iParent2Child = true 
)

◆ GetClosestAttrs()

HRESULT MCESchema::GetClosestAttrs ( const DSS_ID  iAttrID,
const int  iAttrNum,
const DSS_ID ipAttrArr,
MCEDSSIDVec &  oAttrIDs,
bool  iOnlyOne2MRelationFlag = false,
bool  iParent2Child = true 
)

◆ GetClosestChild() [1/2]

HRESULT MCESchema::GetClosestChild ( const DSS_ID  iAttrID,
MCEDSSIDVec *  iAttrs,
DSS_ID oAttrID,
bool  iOnlyOne2MRelationFlag = false 
)

◆ GetClosestChild() [2/2]

HRESULT MCESchema::GetClosestChild ( const DSS_ID  iAttrID,
const int  iAttrNum,
const DSS_ID ipAttrArr,
DSS_ID oAttrID,
bool  iOnlyOne2MRelationFlag = false 
)

◆ GetClosestParent() [1/2]

HRESULT MCESchema::GetClosestParent ( const DSS_ID  iAttrID,
MCEDSSIDVec *  iAttrs,
DSS_ID oAttrID,
bool  iOnlyOne2MRelationFlag = false 
)

◆ GetClosestParent() [2/2]

HRESULT MCESchema::GetClosestParent ( const DSS_ID  iAttrID,
const int  iAttrNum,
const DSS_ID ipAttrArr,
DSS_ID oAttrID,
bool  iOnlyOne2MRelationFlag = false 
)

◆ GetClosestSibling()

HRESULT MCESchema::GetClosestSibling ( const DSS_ID  iAttrID,
MCEDSSIDVec *  iAttrs,
DSS_ID oAttrID 
)

◆ GetCubeID()

DSS_ID MCESchema::GetCubeID ( Int32  iIndex)

◆ GetCubeName()

DFCString* MCESchema::GetCubeName ( Int32  iIndex)

◆ GetDatabaseType()

virtual EnumDSSDatabaseType MCESchema::GetDatabaseType ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetDescendentsBVOfAttr() [1/2]

DFCBitVectorBase* MCESchema::GetDescendentsBVOfAttr ( const DFCAttr ipAttr)
virtual

Implements DFCSchemaInterface.

◆ GetDescendentsBVOfAttr() [2/2]

DFCBitVectorBase* MCESchema::GetDescendentsBVOfAttr ( const Int32  iMCEIndex)

◆ GetDFCAttr()

DFCAttr* MCESchema::GetDFCAttr ( const DSS_ID iID)

◆ GetFact()

DFCFact* MCESchema::GetFact ( DSS_ID iFactID)
inline

◆ GetFunc()

DFCFunc* MCESchema::GetFunc ( DSS_ID iFuncID)
inline

◆ GetFuncAND()

DFCFunc* MCESchema::GetFuncAND ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncBETWEEN()

virtual DFCFunc* MCESchema::GetFuncBETWEEN ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncCOUNT()

virtual DFCFunc* MCESchema::GetFuncCOUNT ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncDIVIDE()

virtual DFCFunc* MCESchema::GetFuncDIVIDE ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncEQUAL()

DFCFunc* MCESchema::GetFuncEQUAL ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncEXCEPT()

virtual DFCFunc* MCESchema::GetFuncEXCEPT ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncFIRST()

virtual DFCFunc* MCESchema::GetFuncFIRST ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncGREATEQUAL()

virtual DFCFunc* MCESchema::GetFuncGREATEQUAL ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncGREATER()

virtual DFCFunc* MCESchema::GetFuncGREATER ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncGREATEREQUAL()

virtual DFCFunc* MCESchema::GetFuncGREATEREQUAL ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncIF()

virtual DFCFunc* MCESchema::GetFuncIF ( bool  iTest = false)
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncIN()

DFCFunc* MCESchema::GetFuncIN ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncINTERSECT()

virtual DFCFunc* MCESchema::GetFuncINTERSECT ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncINTERSECTIN()

virtual DFCFunc* MCESchema::GetFuncINTERSECTIN ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncISNOTNULL()

virtual DFCFunc* MCESchema::GetFuncISNOTNULL ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncISNULL()

virtual DFCFunc* MCESchema::GetFuncISNULL ( bool  iTest = false)
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncLAST()

virtual DFCFunc* MCESchema::GetFuncLAST ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncLESS()

virtual DFCFunc* MCESchema::GetFuncLESS ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncLESSEQUAL()

virtual DFCFunc* MCESchema::GetFuncLESSEQUAL ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncLIKE()

virtual DFCFunc* MCESchema::GetFuncLIKE ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncMAX()

virtual DFCFunc* MCESchema::GetFuncMAX ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncMIN()

virtual DFCFunc* MCESchema::GetFuncMIN ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncMINUS()

virtual DFCFunc* MCESchema::GetFuncMINUS ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncNot()

DFCFunc* MCESchema::GetFuncNot ( )
inline

◆ GetFuncNOT()

virtual DFCFunc* MCESchema::GetFuncNOT ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncNOTBETWEEN()

virtual DFCFunc* MCESchema::GetFuncNOTBETWEEN ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncNOTEQUAL()

virtual DFCFunc* MCESchema::GetFuncNOTEQUAL ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncNOTIN()

virtual DFCFunc* MCESchema::GetFuncNOTIN ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncNOTLIKE()

virtual DFCFunc* MCESchema::GetFuncNOTLIKE ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncNULLTOZERO()

virtual DFCFunc* MCESchema::GetFuncNULLTOZERO ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncOR()

DFCFunc* MCESchema::GetFuncOR ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncPLUS()

virtual DFCFunc* MCESchema::GetFuncPLUS ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncRANK()

virtual DFCFunc* MCESchema::GetFuncRANK ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncSUM()

DFCFunc* MCESchema::GetFuncSUM ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncTIMES()

virtual DFCFunc* MCESchema::GetFuncTIMES ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncTUPLE()

virtual DFCFunc* MCESchema::GetFuncTUPLE ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncUNION()

virtual DFCFunc* MCESchema::GetFuncUNION ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetFuncZEROTONULL()

virtual DFCFunc* MCESchema::GetFuncZEROTONULL ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetLocales()

virtual const set<Int32, less<Int32>, MBase::Allocator<Int32> >* MCESchema::GetLocales ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetMCEAttrVecVec()

MCEAttrVecVec* MCESchema::GetMCEAttrVecVec ( )

◆ GetMMAncestorsBVOfAttr() [1/2]

DFCBitVectorBase* MCESchema::GetMMAncestorsBVOfAttr ( const DFCAttr ipAttr)
virtual

Implements DFCSchemaInterface.

◆ GetMMAncestorsBVOfAttr() [2/2]

DFCBitVectorBase* MCESchema::GetMMAncestorsBVOfAttr ( const Int32  iMCEIndex)

◆ GetMMDescendentsBVOfAttr() [1/2]

DFCBitVectorBase* MCESchema::GetMMDescendentsBVOfAttr ( const DFCAttr ipAttr)
virtual

Implements DFCSchemaInterface.

◆ GetMMDescendentsBVOfAttr() [2/2]

DFCBitVectorBase* MCESchema::GetMMDescendentsBVOfAttr ( const Int32  iMCEIndex)

◆ GetMMPartnersBVOfAttr()

DFCBitVectorBase* MCESchema::GetMMPartnersBVOfAttr ( const DFCAttr ipAttr)
virtual

Implements DFCSchemaInterface.

◆ GetNumAttr()

Int32 MCESchema::GetNumAttr ( )
virtual

Implements DFCSchemaInterface.

◆ GetNumCol()

virtual Int32 MCESchema::GetNumCol ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetNumDatabase()

virtual Int32 MCESchema::GetNumDatabase ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetNumDBRole()

virtual Int32 MCESchema::GetNumDBRole ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetNumDim()

virtual Int32 MCESchema::GetNumDim ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetNumFact()

virtual Int32 MCESchema::GetNumFact ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetNumFactGroup()

virtual Int32 MCESchema::GetNumFactGroup ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetNumFunc()

virtual Int32 MCESchema::GetNumFunc ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetNumRole()

virtual Int32 MCESchema::GetNumRole ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetNumTable()

virtual Int32 MCESchema::GetNumTable ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetNumTableSource()

virtual Int32 MCESchema::GetNumTableSource ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetParAncestorsBVOfAttr()

DFCBitVectorBase* MCESchema::GetParAncestorsBVOfAttr ( const DFCAttr ipAttr)
virtual

Implements DFCSchemaInterface.

◆ GetParDescendentsBVOfAttr()

DFCBitVectorBase* MCESchema::GetParDescendentsBVOfAttr ( const DFCAttr ipAttr)
virtual

Implements DFCSchemaInterface.

◆ GetParPartnersBVOfAttr()

DFCBitVectorBase* MCESchema::GetParPartnersBVOfAttr ( const DFCAttr ipAttr)
virtual

Implements DFCSchemaInterface.

◆ GetPartnersBVOfAttr()

DFCBitVectorBase* MCESchema::GetPartnersBVOfAttr ( const DFCAttr ipAttr)
virtual

Implements DFCSchemaInterface.

◆ GetProjectDIEnabled()

virtual bool MCESchema::GetProjectDIEnabled ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetProjectSchema()

virtual DFCProjectSchema* MCESchema::GetProjectSchema ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ GetReducibleAttrBV()

DFCBitVector* MCESchema::GetReducibleAttrBV ( )

◆ GetRefChildrenVec()

DFCVecIntVec* MCESchema::GetRefChildrenVec ( )

◆ GetRefChildrenVecOfAttr() [1/2]

DFCIntVec* MCESchema::GetRefChildrenVecOfAttr ( const DFCAttr ipAttr)
virtual

Implements DFCSchemaInterface.

◆ GetRefChildrenVecOfAttr() [2/2]

DFCIntVec* MCESchema::GetRefChildrenVecOfAttr ( const Int32  iMCEIndex)

◆ GetRefMMChildrenVecOfAttr() [1/2]

DFCIntVec* MCESchema::GetRefMMChildrenVecOfAttr ( const DFCAttr ipAttr)
virtual

Implements DFCSchemaInterface.

◆ GetRefMMChildrenVecOfAttr() [2/2]

DFCIntVec* MCESchema::GetRefMMChildrenVecOfAttr ( const Int32  iMCEIndex)

◆ GetRefMMParentsVecOfAttr() [1/2]

DFCIntVec* MCESchema::GetRefMMParentsVecOfAttr ( const DFCAttr ipAttr)
virtual

Implements DFCSchemaInterface.

◆ GetRefMMParentsVecOfAttr() [2/2]

DFCIntVec* MCESchema::GetRefMMParentsVecOfAttr ( const Int32  iMCEIndex)

◆ GetRefParentsVecOfAttr() [1/2]

DFCIntVec* MCESchema::GetRefParentsVecOfAttr ( const DFCAttr ipAttr)
virtual

Implements DFCSchemaInterface.

◆ GetRefParentsVecOfAttr() [2/2]

DFCIntVec* MCESchema::GetRefParentsVecOfAttr ( const Int32  iMCEIndex)

◆ GetRelations()

HRESULT MCESchema::GetRelations ( Int32  iIndexA,
MCEIntSet &  iAttrs,
Int32 oRelatedStatus,
DFCBitVector *  ipMask = NULL 
)

◆ GetTemplateAttrs()

HRESULT MCESchema::GetTemplateAttrs ( Int32  iCubeIndex,
DFCAttrGroup oAG 
)

◆ GUIDSet2DFCBitVector()

HRESULT MCESchema::GUIDSet2DFCBitVector ( MBase::Buffer ipBuffer,
GUIDSet &  ipAttrs,
DFCBitVector **  oppAttrsBV 
)

◆ GUIDSet2MCEIntSet()

HRESULT MCESchema::GUIDSet2MCEIntSet ( GUIDSet &  ipAttrs,
MCEIntSet &  oAttrSet 
)

◆ Handle1MOr11LocalRel()

HRESULT MCESchema::Handle1MOr11LocalRel ( const DSS_ID iChildID,
const DSS_ID iParentID 
)

◆ HandleMMLocalRel()

HRESULT MCESchema::HandleMMLocalRel ( const DSS_ID iChildID,
const DSS_ID iParentID 
)

◆ HandleNoLocalRel()

HRESULT MCESchema::HandleNoLocalRel ( const DSS_ID iChildID,
const DSS_ID iParentID 
)

◆ HasSecAggFunc()

virtual bool MCESchema::HasSecAggFunc ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ InitLocalOrProjRelVector()

HRESULT MCESchema::InitLocalOrProjRelVector ( )

◆ InitSchema()

HRESULT MCESchema::InitSchema ( )

◆ IsConORCG()

bool MCESchema::IsConORCG ( const DSS_ID iID)

◆ IsDirectRel()

void MCESchema::IsDirectRel ( Int32  iChildIndex,
Int32  iParentIndex,
DFCVecIntVec *  iRefChildrenVec,
bool &  oIsDirectRel 
)

◆ IsProjectSchema()

virtual bool MCESchema::IsProjectSchema ( )
inlinevirtual

Reimplemented from DFCSchemaInterface.

◆ IsRelated() [1/2]

HRESULT MCESchema::IsRelated ( DSS_ID iID,
MCEDSSIDVec &  iAttrs,
bool &  oRelated 
)

◆ IsRelated() [2/2]

HRESULT MCESchema::IsRelated ( DSS_ID iID,
GUIDSet &  iAttrs,
bool &  oRelated 
)

◆ IsStrongSibling() [1/2]

bool MCESchema::IsStrongSibling ( MCEAttr *  ipAttr1,
MCEAttr *  ipAttr2,
MCEIntSet *  ipDataSets 
)

◆ IsStrongSibling() [2/2]

bool MCESchema::IsStrongSibling ( Int32  iAttrNbr1,
Int32  iAttrNbr2,
MCEIntSet *  ipDataSets 
)

◆ IsTwoAttrsInSameCube()

bool MCESchema::IsTwoAttrsInSameCube ( MCEAttr *  ipAttr1,
MCEAttr *  ipAttr2 
)

◆ MCEDSSIDVec2DFCBitVector()

HRESULT MCESchema::MCEDSSIDVec2DFCBitVector ( MBase::Buffer ipBuffer,
MCEDSSIDVec *  ipAttrs,
DFCBitVector **  oppAttrsBV 
)

◆ NewBV()

DFCBitVectorBase* MCESchema::NewBV ( const DFCBitVectorBase *  iInput,
MBase::Buffer iBuffer 
)
inlinevirtual

Implements DFCSchemaInterface.

◆ NewEmptyBV() [1/2]

DFCBitVectorBase* MCESchema::NewEmptyBV ( MBase::Buffer iBuffer)
virtual

Implements DFCSchemaInterface.

◆ NewEmptyBV() [2/2]

DFCBitVectorBase* MCESchema::NewEmptyBV ( Int32  iLength,
MBase::Buffer iBuffer 
)
virtual

Implements DFCSchemaInterface.

◆ NewEmptyBVs()

HRESULT MCESchema::NewEmptyBVs ( MBase::Buffer ipBuffer,
DFCBitVector **  oppBV 
)

◆ OptimizationForGraph()

HRESULT MCESchema::OptimizationForGraph ( MCEAttr *  ipSrc,
MCEAttr *  ipDest,
DFCBitVector *  ipOutOfRangeAttrBV 
)

◆ Print1MDescendant()

void MCESchema::Print1MDescendant ( ostream &  iOstream)

◆ PrintAll()

virtual void MCESchema::PrintAll ( ostream &  iOstream)
inlinevirtual

Implements DFCSchemaInterface.

◆ PrintAllBitVectors()

void MCESchema::PrintAllBitVectors ( ostream &  iOstream)
virtual

Reimplemented from DFCSchemaInterface.

◆ PrintAttr()

virtual void MCESchema::PrintAttr ( ostream &  iOstream)
inlinevirtual

Implements DFCSchemaInterface.

◆ PrintCol()

virtual void MCESchema::PrintCol ( ostream &  iOstream)
inlinevirtual

Implements DFCSchemaInterface.

◆ PrintDatabase()

virtual void MCESchema::PrintDatabase ( ostream &  iOstream)
inlinevirtual

Implements DFCSchemaInterface.

◆ PrintDBRole()

virtual void MCESchema::PrintDBRole ( ostream &  iOstream)
inlinevirtual

Implements DFCSchemaInterface.

◆ PrintDim()

virtual void MCESchema::PrintDim ( ostream &  iOstream)
inlinevirtual

Implements DFCSchemaInterface.

◆ PrintFact()

virtual void MCESchema::PrintFact ( ostream &  iOstream)
inlinevirtual

Implements DFCSchemaInterface.

◆ PrintFactGroup()

virtual void MCESchema::PrintFactGroup ( ostream &  iOstream)
inlinevirtual

Implements DFCSchemaInterface.

◆ PrintFunc()

virtual void MCESchema::PrintFunc ( ostream &  iOstream)
inlinevirtual

Implements DFCSchemaInterface.

◆ PrintM1Ancestor()

void MCESchema::PrintM1Ancestor ( ostream &  iOstream)

◆ PrintRole()

virtual void MCESchema::PrintRole ( ostream &  iOstream)
inlinevirtual

Implements DFCSchemaInterface.

◆ PrintTable()

virtual void MCESchema::PrintTable ( ostream &  iOstream)
inlinevirtual

Implements DFCSchemaInterface.

◆ PrintTableSource()

virtual void MCESchema::PrintTableSource ( ostream &  iOstream)
inlinevirtual

Implements DFCSchemaInterface.

◆ RemoveRedundantRefEdge()

HRESULT MCESchema::RemoveRedundantRefEdge ( )

◆ ReplaceAttrIfExisted()

virtual bool MCESchema::ReplaceAttrIfExisted ( DFCAttr ipAttr)
inlinevirtual

Implements DFCSchemaInterface.

◆ SetAncestorBV()

void MCESchema::SetAncestorBV ( VecBitVec ipVecBV)

◆ SetAttrBitVectors()

virtual void MCESchema::SetAttrBitVectors ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ SetDatabaseType()

virtual void MCESchema::SetDatabaseType ( EnumDSSDatabaseType  iDbType)
inlinevirtual

Reimplemented from DFCSchemaInterface.

◆ SetDescendantBV()

void MCESchema::SetDescendantBV ( VecBitVec ipVecBV)

◆ SetDFC2MCEMap()

HRESULT MCESchema::SetDFC2MCEMap ( DSS_ID iID,
MCEAttr *  ipMCEAttr 
)

◆ SetDSSID2DFCAttrMap()

HRESULT MCESchema::SetDSSID2DFCAttrMap ( DSS_ID iID,
DFCAttr ipDFCAttr 
)

◆ SetHasSecAggFunc()

virtual void MCESchema::SetHasSecAggFunc ( bool  iHasSecAggFunc)
inlinevirtual

Implements DFCSchemaInterface.

◆ SetLocalAttrBitVectors()

virtual void MCESchema::SetLocalAttrBitVectors ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ SetMCEAttrVec()

void MCESchema::SetMCEAttrVec ( MCEAttrVec *  ipMCEAttrVec)

◆ SetMCEAttrVecVec()

void MCESchema::SetMCEAttrVecVec ( MCEAttrVecVec *  ipMCEAttrVecVec)

◆ SetMMAncestorBV()

void MCESchema::SetMMAncestorBV ( VecBitVec ipVecBV)

◆ SetMMDescendantBV()

void MCESchema::SetMMDescendantBV ( VecBitVec ipVecBV)

◆ SetProjectDIEnabled()

virtual void MCESchema::SetProjectDIEnabled ( bool  input)
inlinevirtual

Implements DFCSchemaInterface.

◆ SetUseSQLDI()

virtual void MCESchema::SetUseSQLDI ( bool  input)
inlinevirtual

Implements DFCSchemaInterface.

◆ TopologicalSort() [1/2]

HRESULT MCESchema::TopologicalSort ( MCEDSSIDVec &  ioVector,
bool  iFromParent2Child = true 
)

◆ TopologicalSort() [2/2]

HRESULT MCESchema::TopologicalSort ( MCEIntVec &  ioVector,
bool  iFromParent2Child = true 
)

◆ UnionAllAncestors()

HRESULT MCESchema::UnionAllAncestors ( MBase::Buffer ipBuffer,
DFCAttrGroup iAG,
DFCBitVector **  oppAttrsBV 
)

◆ UnionAllDescendants()

HRESULT MCESchema::UnionAllDescendants ( MBase::Buffer ipBuffer,
DFCAttrGroup iAG,
DFCBitVector **  oppAttrsBV 
)

◆ UnserializeForSmartClient() [1/2]

HRESULT MCESchema::UnserializeForSmartClient ( ICDSSReadBlockStream ipReadBlockStream)

◆ UnserializeForSmartClient() [2/2]

static MCESchema* MCESchema::UnserializeForSmartClient ( ICDSSReadBlockStream ipReadBlockStream,
MBase::Buffer ipBuffer 
)
static

◆ UpdateDatabase()

virtual void MCESchema::UpdateDatabase ( )
inlinevirtual

Implements DFCSchemaInterface.

◆ UseSQLDI()

virtual bool MCESchema::UseSQLDI ( )
inlinevirtual

Implements DFCSchemaInterface.