48 value_.d =
static_cast<double>(v);
52 value_.d =
static_cast<double>(v);
56 value_.i =
static_cast<int64_t
>(v);
60 value_.i =
static_cast<int64_t
>(v);
64 value_.i =
static_cast<int64_t
>(v);
68 value_.i =
static_cast<int64_t
>(v);
76 template <
typename T =
int64_t>
78 typename std::enable_if<!std::is_same<T, long>::value>::
type* = 0) {
80 value_.i =
static_cast<int64_t
>(v);
84 value_.i =
static_cast<int64_t
>(v);
88 value_.i =
static_cast<int64_t
>(v);
92 value_.i =
static_cast<int64_t
>(v);
98 if (v <= static_cast<uint64_t>(std::numeric_limits<int64_t>::max())) {
99 value_.i =
static_cast<int64_t
>(v);
105 value_.i = -
static_cast<int64_t
>(
106 std::numeric_limits<uint64_t>::max() - v) -
112 value_.b =
static_cast<bool>(v);
145 template <
typename T>
148 return static_cast<T
>(value_.d);
150 return static_cast<T
>(value_.i);
152 return static_cast<T
>(value_.b);
159 const std::string& error_msg)
const {
160 if (scalar_type_ != other.scalar_type_) {
161 if (error_msg.empty()) {
172 std::string scalar_type_str;
173 std::string value_str;
175 scalar_type_str =
"Double";
176 value_str = std::to_string(value_.d);
178 scalar_type_str =
"Int64";
179 value_str = std::to_string(value_.i);
181 scalar_type_str =
"Bool";
182 value_str = value_.b ?
"true" :
"false";
186 return scalar_type_str +
":" + value_str;
189 template <
typename T>
192 return value_.d == value;
194 return value_.i == value;
213 value_.b == other.value_.b;
Scalar(int32_t v)
Definition: Scalar.h:62
bool IsBool() const
Definition: Scalar.h:117
const char const char value recording_handle imu_sample recording_handle uint8_t size_t data_size k4a_record_configuration_t config target_format k4a_capture_t capture_handle k4a_imu_sample_t imu_sample playback_handle k4a_logging_message_cb_t void min_level device_handle k4a_imu_sample_t timeout_in_ms capture_handle capture_handle capture_handle image_handle temperature_c k4a_image_t image_handle uint8_t image_handle image_handle image_handle image_handle uint32_t
Definition: K4aPlugin.cpp:557
Scalar(int64_t v)
Definition: Scalar.h:66
const char const char value recording_handle imu_sample recording_handle uint8_t size_t data_size k4a_record_configuration_t config target_format k4a_capture_t capture_handle k4a_imu_sample_t imu_sample playback_handle k4a_logging_message_cb_t void min_level device_handle k4a_imu_sample_t int32_t
Definition: K4aPlugin.cpp:398
Scalar(uint16_t v)
Definition: Scalar.h:86
Scalar(bool v)
Definition: Scalar.h:110
T To() const
To<T>() does not check for scalar type and overflows.
Definition: Scalar.h:146
Scalar(uint32_t v)
Definition: Scalar.h:90
Scalar(uint64_t v)
Definition: Scalar.h:94
Scalar(uint8_t v)
Definition: Scalar.h:82
Scalar(int16_t v)
Definition: Scalar.h:58
const char const char value recording_handle imu_sample recording_handle uint8_t size_t data_size k4a_record_configuration_t config target_format k4a_capture_t capture_handle k4a_imu_sample_t imu_sample uint64_t
Definition: K4aPlugin.cpp:352
bool IsDouble() const
Definition: Scalar.h:115
bool Equal(bool value) const
Definition: Scalar.h:202
bool IsInt64() const
Definition: Scalar.h:116
double GetDouble() const
Definition: Scalar.h:121
bool GetBool() const
Definition: Scalar.h:137
Scalar(double v)
Definition: Scalar.h:50
Scalar(float v)
Definition: Scalar.h:46
Definition: PinholeCameraIntrinsic.cpp:35
bool Equal(T value) const
Definition: Scalar.h:190
ScalarType
Definition: Scalar.h:44
bool Equal(Scalar other) const
Definition: Scalar.h:206
Scalar(int8_t v)
Definition: Scalar.h:54
Scalar(long v, typename std::enable_if<!std::is_same< T, long >::value >::type *=0)
Definition: Scalar.h:77
std::string ToString() const
Definition: Scalar.h:171
int64_t GetInt64() const
Definition: Scalar.h:129
#define LogError(...)
Definition: Logging.h:72
void AssertSameScalarType(Scalar other, const std::string &error_msg) const
Definition: Scalar.h:158