Views
Charts Package API Reference Guide
Product Documentation:
Views Documentation Home
List of all members | Public Member Functions | Protected Member Functions
IlvCombinedChartDataSet Class Referenceabstract

Abstract base class for combined data sets. More...

#include <ilviews/charts/data.h>

Inheritance diagram for IlvCombinedChartDataSet:
IlvChartDataSet IlvValueInterface IlvAddChartDataSet IlvHiLoChartDataSet IlvPieChartDataSet IlvStacked100ChartDataSet

Public Member Functions

void addDataSet (IlvChartDataSet *dataSet)
 Adds a component data set to the combined data set. More...
 
virtual IlUInt getDataCount () const
 Returns the number of considered data points. More...
 
IlvChartDataSetgetDataSet (IlUInt index=0) const
 Returns a component data set of the combined data set. More...
 
IlUInt getDataSetIndex (const IlvChartDataSet *dataSet) const
 Returns the index of a component data set in the combined data set. More...
 
IlUInt getDataSetsCount () const
 Returns the number of component data sets. More...
 
virtual IlUInt getIndexInCombined (const IlvChartDataSet *dataSet, IlUInt indexInDataSet) const
 Maps a point index in a component data set to an index in the combined data set. More...
 
virtual IlUInt getIndexInDataSet (IlvChartDataSet *&dataSet, IlUInt indexInCombined) const
 Maps a point index in the current combined data set to an index in a component data set. More...
 
virtual const IlvCoordIntervalgetXRange () const
 Returns the abscissa bounding values of the managed data. More...
 
virtual const IlvCoordIntervalgetYRange () const
 Returns the ordinate bounding values of the managed data. More...
 
virtual void insertDataSet (IlvChartDataSet *dataSet, IlUInt index=0)
 Inserts a component data set into a combined data set. More...
 
virtual IlBoolean isIncreasingOnX () const
 Indicates whether the managed data items have increasing abscissa values. More...
 
virtual void removeDataSet (IlUInt index=0)
 Removes a component data set from the combined data set. More...
 
void removeDataSets ()
 Removes all the component data sets from the combined data set. More...
 
virtual IlBoolean retrieveDataSetPoint (IlvChartDataSet *&dataSet, IlUInt ptidx, const IlvDoublePoint &point, IlUInt &dataSetPointIndex, IlvDoublePoint &dataSetPoint) const =0
 Retrieves from a data point of the current combined data set the corresponding data point of a component data set. More...
 
virtual void setDataCount (IlUInt count)
 Sets the number of considered data points from the number of data items considered in the component data sets. More...
 
virtual void setDataSet (IlvChartDataSet *dataSet, IlUInt index=0)
 Sets a component data set of the combined data set. More...
 
virtual IlBoolean setPoint (IlUInt ptidx, const IlvDoublePoint &point)
 Propagates the change made to a given data point of the combined data set to the component data sets. More...
 
virtual void updateDataCount ()
 Updates the number of considered data points. More...
 
virtual IlBoolean useDataSet (const IlvChartDataSet *dataSet) const
 Indicates whether a data set is one of the data sets that make up the combined data set. More...
 
virtual void write (IlvOutputFile &) const
 Writes the attributes of the current object in a file. More...
 
- Public Member Functions inherited from IlvChartDataSet
virtual ~IlvChartDataSet ()
 Destructor. More...
 
void addListener (IlvChartDataSetListener *listener)
 Adds a listener. More...
 
IlBoolean addPoint (const IlvDoublePoint &point, IlvChartDataPointInfo *pointInfo=0, IlBoolean copyPointInfo=IlFalse)
 Adds a represented data point (and its associated point information object if any). More...
 
IlBoolean areListenersEnabled () const
 Indicates whether the listeners are enabled. More...
 
virtual IlvChartDataSetcopy () const =0
 Creates and returns a copy of the current object. More...
 
virtual void dataAllPointsRemoved ()
 Performs the necessary updates when all data points are removed. More...
 
virtual void dataPointAdded (IlUInt position)
 Performs the necessary updates when a new data point is added. More...
 
virtual void dataPointChanged (IlUInt ptidx, IlBoolean beforeChange)
 Performs the necessary updates when a data point is changed. More...
 
virtual void dataPointRemoved (IlUInt ptidx)
 Performs the necessary updates when a data point is removed. More...
 
void enableListeners (IlBoolean b)
 Specifies whether the listeners should be enabled. More...
 
virtual void endBatch ()
 Specifies the end of a set of modifications. More...
 
IlUInt getAddMaxIdx () const
 Returns the maximum index of the data points that have been added between the first call of the startBatch() method and the last call of the endBatch() method. More...
 
IlUInt getAddMinIdx () const
 Returns the minimum index of the data points that have been added between the first call of the startBatch() method and the last call of the endBatch() method. More...
 
void getBoundingValues (IlvCoordInterval &xRange, IlvCoordInterval &yRange) const
 Returns the bounding values of the managed data. More...
 
IlvChartDataSetListener *const * getListeners (IlUInt &count) const
 Returns all the listeners. More...
 
IlUInt getMaxCount () const
 Returns the maximum number of data items that can be managed. More...
 
const char * getName () const
 Returns the name of the current data set. More...
 
virtual void getPoint (IlUInt i, IlvDoublePoint &point) const =0
 Returns a represented data point. More...
 
IlvChartDataPointInfogetPointInfo (IlUInt ptidx) const
 Returns the point information associated with a data item. More...
 
IlvPointInfoCollectiongetPointInfoCollection () const
 Returns the object used to manage the point information. More...
 
IlUInt getPointInfoCount () const
 Returns the number of defined point information items. More...
 
IlvDoublePointgetPoints (IlUInt &count) const
 Returns all the represented data points. More...
 
virtual IlvDoublePointgetPointsBetween (IlUInt indexMin, IlUInt indexMax, IlUInt &count) const
 Returns some of the data points represented by the current data set. More...
 
virtual IlvDoublePointgetPointsInRange (IlUInt &count, IlUInt *&dataPointIndexes, const IlvCoordInterval &xRange, const IlvCoordInterval &yRange, IlBoolean needContinuity) const
 Returns a range of data points represented by the current data set. More...
 
virtual IlBoolean insertPoint (const IlvDoublePoint &point, IlUInt ptidx, IlvChartDataPointInfo *pointInfo=0, IlBoolean copyPointInfo=IlFalse)
 Inserts a represented data point (and its associated point information object if any). More...
 
virtual IlBoolean insertPoints (IlUInt count, const IlvDoublePoint *points, IlUInt position=IlvLastPositionIndex, IlvChartDataPointInfo *const *pInfos=0, IlBoolean copyPointInfo=IlFalse)
 Inserts several represented data points (and their associated point information objects if any). More...
 
IlBoolean isLimited () const
 Indicates whether the number of managed data items is limited. More...
 
virtual IlBoolean isRemovalAllowed () const
 Indicates whether managed data can be removed. More...
 
virtual IlBoolean isWritable () const
 Indicates whether managed data can be modified. More...
 
void lock ()
 Locks the current IlvChartDataSet object. More...
 
void removeAllPointInfo ()
 Removes all the defined point information. More...
 
virtual void removeAllPoints ()
 Removes all the represented data points (and their associated point information objects if any). More...
 
IlvChartDataSetListenerremoveListener (IlvChartDataSetListener *l)
 Removes a listener. More...
 
void removeListeners ()
 Removes all the listeners.
 
virtual IlBoolean removePointAndInfo (IlUInt ptidx)
 Removes a represented data point (and its associated point information object if any). More...
 
IlBoolean removePointInfo (IlUInt ptidx)
 Removes the point information associated with a data item. More...
 
virtual void removePointsAndInfo ()
 Removes all the represented data points (and their associated point information objects if any). More...
 
IlvOutputFilesave (IlvOutputFile &file) const
 Writes a complete description of the current object in a file. More...
 
void setMaxCount (IlUInt maxCount)
 Sets the maximum number of managed data items. More...
 
void setName (const char *name)
 Sets the name of the current data set. More...
 
IlBoolean setPointInfo (IlUInt ptidx, IlvChartDataPointInfo *pointInfo, IlBoolean copyPointInfo=IlFalse)
 Sets the point information associated with a data item. More...
 
void setPointInfoCollection (IlvPointInfoCollection *ptic)
 Sets the object used to manage the point information. More...
 
virtual void startBatch ()
 Specifies the beginning of a set of modifications. More...
 
void unLock ()
 Unlocks the current IlvChartDataSet object. More...
 

Protected Member Functions

 IlvCombinedChartDataSet ()
 Initializes a new IlvCombinedChartDataSet object.
 
 IlvCombinedChartDataSet (const IlvCombinedChartDataSet &dataSet)
 Initializes a new IlvCombinedChartDataSet object as a copy of another IlvCombinedChartDataSet. More...
 
 IlvCombinedChartDataSet (IlvInputFile &file)
 Initializes a new IlvCombinedChartDataSet object from an input file. More...
 
- Protected Member Functions inherited from IlvChartDataSet
 IlvChartDataSet (const char *name=0, IlvPointInfoCollection *pointInfoCollection=0)
 Initializes a new IlvChartDataSet object. More...
 
 IlvChartDataSet (const IlvChartDataSet &dataSet)
 Initializes a new IlvChartDataSet object as a copy of another IlvChartDataSet. More...
 
 IlvChartDataSet (IlvInputFile &file)
 Initializes a new IlvChartDataSet object from an input file. More...
 
void computeBoundingValues ()
 Computes the bounding values of the managed data. More...
 
virtual void computeMinMaxValues (IlvCoordInterval &xRange, IlvCoordInterval &yRange) const
 Computes the abscissa and ordinate bounding values of the managed data. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from IlvChartDataSet
static IlvChartDataSetLoad (IlvInputFile &file)
 Reads a data set object from a file. More...
 

Detailed Description

Abstract base class for combined data sets.

Library: ilvcharts

This is an abstract subclass of IlvChartDataSet that allows you to define a data set that is a combination of other data sets. For example, you can define a data set as the addition of any number of other data sets.

These data sets that make up the combined data set are called component data sets. The nth data point of such a combined data set will correspond to the sum of the nth data points of all the component data sets.

The data points of the combined data set are not stored. They are computed from the component data sets whenever needed.

Note
IlvCombinedChartDataSet is an abstract class. Its constructors are defined as protected since it is not possible to create an instance of this class directly.
See also
IlvChartDataSet, IlvAbstractChartData.

Constructor & Destructor Documentation

◆ IlvCombinedChartDataSet() [1/2]

IlvCombinedChartDataSet::IlvCombinedChartDataSet ( IlvInputFile file)
protected

Initializes a new IlvCombinedChartDataSet object from an input file.

Parameters
fileThe file that is read to initialize the new data set.

◆ IlvCombinedChartDataSet() [2/2]

IlvCombinedChartDataSet::IlvCombinedChartDataSet ( const IlvCombinedChartDataSet dataSet)
protected

Initializes a new IlvCombinedChartDataSet object as a copy of another IlvCombinedChartDataSet.

Initializes a new IlvCombinedChartDataSet object that is a copy of dataSet.

Parameters
dataSetThe data set that is copied to initialize the new data set.

Member Function Documentation

◆ addDataSet()

void IlvCombinedChartDataSet::addDataSet ( IlvChartDataSet dataSet)

Adds a component data set to the combined data set.

A listener is added to the new data set so that the number of data items considered in the data sets that make up the combined data set can be updated when the data of this new data set are modified.

Note
The number of data items considered in the data sets that make up the combined data set is updated by using the IlvCombinedChartDataSet::updateDataCount() method.
Parameters
dataSetThe new data set that is added to the combined data set.

◆ getDataCount()

virtual IlUInt IlvCombinedChartDataSet::getDataCount ( ) const
virtual

Returns the number of considered data points.

Returns
The number of data points considered for the current combined data set.
Note
The considered data points are not stored. They are computed on the fly whenever needed from the data points of the component data sets.

Implements IlvChartDataSet.

◆ getDataSet()

IlvChartDataSet* IlvCombinedChartDataSet::getDataSet ( IlUInt  index = 0) const

Returns a component data set of the combined data set.

Parameters
indexThe index of the data set that is returned.
Returns
A pointer to the data set at the index index (if it exists) in the collection of data sets that make up the combined data set and 0 otherwise.

◆ getDataSetIndex()

IlUInt IlvCombinedChartDataSet::getDataSetIndex ( const IlvChartDataSet dataSet) const

Returns the index of a component data set in the combined data set.

Parameters
dataSetThe component data set for which we want to get the index.
Returns
The index of the data set dataSet in the combined data set if dataSet is one of the data sets that make up the current combined data set. Otherwise, it returns IlvBadIndex.

◆ getDataSetsCount()

IlUInt IlvCombinedChartDataSet::getDataSetsCount ( ) const

Returns the number of component data sets.

Returns
The number of data sets that make up the combined data set.

◆ getIndexInCombined()

virtual IlUInt IlvCombinedChartDataSet::getIndexInCombined ( const IlvChartDataSet dataSet,
IlUInt  indexInDataSet 
) const
virtual

Maps a point index in a component data set to an index in the combined data set.

Maps the point index indexInDataSet in the data set dataSet to an index in the current combined data set.

Parameters
dataSetThe data set considered in the combined data set.
indexInDataSetThe index of the data point in the data set dataSet.
Note
The default implementation returns the same index.

Reimplemented in IlvPieChartDataSet, and IlvHiLoChartDataSet.

◆ getIndexInDataSet()

virtual IlUInt IlvCombinedChartDataSet::getIndexInDataSet ( IlvChartDataSet *&  dataSet,
IlUInt  indexInCombined 
) const
virtual

Maps a point index in the current combined data set to an index in a component data set.

Maps the point index indexInCombined in the current combined data set to an index in the corresponding data set among the data sets that make up the current combined data set.

Parameters
dataSetThis parameter is set to the corresponding data set in the combined data set.
indexInCombinedThe index of the point in the combined data set.
Note
The default implementation returns the same index and set dataSet as the first data set in the combined data set.

Reimplemented in IlvPieChartDataSet, and IlvHiLoChartDataSet.

◆ getXRange()

virtual const IlvCoordInterval& IlvCombinedChartDataSet::getXRange ( ) const
virtual

Returns the abscissa bounding values of the managed data.

Returns
The defined interval for the abscissa of the data managed by the current data set.

Reimplemented from IlvChartDataSet.

◆ getYRange()

virtual const IlvCoordInterval& IlvCombinedChartDataSet::getYRange ( ) const
virtual

Returns the ordinate bounding values of the managed data.

Returns
The defined interval for the ordinate of the data managed by the current data set.

Reimplemented from IlvChartDataSet.

◆ insertDataSet()

virtual void IlvCombinedChartDataSet::insertDataSet ( IlvChartDataSet dataSet,
IlUInt  index = 0 
)
virtual

Inserts a component data set into a combined data set.

A listener is added to the new inserted data set so that the number of data items considered in the data sets that make up the combined data set can be updated when the data of this new data set are modified.

Note
The number of data items considered in the data sets that make up the combined data set is updated using the IlvCombinedChartDataSet::updateDataCount() method.
Parameters
dataSetThe new data set that is inserted in the combined data set.
indexThe index at which the new data set is inserted.

◆ isIncreasingOnX()

virtual IlBoolean IlvCombinedChartDataSet::isIncreasingOnX ( ) const
virtual

Indicates whether the managed data items have increasing abscissa values.

Returns
IlTrue if all the data sets that make up the current combined data set have an abscissa that increases or stays the same. Otherwise, it returns IlFalse.

Reimplemented from IlvChartDataSet.

◆ removeDataSet()

virtual void IlvCombinedChartDataSet::removeDataSet ( IlUInt  index = 0)
virtual

Removes a component data set from the combined data set.

Note
The number of data items considered in the data sets that make up the combined data set is updated by using the IlvCombinedChartDataSet::updateDataCount() method.
Parameters
indexThe index at which the data set is removed.

◆ removeDataSets()

void IlvCombinedChartDataSet::removeDataSets ( )

Removes all the component data sets from the combined data set.

Note
The number of data items considered in the data sets that make up the combined data set is updated by using the IlvCombinedChartDataSet::updateDataCount() method. The data count is set to the minimum number of data items in the data sets that make up the combined data set.

◆ retrieveDataSetPoint()

virtual IlBoolean IlvCombinedChartDataSet::retrieveDataSetPoint ( IlvChartDataSet *&  dataSet,
IlUInt  ptidx,
const IlvDoublePoint point,
IlUInt dataSetPointIndex,
IlvDoublePoint dataSetPoint 
) const
pure virtual

Retrieves from a data point of the current combined data set the corresponding data point of a component data set.

Note
If no data set is specified (dataSet is equal to 0), dataSet is set to a default data set which is one of the data sets that make up the current combined data set.
Parameters
dataSetThe component data set for which we want to retrieve a data point. This data set is one of the data sets that make up the current combined data set.
ptidxThe index of the data point of the current combined data set from which we want to retrieve the corresponding point in dataSet.
pointThe point of the current combined data set from which we want to retrieve the corresponding point in dataSet.
dataSetPointIndexThe index of the retrieved point in the data set dataSet.
dataSetPointThe retrieved point in the data set dataSet.
Returns
IlTrue if the data point has been successfully retrieved and IlFalse otherwise.

Implemented in IlvPieChartDataSet, IlvHiLoChartDataSet, IlvStacked100ChartDataSet, and IlvAddChartDataSet.

◆ setDataCount()

virtual void IlvCombinedChartDataSet::setDataCount ( IlUInt  count)
virtual

Sets the number of considered data points from the number of data items considered in the component data sets.

Sets the number of data points considered for the current combined data set. This number is set to the number of data points that can be computed from the component data sets when count data items are considered in each component data set.

Parameters
countThe number of data items considered in the data sets that make up the combined data set.

Reimplemented in IlvPieChartDataSet, and IlvHiLoChartDataSet.

◆ setDataSet()

virtual void IlvCombinedChartDataSet::setDataSet ( IlvChartDataSet dataSet,
IlUInt  index = 0 
)
virtual

Sets a component data set of the combined data set.

If a data set already exists at the index index, it is replaced by the new one. Otherwise, the new data set is added at the end of the collection of data sets by a call to the IlvCombinedChartDataSet::addDataSet() method.

Note
The number of data considered in the data sets that make up the combined data set is updated by using the IlvCombinedChartDataSet::updateDataCount() method.
Parameters
dataSetThe new data set that is set within the combined data set.
indexThe index at which the new data set is set in the collection of data sets that make up the current data set.

◆ setPoint()

virtual IlBoolean IlvCombinedChartDataSet::setPoint ( IlUInt  ptidx,
const IlvDoublePoint point 
)
virtual

Propagates the change made to a given data point of the combined data set to the component data sets.

Parameters
ptidxThe index of the point of the current combined data set that is changed.
pointThe new value of the point of index ptidx for the current combined data set.
Returns
IlTrue if the propagation has been successfully performed and IlFalse otherwise.

Reimplemented from IlvChartDataSet.

◆ updateDataCount()

virtual void IlvCombinedChartDataSet::updateDataCount ( )
virtual

Updates the number of considered data points.

Note
The considered data points are usually not stored. They are computed on the fly whenever needed from the data points of the component data sets.

The default implementation first computes the minimum number of data items in all the data sets that make up the combined data set, then calls the IlvCombinedChartDataSet::setDataCount() method by passing this minimum number as a parameter.

◆ useDataSet()

virtual IlBoolean IlvCombinedChartDataSet::useDataSet ( const IlvChartDataSet dataSet) const
virtual

Indicates whether a data set is one of the data sets that make up the combined data set.

Parameters
dataSetThe data set for which we want to know if it is one of the data sets that make up the current combined data set.
Returns
IlTrue if the data set dataSet is one of the data sets that make up the current combined data set and IlFalse otherwise.

Reimplemented from IlvChartDataSet.

◆ write()

virtual void IlvCombinedChartDataSet::write ( IlvOutputFile file) const
virtual

Writes the attributes of the current object in a file.

Called by the IlvChartDataSet::save() method. This method can be overloaded in subclasses that define new attributes. The information written by the write() method is read by the IO constructor, which takes an IlvInputFile as its only argument. Both this method and the IO constructor can be automatically declared by using the DeclareChartDataSetTypeInfo macro within the class declaration.

Parameters
fileThe file where the attributes of the current object are written.

Reimplemented from IlvChartDataSet.