23#if defined(WITH_OPENCOLORIO)
24 OCIO_NAMESPACE::PackedImageDesc image_desc_;
26 static OCIO_NAMESPACE::BitDepth convert_bit_depth(
const BitDepth bit_depth)
30 return OCIO_NAMESPACE::BIT_DEPTH_UNKNOWN;
32 return OCIO_NAMESPACE::BIT_DEPTH_F32;
35 return OCIO_NAMESPACE::BIT_DEPTH_UNKNOWN;
38 static BitDepth convert_bit_depth(
const OCIO_NAMESPACE::BitDepth bit_depth)
41 case OCIO_NAMESPACE::BIT_DEPTH_UNKNOWN:
43 case OCIO_NAMESPACE::BIT_DEPTH_F32:
52 void *data_ =
nullptr;
55 size_t num_channels_ = 0;
57 size_t chan_stride_in_bytes_ = 0;
58 size_t x_stride_in_bytes_ = 0;
59 size_t y_stride_in_bytes_ = 0;
66 const size_t num_channels,
68 const size_t chan_stride_in_bytes,
69 const size_t x_stride_in_bytes,
70 const size_t y_stride_in_bytes)
71#if defined(WITH_OPENCOLORIO)
76 convert_bit_depth(bit_depth),
84 num_channels_(num_channels),
85 bit_depth_(bit_depth),
86 chan_stride_in_bytes_(chan_stride_in_bytes),
87 x_stride_in_bytes_(x_stride_in_bytes),
88 y_stride_in_bytes_(y_stride_in_bytes)
93#if defined(WITH_OPENCOLORIO)
96 return image_desc_.getWidth();
100 return image_desc_.getHeight();
105 return image_desc_.getNumChannels();
110 return image_desc_.getData();
115 return convert_bit_depth(image_desc_.getBitDepth());
120 return image_desc_.getChanStrideBytes();
124 return image_desc_.getXStrideBytes();
128 return image_desc_.getYStrideBytes();
131 operator const OCIO_NAMESPACE::PackedImageDesc &()
const
147 return num_channels_;
162 return chan_stride_in_bytes_;
166 return x_stride_in_bytes_;
170 return y_stride_in_bytes_;
PackedImage(void *data, const size_t width, const size_t height, const size_t num_channels, const BitDepth bit_depth, const size_t chan_stride_in_bytes, const size_t x_stride_in_bytes, const size_t y_stride_in_bytes)