Skip to content

datatypes::timeseries::TimeSeriesLibrary

Library of time series, for high level access to sources of time series that nmay have varying on-disk representations. More...

#include <time_series_store.hpp>

Inherits from datatypes::timeseries::TimeSeriesProvider< double >, datatypes::timeseries::TTimeSeriesLibrary< double >, datatypes::timeseries::IdentifiersProvider

Public Functions

Name
TimeSeriesLibrary(TimeSeriesStoreFactory * storeCreator =nullptr)
TimeSeriesLibrary(const TimeSeriesLibraryDescription & description)
virtual ~TimeSeriesLibrary()
void Close()
TimeSeriesLibrary & operator=(TimeSeriesLibrary && src)
TimeSeriesLibrary(TimeSeriesLibrary && src)
Constructor using the move semantics.
TTimeSeries< double > * GetSingle(const string & dataId, boost::function< TTimeSeries< double > *(TTimeSeries< double > *)> & tsTransform)
Gets a single time series out of the library.
virtual vector< string > GetIdentifiers() const
vector< string > GetIdentifiers(const string & dataId) const
string GetDataSummary(const string & dataId)
vector< DataDimensionDescriptor > GetDataDimensionsDescription(const string & dataId)
virtual TTimeSeries< double > * GetSingle(const string & dataId)
Gets a single time series out of the library.
virtual MultiTimeSeries< TTimeSeries< double > * > * GetCollection(const string & dataId)
Gets a collection of time series out of the library, where each item is for a given station ID.
virtual TTimeSeries< double > * GetSingle(const string & dataId, const string & collectionIdentifier)
**
MultiTimeSeries< TTimeSeries< double > * > * GetEnsemble(const string & dataId, const string & dataItemIdentifier)
virtual MultiTimeSeries< TTimeSeries< double > * > * GetEnsembleTimeSeries(const string & dataId)
virtual MultiTimeSeries< TTimeSeries< double > * > * GetAllTimeSeries(const string & dataId)
virtual EnsembleForecastTimeSeries< TTimeSeries< double > > * GetTimeSeriesEnsembleTimeSeries(const string & dataId)
void AddSource(const string & dataId, SingleTimeSeriesStore< double > * store)
void AddSource(const string & dataId, EnsembleTimeSeriesStore< double > * store)
void AddSource(const string & dataId, TimeSeriesEnsembleTimeSeriesStore< double > * dataAccess)
bool CanCreateTimeSeriesEnsembleSeriesStore(const string & dataId)
void CreateTimeSeriesEnsembleSeriesStore(const string & dataId)

Additional inherited members

Public Functions inherited from datatypes::timeseries::TimeSeriesProvider< double >

Name
virtual ~TimeSeriesProvider()

Public Types inherited from datatypes::timeseries::TTimeSeriesLibrary< double >

Name
typedef TTimeSeries< T > TS
typedef MultiTimeSeries< TS * > MTS

Public Functions inherited from datatypes::timeseries::TTimeSeriesLibrary< double >

Name
virtual ~TTimeSeriesLibrary()
virtual TimeSeriesProvider< T > * GetProvider(const string & dataId)

Public Functions inherited from datatypes::timeseries::IdentifiersProvider

Name
virtual ~IdentifiersProvider()
vector< string > SplitHierarchicalIdentifier(const string & longId)
string GetTopmostIdentifier(const string & longId)
void CheckNotEmpty(const string & longId)

Detailed Description

class datatypes::timeseries::TimeSeriesLibrary;

Library of time series, for high level access to sources of time series that nmay have varying on-disk representations.

Template Parameters:

  • T The element type of the time series dealt with, typically double or float.

Public Functions Documentation

function TimeSeriesLibrary

TimeSeriesLibrary(
    TimeSeriesStoreFactory * storeCreator =nullptr
)

function TimeSeriesLibrary

TimeSeriesLibrary(
    const TimeSeriesLibraryDescription & description
)

function ~TimeSeriesLibrary

virtual ~TimeSeriesLibrary()

function Close

void Close()

function operator=

TimeSeriesLibrary & operator=(
    TimeSeriesLibrary && src
)

function TimeSeriesLibrary

TimeSeriesLibrary(
    TimeSeriesLibrary && src
)

Constructor using the move semantics.

Parameters:

  • src time series library from which to move data.

Remark: C++ for the Impatient Appendix A. A Painless Introduction to Rvalue References (C++11) See also http://stackoverflow.com/a/3109981/2752565 for information on move semantic

function GetSingle

TTimeSeries< double > * GetSingle(
    const string & dataId,
    boost::function< TTimeSeries< double > *(TTimeSeries< double > *)> & tsTransform
)

Gets a single time series out of the library.

Parameters:

  • dataId Identifier for the time series
  • tsTransform If non-null, a time series transformation to perform on the raw data retrieved for dataId.

Return: The univariate, single realization time series

function GetIdentifiers

virtual vector< string > GetIdentifiers() const

Reimplements: datatypes::timeseries::TTimeSeriesLibrary::GetIdentifiers

function GetIdentifiers

vector< string > GetIdentifiers(
    const string & dataId
) const

function GetDataSummary

string GetDataSummary(
    const string & dataId
)

function GetDataDimensionsDescription

vector< DataDimensionDescriptor > GetDataDimensionsDescription(
    const string & dataId
)

function GetSingle

virtual TTimeSeries< double > * GetSingle(
    const string & dataId
)

Gets a single time series out of the library.

Parameters:

  • dataId Identifier for the time series

Return: The univariate, single realization time series

Reimplements: datatypes::timeseries::TimeSeriesProvider::GetSingle

function GetCollection

virtual MultiTimeSeries< TTimeSeries< double > * > * GetCollection(
    const string & dataId
)

Gets a collection of time series out of the library, where each item is for a given station ID.

Parameters:

  • dataId Identifier for the time series

Return: The collection of univariate, single realization time series

Reimplements: datatypes::timeseries::TTimeSeriesLibrary::GetCollection

function GetSingle

virtual TTimeSeries< double > * GetSingle(
    const string & dataId,
    const string & collectionIdentifier
)

**

Parameters:

  • dataId Identifier for the collection of time series
  • collectionIdentifier Identifier for the item to retrieve in the collection. Typically, a station identifier

Return: The univariate, single realization time series

Reimplements: datatypes::timeseries::TTimeSeriesLibrary::GetSingle

Gets a single time series out of the library

function GetEnsemble

MultiTimeSeries< TTimeSeries< double > * > * GetEnsemble(
    const string & dataId,
    const string & dataItemIdentifier
)

function GetEnsembleTimeSeries

virtual MultiTimeSeries< TTimeSeries< double > * > * GetEnsembleTimeSeries(
    const string & dataId
)

Reimplements: datatypes::timeseries::TTimeSeriesLibrary::GetEnsembleTimeSeries

function GetAllTimeSeries

virtual MultiTimeSeries< TTimeSeries< double > * > * GetAllTimeSeries(
    const string & dataId
)

Reimplements: datatypes::timeseries::TTimeSeriesLibrary::GetAllTimeSeries

function GetTimeSeriesEnsembleTimeSeries

virtual EnsembleForecastTimeSeries< TTimeSeries< double > > * GetTimeSeriesEnsembleTimeSeries(
    const string & dataId
)

Reimplements: datatypes::timeseries::TTimeSeriesLibrary::GetTimeSeriesEnsembleTimeSeries

function AddSource

void AddSource(
    const string & dataId,
    SingleTimeSeriesStore< double > * store
)

function AddSource

void AddSource(
    const string & dataId,
    EnsembleTimeSeriesStore< double > * store
)

function AddSource

void AddSource(
    const string & dataId,
    TimeSeriesEnsembleTimeSeriesStore< double > * dataAccess
)

function CanCreateTimeSeriesEnsembleSeriesStore

bool CanCreateTimeSeriesEnsembleSeriesStore(
    const string & dataId
)

function CreateTimeSeriesEnsembleSeriesStore

void CreateTimeSeriesEnsembleSeriesStore(
    const string & dataId
)

Updated on 2022-08-21 at 18:10:33 +1000