#pragma once #include "TimeSeries.h" #include "EquationNode.h" #include #include "ProxyTimeSeries.h" #include class TimeSeriesManager : public ITimeSeriesProvider { public: TimeSeriesManager(void); virtual ~TimeSeriesManager(void); virtual ITimeSeries* get(std::string name); ITimeSeries* addTimeSeries(ITimeSeries* series); ITimeSeries* addTimeSeries(std::string timeseries_name, const char* file); void setBuilder(NodeBuilder* builder); inline NodeBuilder* getBuilder() {return builder;} void readTimeSeriesDefinitions(const char* dir, const char* ext = "*.txt"); void readTimeSeriesDefinitions(const char* dir, std::vector& add_series_vec, const char* ext = "*.txt"); virtual void getAll(std::vector &vec); inline bool hasSeries(std::string name) {return proxy_series_map.count(name) > 0;} protected: std::map series_map; std::map proxy_series_map; NodeBuilder* builder; };