4 #ifndef __UTIL_IMAGE_H__
5 # define __UTIL_IMAGE_H__
9 # include <OpenImageIO/imageio.h>
20 const size_t input_width,
21 const size_t input_height,
22 const size_t input_depth,
23 const size_t components,
26 size_t *output_height,
27 size_t *output_depth);
38 return (
float)value / 255.0f;
42 return (
float)value / 65535.0f;
61 else if (value > (1.0f - 0.5f / 255.0f)) {
64 return (
uchar)((255.0f * value) + 0.5f);
71 else if (value > (1.0f - 0.5f / 65535.0f)) {
74 return (
uint16_t)((65535.0f * value) + 0.5f);
#define CCL_NAMESPACE_END
T util_image_multiply_native(T a, T b)
float util_image_cast_to_float(T value)
T util_image_cast_from_float(float value)
CCL_NAMESPACE_BEGIN OIIO_NAMESPACE_USING void util_image_resize_pixels(const vector< T > &input_pixels, const size_t input_width, const size_t input_height, const size_t input_depth, const size_t components, vector< T > *output_pixels, size_t *output_width, size_t *output_height, size_t *output_depth)
ccl_device_inline half float_to_half_image(float f)
ccl_device_inline float half_to_float_image(half h)
static const pxr::TfToken b("b", pxr::TfToken::Immortal)