Open3D (C++ API)  0.18.0+5c982c7
Data Structures | Namespaces | Macros | Functions
MiniVec.h File Reference

(5c982c7 (Thu Apr 18 12:15:13 2024 -0700))

#include <cmath>

Go to the source code of this file.

Data Structures

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

Namespaces

 open3d
 
 open3d::utility
 

Macros

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

Functions

template<int N>
FN_SPECIFIERS MiniVec< float, N > open3d::utility::floor (const MiniVec< float, N > &a)
 
template<int N>
FN_SPECIFIERS MiniVec< double, N > open3d::utility::floor (const MiniVec< double, N > &a)
 
template<int N>
FN_SPECIFIERS MiniVec< float, N > open3d::utility::ceil (const MiniVec< float, N > &a)
 
template<int N>
FN_SPECIFIERS MiniVec< double, N > open3d::utility::ceil (const MiniVec< double, N > &a)
 
template<class T , int N>
FN_SPECIFIERS MiniVec< T, N > open3d::utility::operator- (const MiniVec< T, N > &a)
 
template<class T , int N>
FN_SPECIFIERS MiniVec< T, N > open3d::utility::operator! (const MiniVec< T, N > &a)
 

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; \
}

◆ DEFINE_OPERATOR [2/2]

#define DEFINE_OPERATOR (   op,
  opas 
)

◆ FN_SPECIFIERS

#define FN_SPECIFIERS   inline