##// END OF EJS Templates
Pass Variable as shared_ptr
Pass Variable as shared_ptr

File last commit:

r177:4c64b786fec1
r187:60a84e67b911
Show More
DataSeries.h
50 lines | 1.4 KiB | text/x-c | CLexer
Alexandre Leroux
Creates IDataSeries interface and its default implementation
r125 #ifndef SCIQLOP_DATASERIES_H
#define SCIQLOP_DATASERIES_H
#include <Data/ArrayData.h>
#include <Data/IDataSeries.h>
#include <memory>
/**
* @brief The DataSeries class is the base (abstract) implementation of IDataSeries.
*
* It proposes to set a dimension for the values ​​data
*
* @tparam Dim The dimension of the values data
*
*/
template <int Dim>
class DataSeries : public IDataSeries {
public:
/// @sa IDataSeries::xAxisData()
std::shared_ptr<ArrayData<1> > xAxisData() override { return m_XAxisData; }
/// @sa IDataSeries::xAxisUnit()
Alexandre Leroux
Replaces QString unit by a new struct...
r177 Unit xAxisUnit() const override { return m_XAxisUnit; }
Alexandre Leroux
Creates IDataSeries interface and its default implementation
r125
/// @return the values dataset
std::shared_ptr<ArrayData<Dim> > valuesData() const { return m_ValuesData; }
/// @sa IDataSeries::valuesUnit()
Alexandre Leroux
Replaces QString unit by a new struct...
r177 Unit valuesUnit() const override { return m_ValuesUnit; }
Alexandre Leroux
Creates IDataSeries interface and its default implementation
r125
protected:
/// Protected ctor (DataSeries is abstract)
Alexandre Leroux
Replaces QString unit by a new struct...
r177 explicit DataSeries(std::shared_ptr<ArrayData<1> > xAxisData, Unit xAxisUnit,
std::shared_ptr<ArrayData<Dim> > valuesData, Unit valuesUnit)
Alexandre Leroux
Creates IDataSeries interface and its default implementation
r125 : m_XAxisData{xAxisData},
Alexandre Leroux
Replaces QString unit by a new struct...
r177 m_XAxisUnit{std::move(xAxisUnit)},
Alexandre Leroux
Creates IDataSeries interface and its default implementation
r125 m_ValuesData{valuesData},
Alexandre Leroux
Replaces QString unit by a new struct...
r177 m_ValuesUnit{std::move(valuesUnit)}
Alexandre Leroux
Creates IDataSeries interface and its default implementation
r125 {
}
private:
std::shared_ptr<ArrayData<1> > m_XAxisData;
Alexandre Leroux
Replaces QString unit by a new struct...
r177 Unit m_XAxisUnit;
Alexandre Leroux
Creates IDataSeries interface and its default implementation
r125 std::shared_ptr<ArrayData<Dim> > m_ValuesData;
Alexandre Leroux
Replaces QString unit by a new struct...
r177 Unit m_ValuesUnit;
Alexandre Leroux
Creates IDataSeries interface and its default implementation
r125 };
#endif // SCIQLOP_DATASERIES_H