14#include <lagrange/fs/filesystem.h>
15#include <lagrange/image/ImageView.h>
16#include <lagrange/image_io/api.h>
26 image::ImagePrecision precision = image::ImagePrecision::unknown;
27 image::ImageChannel channel = image::ImageChannel::unknown;
28 std::shared_ptr<image::ImageStorage> storage =
nullptr;
49 if (!result.valid)
return false;
55 result.storage->get_full_size()(0) /
sizeof(T),
56 result.storage->get_full_size()(1),
63 bool valid_conversion =
false;
64#define LAGRANGE_TMP(PRECISION, CHANNEL, TYPE) \
65 if (image::ImagePrecision::PRECISION == result.precision && \
66 image::ImageChannel::CHANNEL == result.channel) { \
67 image::ImageView<TYPE> temp_image_view( \
69 result.storage->get_full_size()(0) / sizeof(TYPE), \
70 result.storage->get_full_size()(1), \
75 valid_conversion = img.convert_from(temp_image_view, 1); \
77#define LAGRANGE_TMP_COMMA ,
78 LAGRANGE_TMP(uint8, one,
unsigned char)
79 else LAGRANGE_TMP(uint8, three, Eigen::Matrix<unsigned char LAGRANGE_TMP_COMMA 3 LAGRANGE_TMP_COMMA 1>)
else LAGRANGE_TMP(
84 unsigned char LAGRANGE_TMP_COMMA 4 LAGRANGE_TMP_COMMA 1>) else LAGRANGE_TMP(float32, one,
float) else LAGRANGE_TMP(float32, three, Eigen::Vector3f) else LAGRANGE_TMP(float32, four, Eigen::Vector4f) else LAGRANGE_TMP(float64, one,
double) else LAGRANGE_TMP(float64, three, Eigen::Vector3d) else LAGRANGE_TMP(float64, four, Eigen::Vector4d) return valid_conversion;
86#undef LAGRANGE_TMP_COMMA
Definition: ImageView.h:56
Main namespace for Lagrange.
Definition: AABBIGL.h:30
Definition: ImageType.h:58
Definition: load_image.h:22