ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
MiniVec.h File Reference
#include <cmath>
Include dependency graph for MiniVec.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  cloudViewer::utility::MiniVec< T, N >
 

Namespaces

 cloudViewer
 Generic file read and write utility for python interface.
 
 cloudViewer::utility
 

Macros

#define FN_SPECIFIERS   inline
 
#define DEFINE_OPERATOR(op, opas)
 
#define DEFINE_OPERATOR(op)
 

Functions

template<int N>
MiniVec< float, N > cloudViewer::utility::floor (const MiniVec< float, N > &a)
 
template<int N>
MiniVec< double, N > cloudViewer::utility::floor (const MiniVec< double, N > &a)
 
template<int N>
MiniVec< float, N > cloudViewer::utility::ceil (const MiniVec< float, N > &a)
 
template<int N>
MiniVec< double, N > cloudViewer::utility::ceil (const MiniVec< double, N > &a)
 
template<class T , int N>
MiniVec< T, N > cloudViewer::utility::operator- (const MiniVec< T, N > &a)
 
template<class T , int N>
MiniVec< T, N > cloudViewer::utility::operator! (const MiniVec< T, N > &a)
 
template<class T , int N>
MiniVec< T, N > cloudViewer::utility::operator+ (const MiniVec< T, N > &a, const MiniVec< T, N > &b)
 
template<class T , int N>
void cloudViewer::utility::operator+= (MiniVec< T, N > &a, const MiniVec< T, N > &b)
 
template<class T , int N>
MiniVec< T, N > cloudViewer::utility::operator+ (const MiniVec< T, N > &a, T b)
 
template<class T , int N>
MiniVec< T, N > cloudViewer::utility::operator+ (T a, const MiniVec< T, N > &b)
 
template<class T , int N>
void cloudViewer::utility::operator+= (MiniVec< T, N > &a, T b)
 
template<class T , int N>
MiniVec< T, N > cloudViewer::utility::operator- (const MiniVec< T, N > &a, const MiniVec< T, N > &b)
 
template<class T , int N>
void cloudViewer::utility::operator-= (MiniVec< T, N > &a, const MiniVec< T, N > &b)
 
template<class T , int N>
MiniVec< T, N > cloudViewer::utility::operator- (const MiniVec< T, N > &a, T b)
 
template<class T , int N>
MiniVec< T, N > cloudViewer::utility::operator- (T a, const MiniVec< T, N > &b)
 
template<class T , int N>
void cloudViewer::utility::operator-= (MiniVec< T, N > &a, T b)
 
template<class T , int N>
MiniVec< T, N > cloudViewer::utility::operator* (const MiniVec< T, N > &a, const MiniVec< T, N > &b)
 
template<class T , int N>
void cloudViewer::utility::operator*= (MiniVec< T, N > &a, const MiniVec< T, N > &b)
 
template<class T , int N>
MiniVec< T, N > cloudViewer::utility::operator* (const MiniVec< T, N > &a, T b)
 
template<class T , int N>
MiniVec< T, N > cloudViewer::utility::operator* (T a, const MiniVec< T, N > &b)
 
template<class T , int N>
void cloudViewer::utility::operator*= (MiniVec< T, N > &a, T b)
 
template<class T , int N>
MiniVec< T, N > cloudViewer::utility::operator/ (const MiniVec< T, N > &a, const MiniVec< T, N > &b)
 
template<class T , int N>
void cloudViewer::utility::operator/= (MiniVec< T, N > &a, const MiniVec< T, N > &b)
 
template<class T , int N>
MiniVec< T, N > cloudViewer::utility::operator/ (const MiniVec< T, N > &a, T b)
 
template<class T , int N>
MiniVec< T, N > cloudViewer::utility::operator/ (T a, const MiniVec< T, N > &b)
 
template<class T , int N>
void cloudViewer::utility::operator/= (MiniVec< T, N > &a, T b)
 
template<class T , int N>
MiniVec< bool, N > cloudViewer::utility::operator< (const MiniVec< T, N > &a, const MiniVec< T, N > &b)
 
template<class T , int N>
MiniVec< bool, N > cloudViewer::utility::operator< (const MiniVec< T, N > &a, T b)
 
template<class T , int N>
MiniVec< T, N > cloudViewer::utility::operator< (T a, const MiniVec< T, N > &b)
 
template<class T , int N>
MiniVec< bool, N > cloudViewer::utility::operator<= (const MiniVec< T, N > &a, const MiniVec< T, N > &b)
 
template<class T , int N>
MiniVec< bool, N > cloudViewer::utility::operator<= (const MiniVec< T, N > &a, T b)
 
template<class T , int N>
MiniVec< T, N > cloudViewer::utility::operator<= (T a, const MiniVec< T, N > &b)
 
template<class T , int N>
MiniVec< bool, N > cloudViewer::utility::operator> (const MiniVec< T, N > &a, const MiniVec< T, N > &b)
 
template<class T , int N>
MiniVec< bool, N > cloudViewer::utility::operator> (const MiniVec< T, N > &a, T b)
 
template<class T , int N>
MiniVec< T, N > cloudViewer::utility::operator> (T a, const MiniVec< T, N > &b)
 
template<class T , int N>
MiniVec< bool, N > cloudViewer::utility::operator>= (const MiniVec< T, N > &a, const MiniVec< T, N > &b)
 
template<class T , int N>
MiniVec< bool, N > cloudViewer::utility::operator>= (const MiniVec< T, N > &a, T b)
 
template<class T , int N>
MiniVec< T, N > cloudViewer::utility::operator>= (T a, const MiniVec< T, N > &b)
 
template<class T , int N>
MiniVec< bool, N > cloudViewer::utility::operator== (const MiniVec< T, N > &a, const MiniVec< T, N > &b)
 
template<class T , int N>
MiniVec< bool, N > cloudViewer::utility::operator== (const MiniVec< T, N > &a, T b)
 
template<class T , int N>
MiniVec< T, N > cloudViewer::utility::operator== (T a, const MiniVec< T, N > &b)
 
template<class T , int N>
MiniVec< bool, N > cloudViewer::utility::operator!= (const MiniVec< T, N > &a, const MiniVec< T, N > &b)
 
template<class T , int N>
MiniVec< bool, N > cloudViewer::utility::operator!= (const MiniVec< T, N > &a, T b)
 
template<class T , int N>
MiniVec< T, N > cloudViewer::utility::operator!= (T a, const MiniVec< T, N > &b)
 
template<class T , int N>
MiniVec< bool, N > cloudViewer::utility::operator&& (const MiniVec< T, N > &a, const MiniVec< T, N > &b)
 
template<class T , int N>
MiniVec< bool, N > cloudViewer::utility::operator&& (const MiniVec< T, N > &a, T b)
 
template<class T , int N>
MiniVec< T, N > cloudViewer::utility::operator&& (T a, const MiniVec< T, N > &b)
 
template<class T , int N>
MiniVec< bool, N > cloudViewer::utility::operator|| (const MiniVec< T, N > &a, const MiniVec< T, N > &b)
 
template<class T , int N>
MiniVec< bool, N > cloudViewer::utility::operator|| (const MiniVec< T, N > &a, T b)
 
template<class T , int N>
MiniVec< T, N > cloudViewer::utility::operator|| (T a, const MiniVec< T, N > &b)
 

Macro Definition Documentation

◆ DEFINE_OPERATOR [1/2]

#define DEFINE_OPERATOR (   op)
Value:
template <class T, int N> \
FN_SPECIFIERS MiniVec<bool, N> operator op(const MiniVec<T, N>& a, \
const MiniVec<T, N>& b) { \
MiniVec<bool, N> c; \
for (int i = 0; i < N; ++i) c[i] = a[i] op b[i]; \
return c; \
} \
\
template <class T, int N> \
FN_SPECIFIERS MiniVec<bool, N> operator op(const MiniVec<T, N>& a, T b) { \
MiniVec<T, N> c; \
for (int i = 0; i < N; ++i) c[i] = a[i] op b; \
return c; \
} \
\
template <class T, int N> \
FN_SPECIFIERS MiniVec<T, N> operator op(T a, const MiniVec<T, N>& b) { \
MiniVec<bool, N> c; \
for (int i = 0; i < N; ++i) c[i] = a op b[i]; \
return c; \
}

Definition at line 156 of file MiniVec.h.

◆ DEFINE_OPERATOR [2/2]

#define DEFINE_OPERATOR (   op,
  opas 
)

Definition at line 156 of file MiniVec.h.

◆ FN_SPECIFIERS

#define FN_SPECIFIERS   inline

Definition at line 15 of file MiniVec.h.