ndm  0.1.2
Space.hh
1 #pragma once
2 
3 #include <vector>
4 #include "ndm.hh"
5 #include "Axis.hh"
6 #include "Point.pb.h"
7 namespace NDM {
8 
16 
17 class Space {
18 
19 public:
21  Space();
23  virtual ~Space();
24 
25  void print() const;
26  void add(NDM::Axis a);
27  void points(std::vector<int> levels, std::vector<NDM::Point> & point, int idAxis = 0);
28  Axis & axis(int id);
30  std::vector<NDM::Axis> & axes() { return mAxes; }
31  std::string get_full_path(std::vector<std::string> & paths);
32 
33 private:
34  std::vector<NDM::Axis> mAxes{};
35  std::vector<std::vector<double>> mTmpMins;
36  Point mTmpPoint;
37  std::vector<std::string> mTmpPaths;
38 };
39 } // namespace NDM
void add(NDM::Axis a)
Definition: Space.cc:31
void points(std::vector< int > levels, std::vector< NDM::Point > &point, int idAxis=0)
Definition: Space.cc:74
Axis object in n-dimensional space.
Definition: Axis.hh:12
std::vector< std::string > mTmpPaths
Temporary vector storing generated paths for points.
Definition: Space.hh:37
virtual ~Space()
Default Destructor.
Definition: Space.cc:14
Point mTmpPoint
Temporary Point Object.
Definition: Space.hh:36
void print() const
Definition: Space.cc:21
Space object in n-dimensional space.
Definition: Space.hh:17
Axis & axis(int id)
Definition: Space.cc:39
std::string get_full_path(std::vector< std::string > &paths)
Definition: Space.cc:47
std::vector< std::vector< double > > mTmpMins
Temporary vector storing value of minimums of axes.
Definition: Space.hh:35
Space()
Default Constructor.
Definition: Space.cc:8
std::vector< NDM::Axis > & axes()
Default space.
Definition: Space.hh:30
std::vector< NDM::Axis > mAxes
Vector of axis to be used for space.
Definition: Space.hh:34