codac 1.5.6
Loading...
Searching...
No Matches
codac2_AbstractSlice.h
Go to the documentation of this file.
1
12#ifndef __CODAC2_ABSTRACTSLICE_H__
13#define __CODAC2_ABSTRACTSLICE_H__
14
15#include <list>
16#include <variant>
17#include <memory>
18#include "codac_Interval.h"
21#include "codac_Exception.h"
23
24namespace codac2
25{
26 using codac::Interval;
28
29 class TSlice;
30
31 class AbstractSlice
32 {
33 public:
34
35 AbstractSlice(const AbstractSlicedTube& tubevector, const std::list<TSlice>::iterator& _it_tslice);
36 virtual std::shared_ptr<AbstractSlice> duplicate() const = 0;
37 virtual size_t size() const = 0;
38 virtual void set_unbounded() = 0;
39
40 const Interval& t0_tf() const;
41 const TSlice& tslice() const;
42
43 const std::shared_ptr<AbstractSlice> prev_abstract_slice_ptr() const;
44 const std::shared_ptr<AbstractSlice> next_abstract_slice_ptr() const;
45
46
47 protected:
48
49 const AbstractSlicedTube& _tubevector;
50 std::list<TSlice>::iterator _it_tslice;
51
52 friend class TDomain;
53 };
54}
55
56#endif
n-dimensional trajectory , defined as a temporal map of vector values
Definition codac_TrajectoryVector.h:38