Workspace 7.0.2
Classes | Namespaces | Macros | Functions
dataseriesadaptor.h File Reference
#include <QVector>
#include "Workspace/Application/LanguageUtils/errorchecks.h"
#include "Workspace/DataExecution/DataObjects/datafactorytraits.h"
#include "Workspace/DataExecution/DataObjects/dataobject.h"
#include "Workspace/DataExecution/DataObjects/typeadaptor.h"
#include "Workspace/DataExecution/DataObjects/typeadaptorfactory.h"
#include "Workspace/DataExecution/DataObjects/typeddatafactory.h"
#include "DataAnalysis/dataanalysis_api.h"
#include "dataseries.h"
Include dependency graph for dataseriesadaptor.h:
This graph shows which files directly or indirectly include this file:

Classes

class  DataSeriesAdaptor< T >
 A TypeAdaptor class for adapting T to a DataSeries where T is like a std::vector or QVector. More...
 
class  DataSeriesAdaptorFactory< T >
 A TypeAdaptorFactory class for an adaptor converting a type into a DataSeries. More...
 
class  QVariantHelper< DataAnalysis::DataSeries, false, true, false >
 

Namespaces

namespace  CSIRO
 Top level namespace for all Workspace code.
 
namespace  CSIRO::DataAnalysis
 Fundamental data analysis support.
 
namespace  CSIRO::DataExecution
 Base workspace functionality not requiring a user interface.
 
namespace  CSIRO::DataExecution::TypedObjectPrivate
 

Macros

#define DECLARE_WORKSPACE_DATASERIESADAPTOR(T, WORKSPACE_EXPORT_SYMBOL)
 
#define DEFINE_WORKSPACE_DATASERIESADAPTOR(T, P)
 

Functions

 DECLARE_WORKSPACE_DATA_FACTORY (CSIRO::DataAnalysis::StandardDataSeries< QVector< double > >, CSIRO_DATAANALYSIS_API) namespace CSIRO
 
 DECLARE_WORKSPACE_DATA_FACTORY (CSIRO::DataAnalysis::StandardDataSeries< QVector< int > >, CSIRO_DATAANALYSIS_API) namespace CSIRO
 

Macro Definition Documentation

◆ DECLARE_WORKSPACE_DATASERIESADAPTOR

#define DECLARE_WORKSPACE_DATASERIESADAPTOR (   T,
  WORKSPACE_EXPORT_SYMBOL 
)
Value:
namespace CSIRO \
{ \
namespace DataAnalysis \
{ \
template<> \
WORKSPACE_EXPORT_SYMBOL const DataSeriesAdaptorFactory<T>& DataSeriesAdaptorFactory<T>::getInstance(); \
template<> \
WORKSPACE_EXPORT_SYMBOL \
DataExecution::TypeAdaptor* \
DataSeriesAdaptorFactory<T>::create() const; \
template<> \
WORKSPACE_EXPORT_SYMBOL void DataSeriesAdaptorFactory<T>::destroy(DataExecution::TypeAdaptor* a) const; \
template<> \
WORKSPACE_EXPORT_SYMBOL const Application::WorkspacePlugin& DataSeriesAdaptorFactory<T>::getPlugin() const; \
} \
}
void destroy(DataExecution::TypeAdaptor *a) const override
static const DataSeriesAdaptorFactory & getInstance()
const Application::WorkspacePlugin & getPlugin() const override
Template subclass of DataSeries for things that act like std::vector.
Definition: dataseries.h:307
#define DECLARE_WORKSPACE_DATA_FACTORY(T, WORKSPACE_EXPORT_SYMBOL)
Definition: datafactorytraits.h:782
Top level namespace for all Workspace code.
Definition: applicationsupportplugin.cpp:32

This macro is analogous to the DECLARE_WORKSPACE_DATA_FACTORY macro. See its detailed description for why we also need a similar macro for data series adaptor factories.

See also
DataSeriesAdaptorFactory

◆ DEFINE_WORKSPACE_DATASERIESADAPTOR

#define DEFINE_WORKSPACE_DATASERIESADAPTOR (   T,
 
)
Parameters
TThe type of the DataSeries subclass.
PA reference to the plugin that provides the adaptor.

A macro for explicitly instantiating a DataSeriesAdaptor and its factory. The use of this macro is the preferred method of instantiating such an adaptor and its factory for a particular type. It should only ever be used in an implementation file and never in a header file. It would normally be used in the file that implements the type T, typically at the end of that file.

Function Documentation

◆ DECLARE_WORKSPACE_DATA_FACTORY() [1/2]

DECLARE_WORKSPACE_DATA_FACTORY ( CSIRO::DataAnalysis::StandardDataSeries< QVector< double > >  ,
CSIRO_DATAANALYSIS_API   
)

◆ DECLARE_WORKSPACE_DATA_FACTORY() [2/2]

DECLARE_WORKSPACE_DATA_FACTORY ( CSIRO::DataAnalysis::StandardDataSeries< QVector< int > >  ,
CSIRO_DATAANALYSIS_API   
)