![]() |
ACloudViewer
3.9.4
A Modern Library for 3D Data Processing
|
#include <Scalar.h>
Public Types | |
| enum class | ScalarType { Double , Int64 , Bool } |
Public Member Functions | |
| Scalar (float v) | |
| Scalar (double v) | |
| Scalar (int8_t v) | |
| Scalar (int16_t v) | |
| Scalar (int32_t v) | |
| Scalar (int64_t v) | |
| template<typename T = int64_t> | |
| Scalar (long v, typename std::enable_if<!std::is_same< T, long >::value >::type *=0) | |
| Scalar (uint8_t v) | |
| Scalar (uint16_t v) | |
| Scalar (uint32_t v) | |
| Scalar (uint64_t v) | |
| Scalar (bool v) | |
| bool | IsDouble () const |
| bool | IsInt64 () const |
| bool | IsBool () const |
| double | GetDouble () const |
| int64_t | GetInt64 () const |
| bool | GetBool () const |
| template<typename T > | |
| T | To () const |
| To<T>() does not check for scalar type and overflows. More... | |
| void | AssertSameScalarType (Scalar other, const std::string &error_msg) const |
| std::string | ToString () const |
| template<typename T > | |
| bool | Equal (T value) const |
| bool | Equal (bool value) const |
| bool | Equal (Scalar other) const |
Scalar is a stores one of {double, int64, bool}. Typically Scalar is used to accept C++ scalar arguments of different types via implicit conversion constructor. Doing so can avoid the need for templates.
|
strong |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 140 of file Scalar.h.
References LogError, and ToString().
Referenced by cloudViewer::core::Tensor::Arange().
|
inline |
|
inline |
Definition at line 188 of file Scalar.h.
References Bool, Double, Equal(), GetDouble(), GetInt64(), Int64, and LogError.
|
inline |
|
inline |
|
inline |
Returns double value from Scalar. Only works when scalar_type_ is ScalarType::Double.
Definition at line 103 of file Scalar.h.
References IsDouble(), and LogError.
Referenced by Equal().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
To<T>() does not check for scalar type and overflows.
Definition at line 128 of file Scalar.h.
References Bool, Double, Int64, and LogError.
Referenced by cloudViewer::core::Tensor::Add(), cloudViewer::core::Tensor::Add_(), cloudViewer::core::Tensor::Arange(), cloudViewer::core::Tensor::Clip_(), cloudViewer::core::Tensor::Div(), cloudViewer::core::Tensor::Div_(), cloudViewer::core::Tensor::Eq(), cloudViewer::core::Tensor::Eq_(), cloudViewer::core::Tensor::Ge(), cloudViewer::core::Tensor::Ge_(), cloudViewer::core::Tensor::Gt(), cloudViewer::core::Tensor::Gt_(), cloudViewer::core::Tensor::Le(), cloudViewer::core::Tensor::Le_(), cloudViewer::core::Tensor::LogicalAnd(), cloudViewer::core::Tensor::LogicalAnd_(), cloudViewer::core::Tensor::LogicalOr(), cloudViewer::core::Tensor::LogicalOr_(), cloudViewer::core::Tensor::LogicalXor(), cloudViewer::core::Tensor::LogicalXor_(), cloudViewer::core::Tensor::Lt(), cloudViewer::core::Tensor::Lt_(), cloudViewer::core::Tensor::Mul(), cloudViewer::core::Tensor::Mul_(), cloudViewer::core::Tensor::Ne(), cloudViewer::core::Tensor::Ne_(), cloudViewer::core::Tensor::Sub(), and cloudViewer::core::Tensor::Sub_().
|
inline |
Definition at line 153 of file Scalar.h.
References Bool, Double, Int64, LogError, and patch::to_string().
Referenced by AssertSameScalarType().