linbox
Public Member Functions
PlotData Class Reference

The raw data to plot. More...

#include <benchmark.h>

Public Member Functions

const DataSeriesgetSeries (const size_t &i) const
 Returns the ith series of measurements. More...
 
const DataSeriesselectSeries (const size_t &i)
 Returns the ith series of measurements. More...
 
const DataSeriesselectSeries (const std::string &name)
 Returns the series of measurements after its name. More...
 
const DataSeriesgetCurrentSeries () const
 Returns the current series of measurements.
 
DataSeriesrefSeries (const size_t &i)
 Returns the ith series of measurements. More...
 
DataSeriesrefSeries (const std::string &nom)
 Returns the ith series of measurements. More...
 
DataSeriesrefCurrentSeries ()
 Returns the current series of measurements.
 
 PlotData ()
 Inits a plot with series of data. More...
 
 ~PlotData ()
 destructor.
 
 PlotData (const PlotData &PD)
 copy constructor. More...
 
void clear ()
 initialize to empty
 
void merge (const PlotData &PD)
 merges another plot data to the current one. More...
 
size_t size () const
 get the number of series. More...
 
size_t getCurrentSeriesNumber () const
 gets the current series number.
 
void setSeriesName (const size_t &i, const std::string &nom)
 Sets the name of a series. More...
 
const std::string & getSeriesName (const size_t &i) const
 Gets the name of a series. More...
 
const std::string & getCurrentSeriesName () const
 Gets the name of the current series.
 
void setCurrentSeriesName (const std::string &nom)
 Sets the name of the current series. More...
 
void initWatch (const size_t &i)
 Inits the watch on a series. More...
 
void initCurrentSeriesWatch ()
 Inits the watch to current series.
 
void newSeries (const std::string &nom="")
 Creates a new series. More...
 
void finishSeries ()
 Finish a series of measurements. More...
 
size_t getSeriesSize (const size_t &i) const
 size of a series. More...
 
size_t getCurrentSeriesSize () const
 size of the current series.
 
bool selectNextSeries ()
 goes to the next series of points
 
void selectFirstSeries ()
 selects the first series
 
template<class T >
void setSeriesPointLabel (const size_t &i, const size_t &j, const T &nom)
 Sets the name of a point. More...
 
void setCurrentSeriesPointLabel (const size_t &j, const std::string &nom)
 Sets the name of a point. More...
 
std::string getSeriesLabel (const size_t &i) const
 gets the name of a series. More...
 
std::string getCurrentSeriesLabel () const
 gets the name of a series. More...
 
const svector_t & getSeriesLabels () const
 gets all the names in the series. More...
 
void setSeriesEntry (const size_t &i, const std::string &nam, const double &val, const double &xval=NAN, const double &yval=NAN)
 sets a new entry. More...
 
void setSeriesEntry (const std::string &nom, const std::string &nam, const double &val, const double &xval=NAN, const double &yval=NAN)
 sets a new entry. More...
 
template<class T >
void setCurrentSeriesEntry (const T &nam, const double &val, const double &xval=NAN, const double &yval=NAN)
 sets a new entry. More...
 
const std::vector< DataSeries > & getTable () const
 gets a reference to the array of data. More...
 
std::vector< DataSeries > & refTable ()
 gets a reference to the array of data. More...
 
bool keepon (size_t &repet, double tim, bool usePrediction=false)
 Continue for another time measure ? More...
 
void save (const std::string &filename, const std::string &title="", const std::string &xtitle="", const std::string &ytitle="")
 saves the data in XML format. More...
 
const std::string & getCurrentEntryId () const
 returns the unique ID of the current series last entry
 
const std::string & getCurrentSeriesId (const size_t &j) const
 returns the unique ID of the current series j'th entry. More...
 
const std::string & getId (const size_t &i, const size_t &j)
 returns the unique ID of the i'th series j'th entry. More...
 
const std::string & getId (const std::string &name, const size_t &j)
 returns the unique ID of the i'th series j'th entry. More...
 

Detailed Description

The raw data to plot.

Represents the labels for the points (X axis) and the values for each series of measures (Y axis).

Members that set/get are named as follows :

Members are also named as follows :

Constructor & Destructor Documentation

◆ PlotData() [1/2]

PlotData ( )

Inits a plot with series of data.

Parameters
nb_ptsnumber of points in each series.
nb_srsnumber of series of points. Default is 1.

◆ PlotData() [2/2]

PlotData ( const PlotData PD)

copy constructor.

Parameters
PDa PlotData to copy.

Member Function Documentation

◆ getSeries()

const DataSeries & getSeries ( const size_t &  i) const

Returns the ith series of measurements.

Parameters
iith series to be returned

◆ selectSeries() [1/2]

const DataSeries & selectSeries ( const size_t &  i)

Returns the ith series of measurements.

Parameters
iith series to be returned

◆ selectSeries() [2/2]

const DataSeries & selectSeries ( const std::string &  name)

Returns the series of measurements after its name.

Parameters
nomname of series to be returned

◆ refSeries() [1/2]

DataSeries & refSeries ( const size_t &  i)

Returns the ith series of measurements.

Parameters
iith series to be returned

◆ refSeries() [2/2]

DataSeries & refSeries ( const std::string &  nom)

Returns the ith series of measurements.

Parameters
iith series to be returned

◆ merge()

void merge ( const PlotData PD)

merges another plot data to the current one.

(just adds to the end, does not merge series by name yet)

◆ size()

size_t size ( ) const

get the number of series.

Returns
number of series.

◆ setSeriesName()

void setSeriesName ( const size_t &  i,
const std::string &  nom 
)

Sets the name of a series.

Parameters
iindex of the series
nomname of the series

◆ getSeriesName()

const std::string & getSeriesName ( const size_t &  i) const

Gets the name of a series.

Parameters
iindex of the series

◆ setCurrentSeriesName()

void setCurrentSeriesName ( const std::string &  nom)

Sets the name of the current series.

Parameters
nomname of the series

◆ initWatch()

void initWatch ( const size_t &  i)

Inits the watch on a series.

Parameters
iindex of a series

◆ newSeries()

void newSeries ( const std::string &  nom = "")

Creates a new series.

It is created after the last series. getCurrentSeries() points to it.

Parameters
nomname of the new series

◆ finishSeries()

void finishSeries ( )

Finish a series of measurements.

Nothing is done for the moment.

◆ getSeriesSize()

size_t getSeriesSize ( const size_t &  i) const

size of a series.

Parameters
iindex of the series

◆ setSeriesPointLabel()

void setSeriesPointLabel ( const size_t &  i,
const size_t &  j,
const T &  nom 
)
inline

Sets the name of a point.

Parameters
iseries number
jindex for the the point
nomname of the point

◆ setCurrentSeriesPointLabel()

void setCurrentSeriesPointLabel ( const size_t &  j,
const std::string &  nom 
)

Sets the name of a point.

Parameters
jindex for the the point
nomname of the point

◆ getSeriesLabel()

std::string getSeriesLabel ( const size_t &  i) const

gets the name of a series.

Defaults to "series.i"

Parameters
iits index.
Returns
its name.

◆ getCurrentSeriesLabel()

std::string getCurrentSeriesLabel ( ) const

gets the name of a series.

Defaults to "series.i"

Parameters
iits index.
Returns
its name.

◆ getSeriesLabels()

const svector_t & getSeriesLabels ( ) const

gets all the names in the series.

Returns
a vector of names.

◆ setSeriesEntry() [1/2]

void setSeriesEntry ( const size_t &  i,
const std::string &  nam,
const double &  val,
const double &  xval = NAN,
const double &  yval = NAN 
)

sets a new entry.

Parameters
iindex of the series
jindex of the point
namname of the point (eg size of the matrix, name of a sparse matrix,...)
valvalue to be inserted (eg mflops, sec,...).
xvalx value of the point (eg size of the matrix, of a sparse matrix,...)
yvaltime for this computation (seconds)

◆ setSeriesEntry() [2/2]

void setSeriesEntry ( const std::string &  nom,
const std::string &  nam,
const double &  val,
const double &  xval = NAN,
const double &  yval = NAN 
)

sets a new entry.

Parameters
namename of the series
jindex of the point
namname of the point (eg size of the matrix, name of a sparse matrix,...)
valvalue to be inserted (eg mflops, sec,...).
xvalx value of the point (eg size of the matrix, of a sparse matrix,...)
yvaltime for this computation (seconds)

◆ setCurrentSeriesEntry()

void setCurrentSeriesEntry ( const T &  nam,
const double &  val,
const double &  xval = NAN,
const double &  yval = NAN 
)
inline

sets a new entry.

Parameters
jindex of the point
namname of the point (eg size of the matrix, name of a sparse matrix,...)
valvalue to be inserted (eg mflops, sec,...).

◆ getTable()

const std::vector< DataSeries > & getTable ( ) const

gets a reference to the array of data.

Returns
a reference to the member tableau representing the data.

◆ refTable()

std::vector< DataSeries > & refTable ( )

gets a reference to the array of data.

Returns
a reference to the member tableau representing the data.

◆ keepon()

bool keepon ( size_t &  repet,
double  tim,
bool  usePrediction = false 
)

Continue for another time measure ?

See also
TimeWatcher::keepon
Parameters
repetcurrent number of repetitions for this new measure
timtime previously spent on the measures.
Returns
true if one more measure can be done

◆ save()

void save ( const std::string &  filename,
const std::string &  title = "",
const std::string &  xtitle = "",
const std::string &  ytitle = "" 
)

saves the data in XML format.

Parameters
filenamefile name
titletitles of the data
xtitlelegend of the X axis
ytitlelegend of the Y axis.

◆ getCurrentSeriesId()

const std::string& getCurrentSeriesId ( const size_t &  j) const
inline

returns the unique ID of the current series j'th entry.

Parameters
jindex of the entry.

◆ getId() [1/2]

const std::string& getId ( const size_t &  i,
const size_t &  j 
)
inline

returns the unique ID of the i'th series j'th entry.

Parameters
iindex of the series.
jindex of the entry.

◆ getId() [2/2]

const std::string& getId ( const std::string &  name,
const size_t &  j 
)
inline

returns the unique ID of the i'th series j'th entry.

Parameters
iindex of the series.
jindex of the entry.

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