28#include <mdds/flat_segment_tree.hpp>
33#include <unordered_set>
134 rtl_uString* InternString(
size_t nDim,
const OUString& rStr );
141 static sal_uInt32 GetLocaleIndependentFormat(
SvNumberFormatter& rFormatter, sal_uInt32 nNumFormat );
142 static OUString GetLocaleIndependentFormattedNumberString(
double fValue );
143 static OUString GetLocaleIndependentFormattedString(
double fValue,
SvNumberFormatter& rFormatter, sal_uInt32 nNumFormat );
150 void GetGroupDimMemberIds(
tools::Long nDim, std::vector<SCROW>& rIds)
const;
151 void ClearGroupFields();
152 void ClearAllFields();
165 SCCOL GetDimensionIndex(std::u16string_view sName)
const;
166 sal_uInt32 GetNumberFormat(
tools::Long nDim )
const;
179 SCROW GetRowCount()
const;
186 SCROW GetDataSize()
const;
187 SCROW GetItemDataId( sal_uInt16 nDim,
SCROW nRow,
bool bRepeatIfEmpty )
const;
188 OUString GetDimensionName(std::vector<OUString>::size_type nDim)
const;
189 bool IsRowEmpty(
SCROW nRow)
const;
197 size_t GetFieldCount()
const;
198 size_t GetGroupFieldCount()
const;
Interface for connecting to database source.
virtual OUString getColumnLabel(tools::Long nCol) const =0
virtual tools::Long getColumnCount() const =0
virtual void getValue(tools::Long nCol, ScDPItemData &rData, SvNumFormatType &rNumType) const =0
This class represents the cached data part of the datapilot cache table implementation.
const ScDPCache & operator=(const ScDPCache &)=delete
GroupFieldsType maGroupFields
o3tl::sorted_vector< ScDPObject * > ScDPObjectSet
std::vector< OUString > maLabelNames
ScDPCache(const ScDPCache &)=delete
std::unordered_set< OUString > StringSetType
std::vector< SCROW > IndexArrayType
std::vector< StringSetType > maStringPools
std::vector< std::unique_ptr< Field > > FieldsType
mdds::flat_segment_tree< SCROW, bool > EmptyRowsType
EmptyRowsType maEmptyRows
ScDPObjectSet maRefObjects
All pivot table objects that references this cache.
std::vector< std::unique_ptr< GroupItems > > GroupFieldsType
std::vector< ScDPItemData > ScDPItemDataVec
When assigning a string value, you can also assign an interned string whose life-cycle is managed by ...
void Clear(EHistoryType eHistory)
Field(const Field &)=delete
const Field & operator=(const Field &)=delete
IndexArrayType maData
Original source data represented as indices to the unique value list.
ScDPItemDataVec maItems
Unique values in the field, stored in ascending order.
std::unique_ptr< GroupItems > mpGroup
Optional items for grouped field.
const GroupItems & operator=(const GroupItems &)=delete
GroupItems(const GroupItems &)=delete