tesseract++ 0.0.1
N-dimensional tensor library for embedded systems
Loading...
Searching...
No Matches
fused_vector.h
Go to the documentation of this file.
1#ifndef FUSEDVECTOR_H
2#define FUSEDVECTOR_H
3
4#include "fused_matrix.h"
5
6// Derived class: FusedVector
7template <typename T, my_size_t Size>
8class FusedVector : public FusedMatrix<T, Size, 1>
9{
10private:
12
13public:
14 using Base::Base; // Inherit constructors from FusedMatrix
15 using Base::operator=;
16
17 // TODO: Add transfomation funtions
18
20 {
21 if (this->getDim(0) == 1)
22 {
23 return Base::operator()(0, i);
24 }
25 else
26 {
27 return Base::operator()(i, 0);
28 }
29 }
30
31 const T &operator()(my_size_t i) const
32 {
33 if (this->getDim(0) == 1)
34 {
35 return Base::operator()(0, i);
36 }
37 else
38 {
39 return Base::operator()(i, 0);
40 }
41 }
42};
43
44#endif // FUSEDVECTOR_H
Definition fused_matrix.h:12
T & operator()(my_size_t i, my_size_t j)
Definition fused_matrix.h:183
static FORCE_INLINE constexpr my_size_t getDim(my_size_t i) TESSERACT_CONDITIONAL_NOEXCEPT
Definition fused_tensor.h:804
Definition fused_vector.h:9
const T & operator()(my_size_t i) const
Definition fused_vector.h:31
T & operator()(my_size_t i)
Definition fused_vector.h:19
#define my_size_t
Size/index type used throughout the library.
Definition config.h:126