LibreOffice Module chart2 (master) 1
Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
chart::InternalDataProvider Class Referencefinal

Data provider that handles data internally. More...

#include <InternalDataProvider.hxx>

Inheritance diagram for chart::InternalDataProvider:
[legend]
Collaboration diagram for chart::InternalDataProvider:
[legend]

Public Member Functions

 InternalDataProvider ()
 
 InternalDataProvider (const rtl::Reference< ::chart::ChartModel > &xChartDoc, bool bConnectToModel, bool bDefaultDataInColumns)
 
 InternalDataProvider (const InternalDataProvider &rOther)
 
virtual ~InternalDataProvider () override
 
virtual OUString SAL_CALL getImplementationName () override
 declare XServiceInfo methods More...
 
virtual sal_Bool SAL_CALL supportsService (const OUString &ServiceName) override
 
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames () override
 
virtual sal_Bool SAL_CALL hasDataByRangeRepresentation (const OUString &aRange) override
 
virtual css::uno::Sequence< css::uno::Any > SAL_CALL getDataByRangeRepresentation (const OUString &aRange) override
 
virtual void SAL_CALL setDataByRangeRepresentation (const OUString &aRange, const css::uno::Sequence< css::uno::Any > &aNewData) override
 
virtual void SAL_CALL insertSequence (::sal_Int32 nAfterIndex) override
 
virtual void SAL_CALL deleteSequence (::sal_Int32 nAtIndex) override
 
virtual void SAL_CALL appendSequence () override
 
virtual void SAL_CALL insertComplexCategoryLevel (::sal_Int32 nLevel) override
 
virtual void SAL_CALL deleteComplexCategoryLevel (::sal_Int32 nLevel) override
 
virtual void SAL_CALL insertDataPointForAllSequences (::sal_Int32 nAfterIndex) override
 
virtual void SAL_CALL deleteDataPointForAllSequences (::sal_Int32 nAtIndex) override
 
virtual void SAL_CALL swapDataPointWithNextOneForAllSequences (::sal_Int32 nAtIndex) override
 
virtual void SAL_CALL registerDataSequenceForChanges (const css::uno::Reference< css::chart2::data::XDataSequence > &xSeq) override
 
virtual sal_Bool SAL_CALL createDataSourcePossible (const css::uno::Sequence< css::beans::PropertyValue > &aArguments) override
 
virtual css::uno::Reference< css::chart2::data::XDataSource > SAL_CALL createDataSource (const css::uno::Sequence< css::beans::PropertyValue > &aArguments) override
 
virtual css::uno::Sequence< css::beans::PropertyValue > SAL_CALL detectArguments (const css::uno::Reference< css::chart2::data::XDataSource > &xDataSource) override
 
virtual sal_Bool SAL_CALL createDataSequenceByRangeRepresentationPossible (const OUString &aRangeRepresentation) override
 
virtual css::uno::Reference< css::chart2::data::XDataSequence > SAL_CALL createDataSequenceByRangeRepresentation (const OUString &aRangeRepresentation) override
 
virtual css::uno::Reference< css::chart2::data::XDataSequence > SAL_CALL createDataSequenceByValueArray (const OUString &aRole, const OUString &aRangeRepresentation, const OUString &aRoleQualifier) override
 
virtual css::uno::Reference< css::sheet::XRangeSelection > SAL_CALL getRangeSelection () override
 
virtual OUString SAL_CALL convertRangeToXML (const OUString &aRangeRepresentation) override
 
virtual OUString SAL_CALL convertRangeFromXML (const OUString &aXMLRange) override
 
virtual css::uno::Sequence< double > SAL_CALL getDateCategories () override
 
virtual void SAL_CALL setDateCategories (const css::uno::Sequence< double > &rDates) override
 
virtual css::uno::Sequence< css::uno::Sequence< css::uno::Any > > SAL_CALL getAnyRowDescriptions () override
 
virtual void SAL_CALL setAnyRowDescriptions (const css::uno::Sequence< css::uno::Sequence< css::uno::Any > > &aRowDescriptions) override
 
virtual css::uno::Sequence< css::uno::Sequence< css::uno::Any > > SAL_CALL getAnyColumnDescriptions () override
 
virtual void SAL_CALL setAnyColumnDescriptions (const css::uno::Sequence< css::uno::Sequence< css::uno::Any > > &aColumnDescriptions) override
 
virtual css::uno::Sequence< css::uno::Sequence< OUString > > SAL_CALL getComplexRowDescriptions () override
 
virtual void SAL_CALL setComplexRowDescriptions (const css::uno::Sequence< css::uno::Sequence< OUString > > &aRowDescriptions) override
 
virtual css::uno::Sequence< css::uno::Sequence< OUString > > SAL_CALL getComplexColumnDescriptions () override
 
virtual void SAL_CALL setComplexColumnDescriptions (const css::uno::Sequence< css::uno::Sequence< OUString > > &aColumnDescriptions) override
 
virtual css::uno::Sequence< css::uno::Sequence< double > > SAL_CALL getData () override
 
virtual void SAL_CALL setData (const css::uno::Sequence< css::uno::Sequence< double > > &aData) override
 
virtual css::uno::Sequence< OUString > SAL_CALL getRowDescriptions () override
 
virtual void SAL_CALL setRowDescriptions (const css::uno::Sequence< OUString > &aRowDescriptions) override
 
virtual css::uno::Sequence< OUString > SAL_CALL getColumnDescriptions () override
 
virtual void SAL_CALL setColumnDescriptions (const css::uno::Sequence< OUString > &aColumnDescriptions) override
 
virtual void SAL_CALL addChartDataChangeEventListener (const css::uno::Reference< css::chart::XChartDataChangeEventListener > &aListener) override
 
virtual void SAL_CALL removeChartDataChangeEventListener (const css::uno::Reference< css::chart::XChartDataChangeEventListener > &aListener) override
 
virtual double SAL_CALL getNotANumber () override
 
virtual sal_Bool SAL_CALL isNotANumber (double nNumber) override
 
virtual css::uno::Reference< css::util::XCloneable > SAL_CALL createClone () override
 
virtual void SAL_CALL initialize (const css::uno::Sequence< css::uno::Any > &aArguments) override
 

Private Types

typedef std::multimap< OUString, css::uno::WeakReference< css::chart2::data::XDataSequence > > tSequenceMap
 
typedef std::pair< tSequenceMap::iterator, tSequenceMap::iterator > tSequenceMapRange
 

Private Member Functions

void addDataSequenceToMap (const OUString &rRangeRepresentation, const css::uno::Reference< css::chart2::data::XDataSequence > &xSequence)
 
css::uno::Reference< css::chart2::data::XDataSequence > createDataSequenceAndAddToMap (const OUString &rRangeRepresentation, const OUString &rRole)
 
rtl::Reference< UncachedDataSequencecreateDataSequenceAndAddToMap (const OUString &rRangeRepresentation)
 
rtl::Reference< UncachedDataSequencecreateDataSequenceFromArray (const OUString &rArrayStr, std::u16string_view rRole, std::u16string_view rRoleQualifier)
 
void deleteMapReferences (const OUString &rRangeRepresentation)
 
void adaptMapReferences (const OUString &rOldRangeRepresentation, const OUString &rNewRangeRepresentation)
 
void increaseMapReferences (sal_Int32 nBegin, sal_Int32 nEnd)
 
void decreaseMapReferences (sal_Int32 nBegin, sal_Int32 nEnd)
 

Private Attributes

tSequenceMap m_aSequenceMap
 cache for all sequences that have been returned. More...
 
InternalData m_aInternalData
 
bool m_bDataInColumns
 

Detailed Description

Data provider that handles data internally.

This is used for charts with their own data.

The format for single ranges is "categories|label n|n" where n is a non-negative number. Meaning return all categories, the label of sequence n, or the data of sequence n.

The format for a complete range is "all". (Do we need more than that?)

Definition at line 67 of file InternalDataProvider.hxx.

Member Typedef Documentation

◆ tSequenceMap

typedef std::multimap< OUString, css::uno::WeakReference< css::chart2::data::XDataSequence > > chart::InternalDataProvider::tSequenceMap
private

Definition at line 204 of file InternalDataProvider.hxx.

◆ tSequenceMapRange

typedef std::pair< tSequenceMap::iterator, tSequenceMap::iterator > chart::InternalDataProvider::tSequenceMapRange
private

Definition at line 205 of file InternalDataProvider.hxx.

Constructor & Destructor Documentation

◆ InternalDataProvider() [1/3]

chart::InternalDataProvider::InternalDataProvider ( )
explicit

Definition at line 302 of file InternalDataProvider.cxx.

Referenced by createClone().

◆ InternalDataProvider() [2/3]

chart::InternalDataProvider::InternalDataProvider ( const rtl::Reference< ::chart::ChartModel > &  xChartDoc,
bool  bConnectToModel,
bool  bDefaultDataInColumns 
)
explicit

◆ InternalDataProvider() [3/3]

chart::InternalDataProvider::InternalDataProvider ( const InternalDataProvider rOther)
explicit

Definition at line 399 of file InternalDataProvider.cxx.

◆ ~InternalDataProvider()

chart::InternalDataProvider::~InternalDataProvider ( )
overridevirtual

Definition at line 406 of file InternalDataProvider.cxx.

Member Function Documentation

◆ adaptMapReferences()

void chart::InternalDataProvider::adaptMapReferences ( const OUString &  rOldRangeRepresentation,
const OUString &  rNewRangeRepresentation 
)
private

Definition at line 436 of file InternalDataProvider.cxx.

References m_aSequenceMap.

Referenced by decreaseMapReferences(), and increaseMapReferences().

◆ addChartDataChangeEventListener()

void SAL_CALL chart::InternalDataProvider::addChartDataChangeEventListener ( const css::uno::Reference< css::chart::XChartDataChangeEventListener > &  aListener)
overridevirtual

Definition at line 1493 of file InternalDataProvider.cxx.

◆ addDataSequenceToMap()

void chart::InternalDataProvider::addDataSequenceToMap ( const OUString &  rRangeRepresentation,
const css::uno::Reference< css::chart2::data::XDataSequence > &  xSequence 
)
private

◆ appendSequence()

void SAL_CALL chart::InternalDataProvider::appendSequence ( )
overridevirtual

◆ convertRangeFromXML()

OUString SAL_CALL chart::InternalDataProvider::convertRangeFromXML ( const OUString &  aXMLRange)
overridevirtual

◆ convertRangeToXML()

OUString SAL_CALL chart::InternalDataProvider::convertRangeToXML ( const OUString &  aRangeRepresentation)
overridevirtual

◆ createClone()

Reference< util::XCloneable > SAL_CALL chart::InternalDataProvider::createClone ( )
overridevirtual

Definition at line 1522 of file InternalDataProvider.cxx.

References InternalDataProvider().

◆ createDataSequenceAndAddToMap() [1/2]

rtl::Reference< UncachedDataSequence > chart::InternalDataProvider::createDataSequenceAndAddToMap ( const OUString &  rRangeRepresentation)
private

◆ createDataSequenceAndAddToMap() [2/2]

Reference< chart2::data::XDataSequence > chart::InternalDataProvider::createDataSequenceAndAddToMap ( const OUString &  rRangeRepresentation,
const OUString &  rRole 
)
private

◆ createDataSequenceByRangeRepresentation()

Reference< chart2::data::XDataSequence > SAL_CALL chart::InternalDataProvider::createDataSequenceByRangeRepresentation ( const OUString &  aRangeRepresentation)
overridevirtual

◆ createDataSequenceByRangeRepresentationPossible()

sal_Bool SAL_CALL chart::InternalDataProvider::createDataSequenceByRangeRepresentationPossible ( const OUString &  aRangeRepresentation)
overridevirtual

Definition at line 810 of file InternalDataProvider.cxx.

◆ createDataSequenceByValueArray()

Reference< chart2::data::XDataSequence > SAL_CALL chart::InternalDataProvider::createDataSequenceByValueArray ( const OUString &  aRole,
const OUString &  aRangeRepresentation,
const OUString &  aRoleQualifier 
)
overridevirtual

Definition at line 848 of file InternalDataProvider.cxx.

References createDataSequenceFromArray().

◆ createDataSequenceFromArray()

rtl::Reference< UncachedDataSequence > chart::InternalDataProvider::createDataSequenceFromArray ( const OUString &  rArrayStr,
std::u16string_view  rRole,
std::u16string_view  rRoleQualifier 
)
private

◆ createDataSource()

Reference< chart2::data::XDataSource > SAL_CALL chart::InternalDataProvider::createDataSource ( const css::uno::Sequence< css::beans::PropertyValue > &  aArguments)
overridevirtual

◆ createDataSourcePossible()

sal_Bool SAL_CALL chart::InternalDataProvider::createDataSourcePossible ( const css::uno::Sequence< css::beans::PropertyValue > &  aArguments)
overridevirtual

Definition at line 677 of file InternalDataProvider.cxx.

◆ decreaseMapReferences()

void chart::InternalDataProvider::decreaseMapReferences ( sal_Int32  nBegin,
sal_Int32  nEnd 
)
private

Definition at line 471 of file InternalDataProvider.cxx.

References adaptMapReferences(), and nIndex.

Referenced by deleteSequence().

◆ deleteComplexCategoryLevel()

void SAL_CALL chart::InternalDataProvider::deleteComplexCategoryLevel ( ::sal_Int32  nLevel)
overridevirtual

◆ deleteDataPointForAllSequences()

void SAL_CALL chart::InternalDataProvider::deleteDataPointForAllSequences ( ::sal_Int32  nAtIndex)
overridevirtual

◆ deleteMapReferences()

void chart::InternalDataProvider::deleteMapReferences ( const OUString &  rRangeRepresentation)
private

Definition at line 418 of file InternalDataProvider.cxx.

References m_aSequenceMap.

Referenced by deleteSequence().

◆ deleteSequence()

void SAL_CALL chart::InternalDataProvider::deleteSequence ( ::sal_Int32  nAtIndex)
overridevirtual

◆ detectArguments()

Sequence< beans::PropertyValue > SAL_CALL chart::InternalDataProvider::detectArguments ( const css::uno::Reference< css::chart2::data::XDataSource > &  xDataSource)
overridevirtual

Definition at line 785 of file InternalDataProvider.cxx.

References aArguments, and m_bDataInColumns.

◆ getAnyColumnDescriptions()

Sequence< Sequence< uno::Any > > SAL_CALL chart::InternalDataProvider::getAnyColumnDescriptions ( )
overridevirtual

◆ getAnyRowDescriptions()

Sequence< Sequence< uno::Any > > SAL_CALL chart::InternalDataProvider::getAnyRowDescriptions ( )
overridevirtual

◆ getColumnDescriptions()

Sequence< OUString > SAL_CALL chart::InternalDataProvider::getColumnDescriptions ( )
overridevirtual

◆ getComplexColumnDescriptions()

Sequence< Sequence< OUString > > SAL_CALL chart::InternalDataProvider::getComplexColumnDescriptions ( )
overridevirtual

◆ getComplexRowDescriptions()

Sequence< Sequence< OUString > > SAL_CALL chart::InternalDataProvider::getComplexRowDescriptions ( )
overridevirtual

◆ getData()

Sequence< Sequence< double > > SAL_CALL chart::InternalDataProvider::getData ( )
overridevirtual

Definition at line 1452 of file InternalDataProvider.cxx.

References chart::InternalData::getData(), and m_aInternalData.

◆ getDataByRangeRepresentation()

Sequence< uno::Any > SAL_CALL chart::InternalDataProvider::getDataByRangeRepresentation ( const OUString &  aRange)
overridevirtual

◆ getDateCategories()

Sequence< double > SAL_CALL chart::InternalDataProvider::getDateCategories ( )
overridevirtual

◆ getImplementationName()

OUString SAL_CALL chart::InternalDataProvider::getImplementationName ( )
overridevirtual

declare XServiceInfo methods

Definition at line 1527 of file InternalDataProvider.cxx.

◆ getNotANumber()

double SAL_CALL chart::InternalDataProvider::getNotANumber ( )
overridevirtual

Definition at line 1503 of file InternalDataProvider.cxx.

◆ getRangeSelection()

Reference< sheet::XRangeSelection > SAL_CALL chart::InternalDataProvider::getRangeSelection ( )
overridevirtual

Definition at line 854 of file InternalDataProvider.cxx.

◆ getRowDescriptions()

Sequence< OUString > SAL_CALL chart::InternalDataProvider::getRowDescriptions ( )
overridevirtual

◆ getSupportedServiceNames()

css::uno::Sequence< OUString > SAL_CALL chart::InternalDataProvider::getSupportedServiceNames ( )
overridevirtual

Definition at line 1538 of file InternalDataProvider.cxx.

◆ hasDataByRangeRepresentation()

sal_Bool SAL_CALL chart::InternalDataProvider::hasDataByRangeRepresentation ( const OUString &  aRange)
overridevirtual

◆ increaseMapReferences()

void chart::InternalDataProvider::increaseMapReferences ( sal_Int32  nBegin,
sal_Int32  nEnd 
)
private

Definition at line 459 of file InternalDataProvider.cxx.

References adaptMapReferences(), and nIndex.

Referenced by insertSequence().

◆ initialize()

void SAL_CALL chart::InternalDataProvider::initialize ( const css::uno::Sequence< css::uno::Any > &  aArguments)
overridevirtual

◆ insertComplexCategoryLevel()

void SAL_CALL chart::InternalDataProvider::insertComplexCategoryLevel ( ::sal_Int32  nLevel)
overridevirtual

◆ insertDataPointForAllSequences()

void SAL_CALL chart::InternalDataProvider::insertDataPointForAllSequences ( ::sal_Int32  nAfterIndex)
overridevirtual

◆ insertSequence()

void SAL_CALL chart::InternalDataProvider::insertSequence ( ::sal_Int32  nAfterIndex)
overridevirtual

◆ isNotANumber()

sal_Bool SAL_CALL chart::InternalDataProvider::isNotANumber ( double  nNumber)
overridevirtual

Definition at line 1508 of file InternalDataProvider.cxx.

◆ registerDataSequenceForChanges()

void SAL_CALL chart::InternalDataProvider::registerDataSequenceForChanges ( const css::uno::Reference< css::chart2::data::XDataSequence > &  xSeq)
overridevirtual

Definition at line 1156 of file InternalDataProvider.cxx.

References addDataSequenceToMap().

◆ removeChartDataChangeEventListener()

void SAL_CALL chart::InternalDataProvider::removeChartDataChangeEventListener ( const css::uno::Reference< css::chart::XChartDataChangeEventListener > &  aListener)
overridevirtual

Definition at line 1498 of file InternalDataProvider.cxx.

◆ setAnyColumnDescriptions()

void SAL_CALL chart::InternalDataProvider::setAnyColumnDescriptions ( const css::uno::Sequence< css::uno::Sequence< css::uno::Any > > &  aColumnDescriptions)
overridevirtual

◆ setAnyRowDescriptions()

void SAL_CALL chart::InternalDataProvider::setAnyRowDescriptions ( const css::uno::Sequence< css::uno::Sequence< css::uno::Any > > &  aRowDescriptions)
overridevirtual

◆ setColumnDescriptions()

void SAL_CALL chart::InternalDataProvider::setColumnDescriptions ( const css::uno::Sequence< OUString > &  aColumnDescriptions)
overridevirtual

◆ setComplexColumnDescriptions()

void SAL_CALL chart::InternalDataProvider::setComplexColumnDescriptions ( const css::uno::Sequence< css::uno::Sequence< OUString > > &  aColumnDescriptions)
overridevirtual

◆ setComplexRowDescriptions()

void SAL_CALL chart::InternalDataProvider::setComplexRowDescriptions ( const css::uno::Sequence< css::uno::Sequence< OUString > > &  aRowDescriptions)
overridevirtual

◆ setData()

void SAL_CALL chart::InternalDataProvider::setData ( const css::uno::Sequence< css::uno::Sequence< double > > &  aData)
overridevirtual

Definition at line 1457 of file InternalDataProvider.cxx.

References m_aInternalData, and chart::InternalData::setData().

◆ setDataByRangeRepresentation()

void SAL_CALL chart::InternalDataProvider::setDataByRangeRepresentation ( const OUString &  aRange,
const css::uno::Sequence< css::uno::Any > &  aNewData 
)
overridevirtual

◆ setDateCategories()

void SAL_CALL chart::InternalDataProvider::setDateCategories ( const css::uno::Sequence< double > &  rDates)
overridevirtual

◆ setRowDescriptions()

void SAL_CALL chart::InternalDataProvider::setRowDescriptions ( const css::uno::Sequence< OUString > &  aRowDescriptions)
overridevirtual

◆ supportsService()

sal_Bool SAL_CALL chart::InternalDataProvider::supportsService ( const OUString &  ServiceName)
overridevirtual

Definition at line 1533 of file InternalDataProvider.cxx.

References cppu::supportsService().

◆ swapDataPointWithNextOneForAllSequences()

void SAL_CALL chart::InternalDataProvider::swapDataPointWithNextOneForAllSequences ( ::sal_Int32  nAtIndex)
overridevirtual

Member Data Documentation

◆ m_aInternalData

InternalData chart::InternalDataProvider::m_aInternalData
private

◆ m_aSequenceMap

tSequenceMap chart::InternalDataProvider::m_aSequenceMap
private

cache for all sequences that have been returned.

If the range-representation of a sequence changes and it is still referred to by some component (weak reference is valid), the range will be adapted.

Definition at line 213 of file InternalDataProvider.hxx.

Referenced by adaptMapReferences(), addDataSequenceToMap(), deleteComplexCategoryLevel(), deleteDataPointForAllSequences(), deleteMapReferences(), insertComplexCategoryLevel(), insertDataPointForAllSequences(), and swapDataPointWithNextOneForAllSequences().

◆ m_bDataInColumns

bool chart::InternalDataProvider::m_bDataInColumns
private

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