Rogue Wave Views
Charts Package API Reference Guide
Product Documentation:

Rogue Wave Views
Documentation Home
List of all members | Public Member Functions | Protected Member Functions
IlvChartPointSet Class Reference

Class for data sets described by a set of points with two coordinates. More...

#include <ilviews/charts/data.h>

Inheritance diagram for IlvChartPointSet:
IlvChartDataSet IlvValueInterface IlvChartCyclicPointSet

Public Member Functions

 IlvChartPointSet (const char *name=0, IlvPointInfoCollection *pointInfoCollection=0)
 Constructor. More...
 
virtual ~IlvChartPointSet ()
 Destructor. More...
 
virtual void dataPointAdded (IlUInt position)
 Performs the updates needed 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 IlUInt getDataCount () const
 Returns the number of defined data items. More...
 
virtual void getPoint (IlUInt i, IlvDoublePoint &point) const
 Returns a represented data point. More...
 
virtual IlvDoublePointgetPointsBetween (IlUInt indexMin, IlUInt indexMax, IlUInt &count) const
 Returns some of the 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...
 
virtual IlBoolean isIncreasingOnX () const
 Indicates whether the managed data has increasing abscissa values. More...
 
virtual IlBoolean removePointAndInfo (IlUInt ptidx)
 Removes a represented data point (and its associated point information object if any). More...
 
virtual void removePointsAndInfo ()
 Removes all the represented data points (and their associated point information objects if any). More...
 
virtual IlBoolean setPoint (IlUInt ptidx, const IlvDoublePoint &point)
 Sets a represented data point. 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
 Virtual copy constructor. More...
 
virtual void dataAllPointsRemoved ()
 Performs the necessary updates when all data points are removed. 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...
 
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 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 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...
 
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.
 
IlBoolean removePointInfo (IlUInt ptidx)
 Removes the point information associated with a data item. 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...
 
virtual void write (IlvOutputFile &file) const
 Writes the attributes of the current object in a file. More...
 

Protected Member Functions

virtual void computeMinMaxValues (IlvCoordInterval &xRange, IlvCoordInterval &yRange) const
 Computes the abscissa and ordinate bounding values of the managed data. More...
 
void updateBoundingValues (const IlvDoublePoint &newPoint)
 Updates the bounding values of the managed data. More...
 
- Protected Member Functions inherited from IlvChartDataSet
 IlvChartDataSet (const char *name=0, IlvPointInfoCollection *pointInfoCollection=0)
 Constructor. More...
 
 IlvChartDataSet (const IlvChartDataSet &dataSet)
 Constructor. More...
 
 IlvChartDataSet (IlvInputFile &file)
 Constructor. More...
 
void computeBoundingValues ()
 Computes the 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

Class for data sets described by a set of points with two coordinates.

Library: ilvcharts

This class is a subclass of IlvChartDataSet, for which the data points are described by IlvDoublePoint objects stored in an array. An IlvDoublePoint is a point with two coordinates (an abscissa and an ordinate) of type IlDouble.

Example of data that can be represented by an IlvChartPointSet object:

X Y
0.5 1.0
1.2 2.3
1.6 3.1
Note
Each point (X, Y) is stored by using an IlvDoublePoint instance within the IlvChartPointSet object.
See also
IlvChartDataSet, IlvDoublePoint, IlvPointInfoCollection, IlvChartDataPointInfo.

Constructor & Destructor Documentation

IlvChartPointSet::IlvChartPointSet ( const char *  name = 0,
IlvPointInfoCollection pointInfoCollection = 0 
)

Constructor.

Initializes a new IlvChartPointSet object.

Parameters
nameIf not 0, this string becomes the name of the created data set. The name passed as a parameter is copied.
pointInfoCollectionThe object used to manage the point information for the created data set.
virtual IlvChartPointSet::~IlvChartPointSet ( )
virtual

Destructor.

The destructor removes all the data points managed by the current data set if the removal is allowed (see the IlvChartDataSet::isRemovalAllowed() method).

Member Function Documentation

virtual void IlvChartPointSet::computeMinMaxValues ( IlvCoordInterval xRange,
IlvCoordInterval yRange 
) const
protectedvirtual

Computes the abscissa and ordinate bounding values of the managed data.

Computes and returns in xRange and yRange the abscissa and ordinate bounding values of the data managed by the current data set.

Parameters
xRangeThe bounding values for the abscissa of the data managed by the current data set.
yRangeThe bounding values for the ordinate of the data managed by the current data set.
Note
This method is called in the IlvChartDataSet::computeBoundingValues() method.

Reimplemented from IlvChartDataSet.

virtual void IlvChartPointSet::dataPointAdded ( IlUInt  position)
virtual

Performs the updates needed when a new data point is added.

This method first calls the IlvChartDataSet::dataPointAdded() method and then updates the flag indicating whether the data managed by the current data set have an abscissa that increases or stays the same, by taking the new data point into account.

Parameters
positionThe index at which the data point is added.

Reimplemented from IlvChartDataSet.

Reimplemented in IlvChartCyclicPointSet.

virtual void IlvChartPointSet::dataPointChanged ( IlUInt  ptidx,
IlBoolean  beforeChange 
)
virtual

Performs the necessary updates when a data point is changed.

This method updates the flag indicating whether the data managed by the current data set have an abscissa that increases or stays the same, by taking into account the new data point if beforeChange is equal to IlFalse. Then, this method calls the IlvChartDataSet::dataPointChanged() method.

Parameters
ptidxThe index at which an existing data point is changed.
beforeChangeA Boolean value indicating whether the method is called before the data point is changed or after it has been changed.

Reimplemented from IlvChartDataSet.

virtual IlUInt IlvChartPointSet::getDataCount ( ) const
virtual

Returns the number of defined data items.

Returns
The number of data items (points or values) defined for the data set.

Implements IlvChartDataSet.

virtual void IlvChartPointSet::getPoint ( IlUInt  i,
IlvDoublePoint point 
) const
virtual

Returns a represented data point.

The returned point is simply the point stored in the data set at the index i since the IlvChartPointSet object directly manages IlvDoublePoint objects.

Parameters
iThe index of the returned data point.
pointThe returned data point.

Implements IlvChartDataSet.

Reimplemented in IlvChartCyclicPointSet.

virtual IlvDoublePoint* IlvChartPointSet::getPointsBetween ( IlUInt  indexMin,
IlUInt  indexMax,
IlUInt count 
) const
virtual

Returns some of the data points represented by the current data set.

Parameters
indexMinThe index of the first returned data point.
indexMaxThe index of the last returned data point.
countThe number of returned points.
Returns
An array of the data points represented by the current data set that are between the indexMin and the indexMax indexes. The array is stored in an IlPoolOf(Pointer) and should not be deleted or modified.

Reimplemented from IlvChartDataSet.

Reimplemented in IlvChartCyclicPointSet.

virtual IlBoolean IlvChartPointSet::insertPoint ( const IlvDoublePoint point,
IlUInt  ptidx,
IlvChartDataPointInfo pointInfo = 0,
IlBoolean  copyPointInfo = IlFalse 
)
virtual

Inserts a represented data point (and its associated point information object if any) .

Parameters
pointThe new data point.
ptidxThe index at which the new data point is inserted.
pointInfoThe point information associated with the new data point. This point information is locked.
copyPointInfoIndicates whether the point information passed as a parameter must be copied. If copyPointInfo is IlTrue, the point information is copied. Otherwise, a pointer to the point information stored in pointInfo is kept and so its contents should not be deleted.
Returns
IlTrue if the point and its associated point information have been successfully inserted and IlFalse otherwise.
Note
The IlvChartPointSet::dataPointAdded() method is called within this method after inserting the point in order to perform the updates needed because of the change to the data set.
Warning
Before you insert the point information object associated with a data item of the current data set, you must set the object used to manage the point information objects for the current data set. (See the IlvChartDataSet::setPointInfoCollection() method or the constructor IlvChartDataSet::IlvChartDataSet(const char*, IlvPointInfoCollection*).)

Reimplemented from IlvChartDataSet.

Reimplemented in IlvChartCyclicPointSet.

virtual IlBoolean IlvChartPointSet::insertPoints ( IlUInt  count,
const IlvDoublePoint points,
IlUInt  position = IlvLastPositionIndex,
IlvChartDataPointInfo *const *  pInfos = 0,
IlBoolean  copyPointInfo = IlFalse 
)
virtual

Inserts several represented data points (and their associated point information objects if any).

Inserts an array of data points in current the data set. This method uses the IlvChartDataSet::startBatch() and IlvChartDataSet::endBatch() methods to ensure that a single notification is sent. The default implementation uses the IlvChartDataSet::insertPoint() method to insert the points. It can be overloaded in subclasses to use specific knowledge on how the data points are stored.

Parameters
countThe number of data points.
pointsThe data points to insert.
positionThe index at which the new data points are inserted.
pInfosThe point information objects associated with the new data points.
copyPointInfoA Boolean value indicating whether the point information objects stored in pInfos must be copied.
Returns
A value indicating whether the data points were successfully inserted.

Reimplemented from IlvChartDataSet.

virtual IlBoolean IlvChartPointSet::isIncreasingOnX ( ) const
virtual

Indicates whether the managed data has increasing abscissa values.

Returns
IlTrue if the data managed by the current object have increasing abscissa values, and IlFalse otherwise.

Reimplemented from IlvChartDataSet.

virtual IlBoolean IlvChartPointSet::removePointAndInfo ( IlUInt  ptidx)
virtual

Removes a represented data point (and its associated point information object if any).

When you remove a point information object, the point information is not deleted but unlocked (that is, the IlvChartDataPointInfo::unLock method is called): it will be deleted only when no objects reference it.

Parameters
ptidxThe index of the data point and its associated point information (if any) that are removed.
Returns
IlTrue if the point and its associated point information (if any) have been removed and IlFalse otherwise.
Note
The IlvChartDataSet::dataPointRemoved() method is called within this method after removing the point in order to perform the updates needed because of the change to the data set.

Reimplemented from IlvChartDataSet.

virtual void IlvChartPointSet::removePointsAndInfo ( )
virtual

Removes all the represented data points (and their associated point information objects if any).

Note
When you remove a point information object, the point information is not deleted but unlocked (that is, the IlvChartDataPointInfo::unLock() method is called). It will be deleted only when no objects reference it (see the IlvChartDataPointInfo::unLock() method).

Reimplemented from IlvChartDataSet.

Reimplemented in IlvChartCyclicPointSet.

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

Sets a represented data point.

If a point already exists at the index ptidx, it is replaced by the new one. Otherwise, the new point is added at the end.

Parameters
ptidxThe index at which the new data point is set.
pointThe new data point.
Returns
IlTrue if the point has been successfully set, and IlFalse otherwise.
Note
If a point already exists at the index ptidx, the IlvChartDataSet::dataPointChanged() method is called within this method before and after the point is changed in order to do the updates needed because of the change to the data set.

Reimplemented from IlvChartDataSet.

Reimplemented in IlvChartCyclicPointSet.

void IlvChartPointSet::updateBoundingValues ( const IlvDoublePoint newPoint)
protected

Updates the bounding values of the managed data.

Updates the minimum and maximum values of the abscissa and the ordinate for the data managed by the current data set, by taking into account the new data point that has been added.

Parameters
newPointThe new point that has been added to the data set.
Note
This method is called when the bounding values have already been computed by using the IlvChartDataSet::computeBoundingValues() method and need to be updated in order to take into account a new added data point.

© Copyright 2016, Rogue Wave Software, Inc. All Rights Reserved.
Rogue Wave is a registered trademark of Rogue Wave Software, Inc. in the United States and other countries. All other trademarks are the property of their respective owners.