288 float pixelaspectratio,
290 float screenWindowWidth,
EXR_EXPORT exr_result_t exr_attr_set_envmap(exr_context_t ctxt, int part_index, const char *name, exr_envmap_t emap)
EXR_EXPORT exr_result_t exr_get_screen_window_center(exr_const_context_t ctxt, int part_index, exr_attr_v2f_t *wc)
Retrieve the screen oriented window center for the specified part (use 0 for single part images)...
EXR_EXPORT exr_result_t exr_attr_get_m33d(exr_const_context_t ctxt, int part_index, const char *name, exr_attr_m33d_t *out)
EXR_EXPORT exr_result_t exr_attr_set_tiledesc(exr_context_t ctxt, int part_index, const char *name, const exr_attr_tiledesc_t *td)
EXR_EXPORT exr_result_t exr_get_chunk_count(exr_const_context_t ctxt, int part_index, int32_t *out)
EXR_EXPORT exr_result_t exr_attr_set_user(exr_context_t ctxt, int part_index, const char *name, const char *type, int32_t size, const void *out)
EXR_EXPORT exr_result_t exr_get_level_sizes(exr_const_context_t ctxt, int part_index, int levelx, int levely, int32_t *levw, int32_t *levh)
Query the data sizes for a particular level in the specified part.
EXR_EXPORT exr_result_t exr_attr_set_v2f(exr_context_t ctxt, int part_index, const char *name, const exr_attr_v2f_t *v)
EXR_EXPORT exr_result_t exr_attr_set_timecode(exr_context_t ctxt, int part_index, const char *name, const exr_attr_timecode_t *tc)
Struct to hold a floating-point box/region definition.
EXR_EXPORT exr_result_t exr_attr_set_v3f(exr_context_t ctxt, int part_index, const char *name, const exr_attr_v3f_t *v)
Struct to hold an integer box/region definition.
EXR_EXPORT exr_result_t exr_attr_get_v2f(exr_const_context_t ctxt, int part_index, const char *name, exr_attr_v2f_t *out)
EXR_EXPORT exr_result_t exr_attr_get_float(exr_const_context_t ctxt, int part_index, const char *name, float *out)
EXR_EXPORT exr_result_t exr_attr_set_int(exr_context_t ctxt, int part_index, const char *name, int32_t val)
Struct holding base tiledesc attribute type defined in spec.
EXR_EXPORT exr_result_t exr_attr_get_lineorder(exr_const_context_t ctxt, int part_index, const char *name, exr_lineorder_t *out)
EXR_EXPORT exr_result_t exr_get_data_window(exr_const_context_t ctxt, int part_index, exr_attr_box2i_t *out)
Retrieve the data window for the specified part.
EXR_EXPORT exr_result_t exr_attr_get_double(exr_const_context_t ctxt, int part_index, const char *name, double *out)
EXR_EXPORT exr_result_t exr_attr_set_v2i(exr_context_t ctxt, int part_index, const char *name, const exr_attr_v2i_t *v)
EXR_EXPORT exr_result_t exr_attr_get_string(exr_const_context_t ctxt, int part_index, const char *name, int32_t *length, const char **out)
Zero-copy query of string value.
Struct to hold an integer ratio value.
EXR_EXPORT exr_result_t exr_attr_get_preview(exr_const_context_t ctxt, int part_index, const char *name, exr_attr_preview_t *out)
EXR_EXPORT exr_result_t exr_attr_get_v3d(exr_const_context_t ctxt, int part_index, const char *name, exr_attr_v3d_t *out)
EXR_EXPORT exr_result_t exr_attr_set_double(exr_context_t ctxt, int part_index, const char *name, double val)
EXR_EXPORT exr_result_t exr_attr_set_keycode(exr_context_t ctxt, int part_index, const char *name, const exr_attr_keycode_t *kc)
Struct to hold a 3-element integer vector.
exr_perceptual_treatment_t
EXR_EXPORT exr_result_t exr_attr_set_v3d(exr_context_t ctxt, int part_index, const char *name, const exr_attr_v3d_t *v)
EXR_EXPORT exr_result_t exr_attr_set_box2i(exr_context_t ctxt, int part_index, const char *name, const exr_attr_box2i_t *val)
EXR_EXPORT exr_result_t exr_set_chunk_count(exr_context_t ctxt, int part_index, int32_t val)
EXR_EXPORT exr_result_t exr_get_display_window(exr_const_context_t ctxt, int part_index, exr_attr_box2i_t *out)
Retrieve the display window for the specified part.
EXR_EXPORT exr_result_t exr_attr_get_compression(exr_const_context_t ctxt, int part_index, const char *name, exr_compression_t *out)
GLuint GLsizei GLsizei * length
Struct to hold a 3-element 32-bit float vector.
EXR_EXPORT exr_result_t exr_set_compression(exr_context_t ctxt, int part_index, exr_compression_t ctype)
Set the compression method used for the specified part.
EXR_EXPORT exr_result_t exr_set_zip_compression_level(exr_context_t ctxt, int part_index, int level)
Set the zip compression method used for the specified part.
EXR_EXPORT exr_result_t exr_get_name(exr_const_context_t ctxt, int part_index, const char **out)
Query the part name for the specified part.
EXR_EXPORT exr_result_t exr_attr_get_v3f(exr_const_context_t ctxt, int part_index, const char *name, exr_attr_v3f_t *out)
Struct to hold a 64-bit floating-point 4x4 matrix.
EXR_EXPORT exr_result_t exr_set_channels(exr_context_t ctxt, int part_index, const exr_attr_chlist_t *channels)
Copy the channels from another source.
EXR_EXPORT exr_result_t exr_initialize_required_attr_simple(exr_context_t ctxt, int part_index, int32_t width, int32_t height, exr_compression_t ctype)
Initialize all required attributes to default values:
const struct _priv_exr_context_t * exr_const_context_t
EXR_EXPORT exr_result_t exr_attr_get_timecode(exr_const_context_t ctxt, int part_index, const char *name, exr_attr_timecode_t *out)
EXR_EXPORT exr_result_t exr_get_pixel_aspect_ratio(exr_const_context_t ctxt, int part_index, float *par)
Retrieve the pixel aspect ratio for the specified part (use 0 for single part images).
EXR_EXPORT exr_result_t exr_get_dwa_compression_level(exr_const_context_t ctxt, int part_index, float *level)
Retrieve the dwa compression level used for the specified part.
EXR_EXPORT exr_result_t exr_get_channels(exr_const_context_t ctxt, int part_index, const exr_attr_chlist_t **chlist)
Retrieve the list of channels.
EXR_EXPORT exr_result_t exr_set_screen_window_width(exr_context_t ctxt, int part_index, float ssw)
Set the screen oriented window width for the specified part (use 0 for single part images)...
EXR_EXPORT exr_result_t exr_initialize_required_attr(exr_context_t ctxt, int part_index, const exr_attr_box2i_t *displayWindow, const exr_attr_box2i_t *dataWindow, float pixelaspectratio, const exr_attr_v2f_t *screenWindowCenter, float screenWindowWidth, exr_lineorder_t lineorder, exr_compression_t ctype)
Initialize all required attributes for all files.
EXR_EXPORT exr_result_t exr_get_chunk_unpacked_size(exr_const_context_t ctxt, int part_index, uint64_t *out)
EXR_EXPORT exr_result_t exr_get_tile_descriptor(exr_const_context_t ctxt, int part_index, uint32_t *xsize, uint32_t *ysize, exr_tile_level_mode_t *level, exr_tile_round_mode_t *round)
Retrieve the tiling info for a tiled part (use 0 for single part images).
EXR_EXPORT exr_result_t exr_get_storage(exr_const_context_t ctxt, int part_index, exr_storage_t *out)
Query the storage type for the specified part.
EXR_EXPORT exr_result_t exr_attr_get_channels(exr_const_context_t ctxt, int part_index, const char *name, const exr_attr_chlist_t **chlist)
Zero-copy query of channel data.
GLint GLsizei GLsizei height
EXR_EXPORT exr_result_t exr_set_pixel_aspect_ratio(exr_context_t ctxt, int part_index, float par)
Set the pixel aspect ratio for the specified part (use 0 for single part images). ...
EXR_EXPORT exr_result_t exr_attr_get_box2f(exr_const_context_t ctxt, int part_index, const char *name, exr_attr_box2f_t *outval)
EXR_EXPORT exr_result_t exr_attr_set_m33f(exr_context_t ctxt, int part_index, const char *name, const exr_attr_m33f_t *m)
EXR_EXPORT exr_result_t exr_attr_set_channels(exr_context_t ctxt, int part_index, const char *name, const exr_attr_chlist_t *channels)
This allows one to quickly copy the channels from one file to another.
EXR_EXPORT exr_result_t exr_attr_set_chromaticities(exr_context_t ctxt, int part_index, const char *name, const exr_attr_chromaticities_t *chroma)
EXR_EXPORT exr_result_t exr_attr_set_compression(exr_context_t ctxt, int part_index, const char *name, exr_compression_t comp)
EXR_EXPORT exr_result_t exr_copy_unset_attributes(exr_context_t ctxt, int part_index, exr_const_context_t source, int src_part_index)
Copy the attributes from one part to another.
EXR_EXPORT exr_result_t exr_get_count(exr_const_context_t ctxt, int *count)
Query how many parts are in the file.
EXR_EXPORT exr_result_t exr_set_tile_descriptor(exr_context_t ctxt, int part_index, uint32_t x_size, uint32_t y_size, exr_tile_level_mode_t level_mode, exr_tile_round_mode_t round_mode)
Set the tiling info for a tiled part (use 0 for single part images).
Struct to hold a 32-bit floating-point 4x4 matrix.
GLsizei GLsizei GLchar * source
EXR_EXPORT exr_result_t exr_attr_set_float(exr_context_t ctxt, int part_index, const char *name, float val)
exr_tile_level_mode_t
Enum representing what type of tile information is contained.
struct _priv_exr_context_t * exr_context_t
struct to hold a 64-bit floating-point 3x3 matrix.
EXR_EXPORT exr_result_t exr_attr_get_keycode(exr_const_context_t ctxt, int part_index, const char *name, exr_attr_keycode_t *out)
EXR_EXPORT exr_result_t exr_attr_get_tiledesc(exr_const_context_t ctxt, int part_index, const char *name, exr_attr_tiledesc_t *out)
EXR_EXPORT exr_result_t exr_get_tile_levels(exr_const_context_t ctxt, int part_index, int32_t *levelsx, int32_t *levelsy)
Query how many levels are in the specified part.
EXR_EXPORT exr_result_t exr_attr_set_string(exr_context_t ctxt, int part_index, const char *name, const char *s)
Struct to hold a 2-element 64-bit float vector.
EXR_EXPORT exr_result_t exr_attr_get_float_vector(exr_const_context_t ctxt, int part_index, const char *name, int32_t *sz, const float **out)
Zero-copy query of float data.
EXR_EXPORT exr_result_t exr_set_version(exr_context_t ctxt, int part_index, int32_t val)
GLuint const GLchar * name
EXR_EXPORT exr_result_t exr_attr_set_preview(exr_context_t ctxt, int part_index, const char *name, const exr_attr_preview_t *p)
EXR_EXPORT exr_result_t exr_attr_set_box2f(exr_context_t ctxt, int part_index, const char *name, const exr_attr_box2f_t *val)
vfloat4 round(const vfloat4 &a)
EXR_EXPORT int exr_set_data_window(exr_context_t ctxt, int part_index, const exr_attr_box2i_t *dw)
Set the data window for the specified part.
EXR_EXPORT exr_result_t exr_attr_get_envmap(exr_const_context_t ctxt, int part_index, const char *name, exr_envmap_t *out)
EXR_EXPORT exr_result_t exr_attr_get_box2i(exr_const_context_t ctxt, int part_index, const char *name, exr_attr_box2i_t *outval)
EXR_EXPORT int exr_set_display_window(exr_context_t ctxt, int part_index, const exr_attr_box2i_t *dw)
Set the display window for the specified part.
EXR_EXPORT exr_result_t exr_get_scanlines_per_chunk(exr_const_context_t ctxt, int part_index, int32_t *out)
EXR_EXPORT exr_result_t exr_get_version(exr_const_context_t ctxt, int part_index, int32_t *out)
Struct to define attributes of an embedded preview image.
EXR_EXPORT exr_result_t exr_set_name(exr_context_t ctxt, int part_index, const char *val)
struct to hold a 32-bit floating-point 3x3 matrix.
exr_tile_round_mode_t
Enum representing how to scale positions between levels.
EXR_EXPORT exr_result_t exr_attr_set_m44d(exr_context_t ctxt, int part_index, const char *name, const exr_attr_m44d_t *m)
EXR_EXPORT exr_result_t exr_attr_set_v2d(exr_context_t ctxt, int part_index, const char *name, const exr_attr_v2d_t *v)
Struct to hold timecode information.
EXR_EXPORT exr_result_t exr_attr_get_v2d(exr_const_context_t ctxt, int part_index, const char *name, exr_attr_v2d_t *out)
EXR_EXPORT exr_result_t exr_attr_get_m33f(exr_const_context_t ctxt, int part_index, const char *name, exr_attr_m33f_t *out)
EXR_EXPORT exr_result_t exr_attr_get_string_vector(exr_const_context_t ctxt, int part_index, const char *name, int32_t *size, const char **out)
Zero-copy query of string data.
EXR_EXPORT exr_result_t exr_attr_get_chromaticities(exr_const_context_t ctxt, int part_index, const char *name, exr_attr_chromaticities_t *chroma)
EXR_EXPORT exr_result_t exr_get_compression(exr_const_context_t ctxt, int part_index, exr_compression_t *compression)
Retrieve the compression method used for the specified part.
Storage, name and type information for an attribute.
EXR_EXPORT exr_result_t exr_get_zip_compression_level(exr_const_context_t ctxt, int part_index, int *level)
Retrieve the zip compression level used for the specified part.
EXR_EXPORT exr_result_t exr_get_lineorder(exr_const_context_t ctxt, int part_index, exr_lineorder_t *out)
Retrieve the line order for storing data in the specified part (use 0 for single part images)...
EXR_EXPORT exr_result_t exr_set_dwa_compression_level(exr_context_t ctxt, int part_index, float level)
Set the dwa compression method used for the specified part.
Struct to hold a 2-element integer vector.
EXR_EXPORT exr_result_t exr_attr_get_int(exr_const_context_t ctxt, int part_index, const char *name, int32_t *out)
EXR_EXPORT exr_result_t exr_attr_get_m44f(exr_const_context_t ctxt, int part_index, const char *name, exr_attr_m44f_t *out)
EXR_EXPORT exr_result_t exr_attr_get_v2i(exr_const_context_t ctxt, int part_index, const char *name, exr_attr_v2i_t *out)
Struct to hold a 2-element 32-bit float vector.
EXR_EXPORT exr_result_t exr_attr_set_float_vector(exr_context_t ctxt, int part_index, const char *name, int32_t sz, const float *vals)
EXR_EXPORT int exr_add_channel(exr_context_t ctxt, int part_index, const char *name, exr_pixel_type_t ptype, exr_perceptual_treatment_t percept, int32_t xsamp, int32_t ysamp)
Define a new channel to the output file part.
EXR_EXPORT exr_result_t exr_attr_set_rational(exr_context_t ctxt, int part_index, const char *name, const exr_attr_rational_t *r)
EXR_EXPORT exr_result_t exr_attr_get_v3i(exr_const_context_t ctxt, int part_index, const char *name, exr_attr_v3i_t *out)
EXR_EXPORT exr_result_t exr_attr_get_m44d(exr_const_context_t ctxt, int part_index, const char *name, exr_attr_m44d_t *out)
EXR_EXPORT exr_result_t exr_get_tile_sizes(exr_const_context_t ctxt, int part_index, int levelx, int levely, int32_t *tilew, int32_t *tileh)
Query the tile size for a particular level in the specified part.
EXR_EXPORT exr_result_t exr_attr_set_m33d(exr_context_t ctxt, int part_index, const char *name, const exr_attr_m33d_t *m)
Struct to hold keycode information.
Struct to hold color chromaticities to interpret the tristimulus color values in the image data...
EXR_EXPORT int exr_set_screen_window_center(exr_context_t ctxt, int part_index, const exr_attr_v2f_t *wc)
Set the screen oriented window center for the specified part (use 0 for single part images)...
EXR_EXPORT exr_result_t exr_attr_set_string_vector(exr_context_t ctxt, int part_index, const char *name, int32_t size, const char **sv)
EXR_EXPORT exr_result_t exr_add_part(exr_context_t ctxt, const char *partname, exr_storage_t type, int *new_index)
Define a new part in the file.
EXR_EXPORT exr_result_t exr_set_lineorder(exr_context_t ctxt, int part_index, exr_lineorder_t lo)
Set the line order for storing data in the specified part (use 0 for single part images).
EXR_EXPORT exr_result_t exr_attr_set_v3i(exr_context_t ctxt, int part_index, const char *name, const exr_attr_v3i_t *v)
exr_attribute_type_t
Built-in/native attribute type enum.
EXR_EXPORT exr_result_t exr_attr_set_lineorder(exr_context_t ctxt, int part_index, const char *name, exr_lineorder_t lo)
exr_pixel_type_t
Enum capturing the underlying data type on a channel.
EXR_EXPORT exr_result_t exr_attr_get_rational(exr_const_context_t ctxt, int part_index, const char *name, exr_attr_rational_t *out)
EXR_EXPORT exr_result_t exr_attr_set_m44f(exr_context_t ctxt, int part_index, const char *name, const exr_attr_m44f_t *m)
ImageBuf OIIO_API channels(const ImageBuf &src, int nchannels, cspan< int > channelorder, cspan< float > channelvalues={}, cspan< std::string > newchannelnames={}, bool shuffle_channel_names=false, int nthreads=0)
EXR_EXPORT exr_result_t exr_get_screen_window_width(exr_const_context_t ctxt, int part_index, float *out)
Retrieve the screen oriented window width for the specified part (use 0 for single part images)...
Struct to hold a 3-element 64-bit float vector.
EXR_EXPORT exr_result_t exr_attr_get_user(exr_const_context_t ctxt, int part_index, const char *name, const char **type, int32_t *size, const void **out)