ndm  0.1.1
 All Classes Functions Variables Enumerations Pages
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  void find_point(std::vector<int> & coordinates, std::vector<int> & levels, NDM::Point & point);
29 
30  Axis & axis(int id);
32  std::vector<NDM::Axis> & axes() { return mAxes; }
33  std::string get_full_path(std::vector<std::string> & paths);
34 
35 private:
36  std::vector<NDM::Axis> mAxes{};
37  std::vector<std::vector<double>> mTmpMins;
38  Point mTmpPoint;
39  std::vector<std::string> mTmpPaths;
40 };
41 } // namespace NDM
void print() const
Definition: Space.cc:21
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:39
virtual ~Space()
Default Destructor.
Definition: Space.cc:14
Point mTmpPoint
Temporary Point Object.
Definition: Space.hh:38
void find_point(std::vector< int > &coordinates, std::vector< int > &levels, NDM::Point &point)
Definition: Space.cc:133
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:37
Space()
Default Constructor.
Definition: Space.cc:8
std::vector< NDM::Axis > & axes()
Default space.
Definition: Space.hh:32
std::vector< NDM::Axis > mAxes
Vector of axis to be used for space.
Definition: Space.hh:36