ndm 0.2.5
Loading...
Searching...
No Matches
Space.hh
1#pragma once
2
3#include <vector>
4#include "ndm.hh"
5#include "Axis.hh"
6#include "Point.pb.h"
7namespace NDM {
8
16
17class Space {
18
19public:
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
35private:
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
Axis object in n-dimensional space.
Definition Axis.hh:12
Space object in n-dimensional space.
Definition Space.hh:17
virtual ~Space()
Default Destructor.
Definition Space.cc:14
void find_point(std::vector< int > &coordinates, std::vector< int > &levels, NDM::Point &point)
Definition Space.cc:133
Axis & axis(int id)
Definition Space.cc:39
Space()
Default Constructor.
Definition Space.cc:8
std::vector< std::string > mTmpPaths
Temporary vector storing generated paths for points.
Definition Space.hh:39
Point mTmpPoint
Temporary Point Object.
Definition Space.hh:38
void print() const
Definition Space.cc:21
std::vector< NDM::Axis > & axes()
Default space.
Definition Space.hh:32
void add(NDM::Axis a)
Definition Space.cc:31
std::vector< std::vector< double > > mTmpMins
Temporary vector storing value of minimums of axes.
Definition Space.hh:37
void points(std::vector< int > levels, std::vector< NDM::Point > &point, int idAxis=0)
Definition Space.cc:74
std::vector< NDM::Axis > mAxes
Vector of axis to be used for space.
Definition Space.hh:36
std::string get_full_path(std::vector< std::string > &paths)
Definition Space.cc:47