LibreOffice Module sc (master)  1
Public Member Functions | Private Member Functions | Private Attributes | List of all members
ScDPSource Class Referencefinal

#include <dptabsrc.hxx>

Inheritance diagram for ScDPSource:
[legend]
Collaboration diagram for ScDPSource:
[legend]

Public Member Functions

 ScDPSource (ScDPTableData *pD)
 
virtual ~ScDPSource () override
 
ScDPTableDataGetData ()
 
const ScDPTableDataGetData () const
 
const std::optional< OUString > & GetGrandTotalName () const
 
css::sheet::DataPilotFieldOrientation GetOrientation (sal_Int32 nColumn)
 
void SetOrientation (sal_Int32 nColumn, css::sheet::DataPilotFieldOrientation nNew)
 
sal_Int32 GetPosition (sal_Int32 nColumn)
 
sal_Int32 GetDataDimensionCount () const
 
ScDPDimensionGetDataDimension (sal_Int32 nIndex)
 
OUString GetDataDimName (sal_Int32 nIndex)
 
const ScDPCacheGetCache ()
 
const ScDPItemDataGetItemDataById (sal_Int32 nDim, sal_Int32 nId)
 
bool IsDataLayoutDimension (sal_Int32 nDim)
 
css::sheet::DataPilotFieldOrientation GetDataLayoutOrientation ()
 
bool IsDateDimension (sal_Int32 nDim)
 
bool SubTotalAllowed (sal_Int32 nColumn)
 
ScDPDimensionAddDuplicated (std::u16string_view rNewName)
 move to ScDPResultData More...
 
sal_Int32 GetDupCount () const
 
sal_Int32 GetSourceDim (sal_Int32 nDim)
 
const css::uno::Sequence< css::sheet::MemberResult > * GetMemberResults (const ScDPLevel *pLevel)
 
ScDPDimensionsGetDimensionsObject ()
 
virtual css::uno::Reference< css::container::XNameAccess > SAL_CALL getDimensions () override
 
virtual css::uno::Sequence< css::uno::Sequence< css::sheet::DataResult > > SAL_CALL getResults () override
 
virtual css::uno::Sequence< double > SAL_CALL getFilteredResults (const css::uno::Sequence< css::sheet::DataPilotFieldFilter > &aFilters) override
 
virtual void SAL_CALL refresh () override
 
virtual void SAL_CALL addRefreshListener (const css::uno::Reference< css::util::XRefreshListener > &l) override
 
virtual void SAL_CALL removeRefreshListener (const css::uno::Reference< css::util::XRefreshListener > &l) override
 
virtual css::uno::Sequence< css::uno::Sequence< css::uno::Any > > SAL_CALL getDrillDownData (const css::uno::Sequence< css::sheet::DataPilotFieldFilter > &aFilters) override
 
virtual css::uno::Reference< css::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo () override
 
virtual void SAL_CALL setPropertyValue (const OUString &aPropertyName, const css::uno::Any &aValue) override
 
virtual css::uno::Any SAL_CALL getPropertyValue (const OUString &PropertyName) override
 
virtual void SAL_CALL addPropertyChangeListener (const OUString &aPropertyName, const css::uno::Reference< css::beans::XPropertyChangeListener > &xListener) override
 
virtual void SAL_CALL removePropertyChangeListener (const OUString &aPropertyName, const css::uno::Reference< css::beans::XPropertyChangeListener > &aListener) override
 
virtual void SAL_CALL addVetoableChangeListener (const OUString &PropertyName, const css::uno::Reference< css::beans::XVetoableChangeListener > &aListener) override
 
virtual void SAL_CALL removeVetoableChangeListener (const OUString &PropertyName, const css::uno::Reference< css::beans::XVetoableChangeListener > &aListener) override
 
virtual OUString SAL_CALL getImplementationName () override
 
virtual sal_Bool SAL_CALL supportsService (const OUString &ServiceName) override
 
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames () override
 
void DumpResults () const
 

Private Member Functions

void CreateRes_Impl ()
 
void FillMemberResults ()
 
void FillLevelList (css::sheet::DataPilotFieldOrientation nOrientation, std::vector< ScDPLevel * > &rList)
 
void FillCalcInfo (bool bIsRow, ScDPTableData::CalcInfo &rInfo, bool &bHasAutoShow)
 
void GetCategoryDimensionIndices (std::unordered_set< sal_Int32 > &rCatDims)
 Compile a list of dimension indices that are either, column, row or page dimensions (i.e. More...
 
void FilterCacheByPageDimensions ()
 Set visibilities of individual rows in the cache table based on the page field data. More...
 
void SetDupCount (tools::Long nNew)
 
OUString getDataDescription ()
 
void setIgnoreEmptyRows (bool bSet)
 ??? More...
 
void setRepeatIfEmpty (bool bSet)
 
void disposeData ()
 

Private Attributes

ScDPTableDatapData
 
rtl::Reference< ScDPDimensionspDimensions
 
std::vector< sal_Int32 > maColDims
 
std::vector< sal_Int32 > maRowDims
 
std::vector< sal_Int32 > maDataDims
 
std::vector< sal_Int32 > maPageDims
 
ScDPResultTree maResFilterSet
 
bool bColumnGrand
 
bool bRowGrand
 
bool bIgnoreEmptyRows
 
bool bRepeatIfEmpty
 
sal_Int32 nDupCount
 
std::unique_ptr< ScDPResultDatapResData
 
std::unique_ptr< ScDPResultMemberpColResRoot
 
std::unique_ptr< ScDPResultMemberpRowResRoot
 
std::unique_ptr< css::uno::Sequence< css::sheet::MemberResult >[]> pColResults
 
std::unique_ptr< css::uno::Sequence< css::sheet::MemberResult >[]> pRowResults
 
std::vector< ScDPLevel * > aColLevelList
 
std::vector< ScDPLevel * > aRowLevelList
 
bool bResultOverflow
 
bool bPageFiltered
 
std::optional< OUString > mpGrandTotalName
 

Detailed Description

Definition at line 74 of file dptabsrc.hxx.

Constructor & Destructor Documentation

ScDPSource::ScDPSource ( ScDPTableData pD)

Definition at line 94 of file dptabsrc.cxx.

References bIgnoreEmptyRows, bRepeatIfEmpty, pData, pData, and ScDPTableData::SetEmptyFlags().

ScDPSource::~ScDPSource ( )
overridevirtual

Definition at line 107 of file dptabsrc.cxx.

References pColResRoot, pColResults, pResData, pRowResRoot, and pRowResults.

Member Function Documentation

ScDPDimension * ScDPSource::AddDuplicated ( std::u16string_view  rNewName)

move to ScDPResultData

Definition at line 311 of file dptabsrc.cxx.

References ScDPDimension::getName(), i, nDupCount, pDimensions, and SetDupCount().

Referenced by ScDPDimension::CreateCloneObject().

virtual void SAL_CALL ScDPSource::addPropertyChangeListener ( const OUString &  aPropertyName,
const css::uno::Reference< css::beans::XPropertyChangeListener > &  xListener 
)
overridevirtual
void SAL_CALL ScDPSource::addRefreshListener ( const css::uno::Reference< css::util::XRefreshListener > &  l)
overridevirtual

Definition at line 425 of file dptabsrc.cxx.

virtual void SAL_CALL ScDPSource::addVetoableChangeListener ( const OUString &  PropertyName,
const css::uno::Reference< css::beans::XVetoableChangeListener > &  aListener 
)
overridevirtual
void ScDPSource::CreateRes_Impl ( )
private
void ScDPSource::disposeData ( )
private
void ScDPSource::DumpResults ( ) const

Referenced by CreateRes_Impl().

void ScDPSource::FillCalcInfo ( bool  bIsRow,
ScDPTableData::CalcInfo rInfo,
bool &  bHasAutoShow 
)
private
void ScDPSource::FillLevelList ( css::sheet::DataPilotFieldOrientation  nOrientation,
std::vector< ScDPLevel * > &  rList 
)
private
void ScDPSource::FillMemberResults ( )
private
void ScDPSource::FilterCacheByPageDimensions ( )
private
const ScDPCache * ScDPSource::GetCache ( )

Definition at line 2598 of file dptabsrc.cxx.

References GetData.

Referenced by CreateRes_Impl(), ScDPMembers::getByIndex(), and ScDPMember::IsNamedItem().

void ScDPSource::GetCategoryDimensionIndices ( std::unordered_set< sal_Int32 > &  rCatDims)
private

Compile a list of dimension indices that are either, column, row or page dimensions (i.e.

all but data dimensions).

Definition at line 661 of file dptabsrc.cxx.

References maColDims, maPageDims, and maRowDims.

Referenced by FilterCacheByPageDimensions(), and getDrillDownData().

ScDPTableData* ScDPSource::GetData ( )
inline
const ScDPTableData* ScDPSource::GetData ( ) const
inline

Definition at line 144 of file dptabsrc.hxx.

References pData.

OUString ScDPSource::getDataDescription ( )
private

Definition at line 476 of file dptabsrc.cxx.

References CreateRes_Impl(), pResData, and SUBTOTAL_FUNC_NONE.

Referenced by getPropertyValue().

ScDPDimension * ScDPSource::GetDataDimension ( sal_Int32  nIndex)
sal_Int32 ScDPSource::GetDataDimensionCount ( ) const

Definition at line 141 of file dptabsrc.cxx.

References maDataDims.

Referenced by ScDPLevel::EvaluateSortOrder(), and ScDPMembers::ScDPMembers().

OUString ScDPSource::GetDataDimName ( sal_Int32  nIndex)
sheet::DataPilotFieldOrientation ScDPSource::GetDataLayoutOrientation ( )

Definition at line 282 of file dptabsrc.cxx.

References ScDPTableData::GetColumnCount(), GetOrientation(), and pData.

Referenced by CreateRes_Impl().

uno::Reference< container::XNameAccess > SAL_CALL ScDPSource::getDimensions ( )
overridevirtual

Definition at line 301 of file dptabsrc.cxx.

References GetDimensionsObject().

ScDPDimensions * ScDPSource::GetDimensionsObject ( )
Sequence< Sequence< Any > > SAL_CALL ScDPSource::getDrillDownData ( const css::uno::Sequence< css::sheet::DataPilotFieldFilter > &  aFilters)
overridevirtual
sal_Int32 ScDPSource::GetDupCount ( ) const
inline

Definition at line 168 of file dptabsrc.hxx.

References nDupCount.

Referenced by ScDPDimensions::CountChanged(), and ScDPDimensions::ScDPDimensions().

uno::Sequence< double > ScDPSource::getFilteredResults ( const css::uno::Sequence< css::sheet::DataPilotFieldFilter > &  aFilters)
overridevirtual
const std::optional< OUString > & ScDPSource::GetGrandTotalName ( ) const

Definition at line 119 of file dptabsrc.cxx.

References mpGrandTotalName.

Referenced by ScDPResultMember::FillMemberResults().

virtual OUString SAL_CALL ScDPSource::getImplementationName ( )
overridevirtual
const ScDPItemData * ScDPSource::GetItemDataById ( sal_Int32  nDim,
sal_Int32  nId 
)
const uno::Sequence< sheet::MemberResult > * ScDPSource::GetMemberResults ( const ScDPLevel pLevel)

Definition at line 1045 of file dptabsrc.cxx.

References aColLevelList, aRowLevelList, FillMemberResults(), i, pColResults, and pRowResults.

Referenced by ScDPLevel::getResults().

sheet::DataPilotFieldOrientation ScDPSource::GetOrientation ( sal_Int32  nColumn)
sal_Int32 ScDPSource::GetPosition ( sal_Int32  nColumn)

Definition at line 164 of file dptabsrc.cxx.

References maColDims, maDataDims, maPageDims, and maRowDims.

Referenced by ScDPDimension::getPropertyValue().

uno::Reference< beans::XPropertySetInfo > SAL_CALL ScDPSource::getPropertySetInfo ( )
overridevirtual
uno::Any SAL_CALL ScDPSource::getPropertyValue ( const OUString &  PropertyName)
overridevirtual
uno::Sequence< uno::Sequence< sheet::DataResult > > SAL_CALL ScDPSource::getResults ( )
overridevirtual
sal_Int32 ScDPSource::GetSourceDim ( sal_Int32  nDim)
virtual css::uno::Sequence< OUString > SAL_CALL ScDPSource::getSupportedServiceNames ( )
overridevirtual
bool ScDPSource::IsDataLayoutDimension ( sal_Int32  nDim)

Definition at line 277 of file dptabsrc.cxx.

References ScDPTableData::GetColumnCount(), and pData.

Referenced by ScDPMembers::getByIndex(), and ScDPMembers::ScDPMembers().

bool ScDPSource::IsDateDimension ( sal_Int32  nDim)
void SAL_CALL ScDPSource::refresh ( )
overridevirtual

Definition at line 420 of file dptabsrc.cxx.

References disposeData().

virtual void SAL_CALL ScDPSource::removePropertyChangeListener ( const OUString &  aPropertyName,
const css::uno::Reference< css::beans::XPropertyChangeListener > &  aListener 
)
overridevirtual
void SAL_CALL ScDPSource::removeRefreshListener ( const css::uno::Reference< css::util::XRefreshListener > &  l)
overridevirtual

Definition at line 430 of file dptabsrc.cxx.

virtual void SAL_CALL ScDPSource::removeVetoableChangeListener ( const OUString &  PropertyName,
const css::uno::Reference< css::beans::XVetoableChangeListener > &  aListener 
)
overridevirtual
void ScDPSource::SetDupCount ( tools::Long  nNew)
private

Definition at line 306 of file dptabsrc.cxx.

References nDupCount.

Referenced by AddDuplicated(), and disposeData().

void ScDPSource::setIgnoreEmptyRows ( bool  bSet)
private

???

Definition at line 492 of file dptabsrc.cxx.

References bIgnoreEmptyRows, bRepeatIfEmpty, pData, and ScDPTableData::SetEmptyFlags().

Referenced by setPropertyValue().

void ScDPSource::SetOrientation ( sal_Int32  nColumn,
css::sheet::DataPilotFieldOrientation  nNew 
)

Definition at line 243 of file dptabsrc.cxx.

References maColDims, maDataDims, maPageDims, and maRowDims.

Referenced by CreateRes_Impl(), and ScDPDimension::setPropertyValue().

void SAL_CALL ScDPSource::setPropertyValue ( const OUString &  aPropertyName,
const css::uno::Any &  aValue 
)
overridevirtual
void ScDPSource::setRepeatIfEmpty ( bool  bSet)
private

Definition at line 498 of file dptabsrc.cxx.

References bIgnoreEmptyRows, bRepeatIfEmpty, pData, and ScDPTableData::SetEmptyFlags().

Referenced by setPropertyValue().

bool ScDPSource::SubTotalAllowed ( sal_Int32  nColumn)

Definition at line 232 of file dptabsrc.cxx.

References maColDims, and maRowDims.

Referenced by ScDPLevel::getSubTotals().

virtual sal_Bool SAL_CALL ScDPSource::supportsService ( const OUString &  ServiceName)
overridevirtual

Member Data Documentation

std::vector<ScDPLevel*> ScDPSource::aColLevelList
private

Definition at line 106 of file dptabsrc.hxx.

Referenced by disposeData(), FillMemberResults(), and GetMemberResults().

std::vector<ScDPLevel*> ScDPSource::aRowLevelList
private

Definition at line 107 of file dptabsrc.hxx.

Referenced by disposeData(), FillMemberResults(), and GetMemberResults().

bool ScDPSource::bColumnGrand
private

Definition at line 93 of file dptabsrc.hxx.

Referenced by CreateRes_Impl(), getPropertyValue(), and setPropertyValue().

bool ScDPSource::bIgnoreEmptyRows
private

Definition at line 95 of file dptabsrc.hxx.

Referenced by getPropertyValue(), ScDPSource(), setIgnoreEmptyRows(), and setRepeatIfEmpty().

bool ScDPSource::bPageFiltered
private

Definition at line 109 of file dptabsrc.hxx.

Referenced by disposeData(), and FilterCacheByPageDimensions().

bool ScDPSource::bRepeatIfEmpty
private

Definition at line 96 of file dptabsrc.hxx.

Referenced by getPropertyValue(), ScDPSource(), setIgnoreEmptyRows(), and setRepeatIfEmpty().

bool ScDPSource::bResultOverflow
private

Definition at line 108 of file dptabsrc.hxx.

Referenced by CreateRes_Impl(), disposeData(), FillMemberResults(), and getResults().

bool ScDPSource::bRowGrand
private

Definition at line 94 of file dptabsrc.hxx.

Referenced by CreateRes_Impl(), getPropertyValue(), and setPropertyValue().

std::vector<sal_Int32> ScDPSource::maColDims
private
std::vector<sal_Int32> ScDPSource::maDataDims
private
std::vector<sal_Int32> ScDPSource::maPageDims
private
ScDPResultTree ScDPSource::maResFilterSet
private

Definition at line 91 of file dptabsrc.hxx.

Referenced by disposeData(), getFilteredResults(), and getResults().

std::vector<sal_Int32> ScDPSource::maRowDims
private
std::optional<OUString> ScDPSource::mpGrandTotalName
private

Definition at line 111 of file dptabsrc.hxx.

Referenced by GetGrandTotalName(), getPropertyValue(), and setPropertyValue().

sal_Int32 ScDPSource::nDupCount
private

Definition at line 98 of file dptabsrc.hxx.

Referenced by AddDuplicated(), GetDupCount(), and SetDupCount().

std::unique_ptr<ScDPResultMember> ScDPSource::pColResRoot
private
std::unique_ptr<css::uno::Sequence<css::sheet::MemberResult>[]> ScDPSource::pColResults
private

Definition at line 104 of file dptabsrc.hxx.

Referenced by disposeData(), FillMemberResults(), GetMemberResults(), and ~ScDPSource().

ScDPTableData* ScDPSource::pData
private
rtl::Reference<ScDPDimensions> ScDPSource::pDimensions
private

Definition at line 84 of file dptabsrc.hxx.

Referenced by AddDuplicated(), disposeData(), GetDimensionsObject(), and GetSourceDim().

std::unique_ptr<ScDPResultData> ScDPSource::pResData
private
std::unique_ptr<ScDPResultMember> ScDPSource::pRowResRoot
private
std::unique_ptr<css::uno::Sequence<css::sheet::MemberResult>[]> ScDPSource::pRowResults
private

Definition at line 105 of file dptabsrc.hxx.

Referenced by disposeData(), FillMemberResults(), GetMemberResults(), and ~ScDPSource().


The documentation for this class was generated from the following files: