Rogue Wave Views |
Rogue Wave Views Documentation Home |
A data set which is read from an XML document. More...
#include <ilviews/charts/xml.h>
Public Member Functions | |
IlvXMLChartData (IlvDisplay *display, const char *fileName) | |
Constructor. More... | |
virtual IlBoolean | addDataSet (IlvChartDataSet *dataSet, IlBoolean copy=IlFalse) |
Adds a managed data set. More... | |
virtual IlvAbstractChartData * | copy () const |
Virtual copy constructor. More... | |
virtual IlvChartDataSet * | createDataSet (IlString name, IlvChartDoubleArray xvalues, IlvChartDoubleArray yvalues) |
Creates a data set out of the x- and y-array of values. More... | |
virtual IlvChartDataSet * | getDataSet (IlUInt index=0) const |
Returns a data set of the container. More... | |
IlvChartDataSet * | getDataSetByName (const char *name) const |
Gets a managed data set by its name. More... | |
virtual IlvChartDataSet *const * | getDataSets (IlUInt &count) const |
Returns all the managed data sets. More... | |
virtual IlUInt | getDataSetsCount () const |
Returns the number of data sets in the container. More... | |
virtual IlBoolean | insertDataSet (IlvChartDataSet *dataSet, IlUInt index=IlvLastPositionIndex, IlBoolean copy=IlFalse) |
Inserts a managed data set. More... | |
virtual IlBoolean | isLimited () const |
Indicates whether the number of managed data sets is limited. More... | |
virtual IlBoolean | isRemovalAllowed () const |
Indicates whether the managed data sets can be removed. More... | |
virtual IlBoolean | isWritable () const |
Indicates whether the managed data sets can be modified. More... | |
void | parse () |
Parses the XML file. More... | |
void | registerPropertyReader (IlString propertyName, IlvXMLPropertyReader *reader) |
Register a property reader. More... | |
void | registerValueListProcessor (IlString typeName, IlvXMLValueListProcessor *processor) |
Register a value list processor. More... | |
virtual IlBoolean | removeDataSet (IlUInt dataSetIndex) |
Removes a managed data set. More... | |
virtual void | removeDataSets () |
Removes all the managed data sets. More... | |
virtual IlBoolean | setDataSet (IlUInt dataSetIndex, IlvChartDataSet *dataSet, IlBoolean copy=IlFalse) |
Sets a managed data set. More... | |
virtual IlBoolean | setDataSets (IlUInt &count, IlvChartDataSet *const *dataSets, IlBoolean copy=IlFalse) |
Sets the managed data sets. More... | |
virtual void | write (IlvOutputFile &file) const |
Writes the attributes of the current object in a file. More... | |
Public Member Functions inherited from IlvAbstractChartData | |
virtual | ~IlvAbstractChartData () |
Destructor. More... | |
void | addListener (IlvChartDataListener *lst) |
Adds a listener. More... | |
virtual void | dataAllPointsRemoved (const IlvChartDataSet *ds) const |
Performs the updates needed when a data point is removed. More... | |
virtual void | dataPointAdded (const IlvChartDataSet *dataSet, IlUInt position) const |
Performs the updates needed when a data point is added. More... | |
virtual void | dataPointChanged (const IlvChartDataSet *dataSet, IlUInt ptidx, IlBoolean beforeChange) const |
Performs the updates needed when a data point is changed. More... | |
virtual void | dataPointRemoved (const IlvChartDataSet *dataSet, IlUInt ptidx) const |
Performs the updates needed when a data point is removed. More... | |
virtual void | dataSetAdded (IlvChartDataSet *dataSet, IlUInt position) |
Performs the updates needed when a data set is added. More... | |
virtual void | dataSetChanged (IlvChartDataSet *oldSet, IlvChartDataSet *newSet) |
Performs the updates needed when a data set is changed. More... | |
virtual void | dataSetRemoved (IlvChartDataSet *dataSet) |
Performs the necessary updates when a data set is removed. More... | |
virtual void | endBatch (const IlvChartDataSet *dataSet) const |
Specifies the end of a set of modifications on a data set. More... | |
IlvChartDataSet * | getDataSetByName (const char *name) const |
Gets a managed data set by its name. More... | |
IlUInt | getDataSetIndex (const IlvChartDataSet *dataSet) const |
Returns the index of a managed data set. More... | |
IlvChartDataListener *const * | getListeners (IlUInt &count) const |
Returns all the listeners. More... | |
void | lock () |
Locks the current IlvAbstractChartData object. More... | |
IlvChartDataSet * | operator[] (IlUInt index) |
Gets a managed data set by its index. More... | |
const IlvChartDataSet * | operator[] (IlUInt index) const |
Gets a managed data set by its index. More... | |
IlvChartDataListener * | removeListener (IlvChartDataListener *lst) |
Removes a listener. More... | |
void | removeListeners () |
Removes all the listeners. | |
IlBoolean | replaceDataSet (IlvChartDataSet *oldDataSet, IlvChartDataSet *newDataSet) |
Replaces a managed data set by another one. More... | |
IlvOutputFile & | save (IlvOutputFile &file) const |
Writes a complete description of the current object in a file. More... | |
virtual void | startBatch (const IlvChartDataSet *dataSet) const |
Specifies the beginning of a set of modifications on a data set. More... | |
void | unLock () |
Unlocks the current IlvAbstractChartData object. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from IlvAbstractChartData | |
static IlvAbstractChartData * | Load (IlvInputFile &file) |
Reads a chart data object from a file. More... | |
Protected Member Functions inherited from IlvAbstractChartData | |
IlvAbstractChartData () | |
Constructor. More... | |
IlvAbstractChartData (const IlvAbstractChartData &cData) | |
Constructor. More... | |
IlvAbstractChartData (IlvInputFile &file) | |
Constructor. More... | |
A data set which is read from an XML document.
Library: ilvcharts
To be properly loaded, the XML document structure should be conform to the following DTD:
<?xml version="1.0" encoding="UTF-8"?>
<!ELEMENT chartData (data+)> <!ATTLIST chartData xmlns:ilvchart CDATA #FIXED "http://www.ilog.com/products/jviews/chart" version CDATA #REQUIRED>
<!ELEMENT data (series+)> <!ATTLIST data xSeries IDREF #IMPLIED>
<!ELEMENT series ((value | valuesList)*, property*)> <!ATTLIST series dateFormat CDATA #IMPLIED type (double | date) #REQUIRED id ID #REQUIRED>
<!ELEMENT value (#PCDATA)>
<!ELEMENT valuesList (#PCDATA)> <!ATTLIST valuesList delimiter CDATA #IMPLIED> <!ENTITY % propertyExt ""> <!ELEMENT property (#PCDATA propertyExt;)*> <!ATTLIST property name CDATA #REQUIRED value CDATA #IMPLIED>
<!ELEMENT seriesRef EMPTY> <!ATTLIST seriesRef ref IDREF #REQUIRED>
Assuming that a chart contains 3 data sets: 2 (DS_A and DS_B) that do not use x-values series, 1 (DS_C) using a specific series for its abscissa; the resulting XML file is:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE chartData SYSTEM 'file:///c://myapp/chartxml.dtd'> <chartData version="0.3"> <data> <series id="DS_A" type="double"> <valuesList>0.0,8.0,6.0,13.0,22.0,21.0,19.0,28.0,27.0,23.0</valuesList> </series> <series id="DS_B" type="double"> <valuesList>0.0,9.0,11.0,14.0,11.0,16.0,19.0,21.0,12.0,12.0</valuesList> </series> </data> <data xSeries="X_DS_C"> <series id="X_DS_C" type="double"> <valuesList>0.0,2.0,4.0,6.0,8.0,10.0,12.0,14.0,16.0,18.0</valuesList> </series> <series id="DS_C" type="double"> <valuesList>0.0,0.0,6.0,3.0,0.0,2.0,9.0,18.0,9.0,5.0</valuesList> </series> </data> </chartData>
This class can be derived from and extended by the user.
IlvXMLChartData::IlvXMLChartData | ( | IlvDisplay * | display, |
const char * | fileName | ||
) |
Constructor.
Creates a new IlvXMLChartData
.
display | The IlvDisplay whose path is used to search the file. If this parameter is null, the IlvXMLChartData instance opens the file without searching the path list of the display. |
fileName | The name of the file from which the XML data is read. |
|
virtual |
Adds a managed data set.
dataSet | The data set to add to the current object. |
copy | Indicates whether the data set passed as a parameter must be copied. If copy is IlTrue , the data set is copied. Otherwise, a pointer to the data set stored in dataSet is kept. Therefore, its contents should not be deleted. |
IlTrue
if the data set has been successfully added or IlFalse
otherwise.Implements IlvAbstractChartData.
|
virtual |
Virtual copy constructor.
Creates and returns a copy of the current object. This method must be overloaded in subclasses. It is automatically declared by the DeclareChartDataTypeInfo
macro. The IlvPredefinedChartDataIOMembers
macro lets you define a default implementation, which returns an instance initialized with the copy constructor.
Implements IlvAbstractChartData.
|
virtual |
Creates a data set out of the x- and y-array of values.
This method is called when all series are built, to create the actual IlvChartDataSet
out of the values.
It might be useful to override this method in case of special requirements on data set creation (need to build a specific type of data set).
name | the name of the dataset. |
xvalues | array of X values |
yvalues | array of Y values |
|
virtual |
Returns a data set of the container.
index | The index of the data set that is returned. |
0
otherwise. Implements IlvAbstractChartData.
IlvChartDataSet* IlvXMLChartData::getDataSetByName | ( | const char * | name | ) | const |
Gets a managed data set by its name.
name | The name of the data set that is returned. |
0
otherwise.
|
virtual |
Returns all the managed data sets.
count | The number of data sets managed by the current object. |
Reimplemented from IlvAbstractChartData.
|
virtual |
Returns the number of data sets in the container.
Implements IlvAbstractChartData.
|
virtual |
Inserts a managed data set.
dataSet | The data set to insert in the current object. |
index | The index at which the data set dataSet must be inserted in the current object. |
copy | Indicates whether the data set passed as a parameter must be copied. If copy is IlTrue , the data set is copied. Otherwise, a pointer to the data set stored in dataSet is kept. Therefore, its contents should not be deleted. |
IlTrue
if the data set has been successfully inserted or IlFalse
otherwise.Implements IlvAbstractChartData.
|
virtual |
Indicates whether the number of managed data sets is limited.
Returns a Boolean value that indicates whether the number of data sets that can be managed by the object is limited.
IlFalse
by default. Reimplemented from IlvAbstractChartData.
|
virtual |
Indicates whether the managed data sets can be removed.
IlTrue
.Reimplemented from IlvAbstractChartData.
|
virtual |
Indicates whether the managed data sets can be modified.
IlTrue
.Reimplemented from IlvAbstractChartData.
void IlvXMLChartData::parse | ( | ) |
Parses the XML file.
Parse the XML file whose name was given when creating the object.
void IlvXMLChartData::registerPropertyReader | ( | IlString | propertyName, |
IlvXMLPropertyReader * | reader | ||
) |
Register a property reader.
Register a new property reader for the specified propertyName. The reader will then be used when encountering a property of the corresponding name.
propertyName | the name of the property. |
reader | the IlvXMLPropertyReader which will handle the property |
void IlvXMLChartData::registerValueListProcessor | ( | IlString | typeName, |
IlvXMLValueListProcessor * | processor | ||
) |
Register a value list processor.
Register a new value list processor for the specified type of values (typically, "double" or "date"). The processor will then be used when encountering a value list of the corresponding type.
typeName | the name of the data type. |
processor | the IlvXMLValueListProcessor which will handle the data type. |
Removes a managed data set.
dataSetIndex | The index at which the data set must be removed from the current object. |
IlTrue
if the data set has been removed or IlFalse
otherwise.IlvChartDataSet::unLock()
method is called). It will be deleted only when no objects reference it. Implements IlvAbstractChartData.
|
virtual |
Removes all the managed data sets.
IlvChartDataSet::unLock()
method is called). It will be deleted only when no objects reference it. Implements IlvAbstractChartData.
|
virtual |
Sets a managed data set.
If a data set already exists at the index dataSetIndex, the data set is replaced by the new one. Otherwise, the new one is added at the end.
dataSetIndex | The index at which the data set dataSet must be set in the current object. |
dataSet | The data set to set in the current object. |
copy | Indicates whether the data set passed as a parameter must be copied. If copy is IlTrue , the data set is copied. Otherwise, a pointer to the data set stored in dataSet is kept. Therefore, its contents should not be deleted. |
IlTrue
if the data set has been successfully set or IlFalse
otherwise.Implements IlvAbstractChartData.
|
virtual |
Sets the managed data sets.
count | This parameter first contains the number of data sets in the array dataSets. It is eventually modified to contain the number of data sets that have actually been set, if not all the data sets have been set in the current object. |
dataSets | An array of the data sets to set in the current object. |
copy | Indicates whether the data sets passed as parameters must be copied. If copy is IlTrue , the data sets are copied. Otherwise, the data sets that are stored in the array dataSets are kept. Therefore, the contents of the array should not be deleted. |
IlTrue
if data sets have been set. If not all the data sets could be set, the parameter count is modified to indicate the number of data sets that have been successfully set.Implements IlvAbstractChartData.
|
virtual |
Writes the attributes of the current object in a file.
Called by the IlvAbstractChartData::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 DeclareChartDataTypeInfo
macro within the class declaration.
file | The file where the attributes of the current object are written. |
Implements IlvAbstractChartData.
© Copyright 2015, 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.