Module exr::image [−][src]
Expand description
Data structures that represent a complete exr image. Contains generic structs that must be nested to obtain a complete image type.
For example, an rgba image containing multiple layers
can be represented using Image<Layers<SpecificChannels<MyPixelStorage>>>
.
An image containing a single layer with arbitrary channels and no deep data
can be represented using Image<Layer<AnyChannels<FlatSamples>>>
.
These and other predefined types are included in this module as
PixelImage
: A single layer, fixed set of arbitrary channels.PixelLayersImage
: Multiple layers, fixed set of arbitrary channels.RgbaImage
: A single layer, fixed set of channels: rgb, optional a.RgbaLayersImage
: Multiple layers, fixed set of channels: rgb, optional a.FlatImage
: Multiple layers, any channels, no deep data.AnyImage
: All supported data (multiple layers, arbitrary channels, no deep data yet)
You can also use your own types inside an image, for example if you want to use a custom sample storage.
This is the high-level interface for the pixels of an image.
See exr::blocks
module for a low-level interface.
Modules
crop | Crop away unwanted pixels. Includes automatic detection of bounding rectangle. Currently does not support deep data and resolution levels. |
pixel_vec | Provides a predefined pixel storage.
Currently only contains a simple flattened vector storage.
Use the functions |
read | Read an exr image. |
recursive | A generic wrapper which can be used to represent recursive types. Supports conversion from and to tuples of the same size. |
validate_results | Compare the result of a round trip test with the original method. Supports lossy compression methods. |
write | Write an exr image to a file. |
Structs
AnyChannel | A single arbitrary channel.
|
AnyChannels | A dynamic list of arbitrary channels.
|
Encoding | How the pixels are split up and compressed. |
FlatSampleIterator | Iterate over all channels of a single pixel in the image |
Image | The complete exr image.
|
Layer | A single Layer, including fancy attributes and compression settings.
|
RipMaps | In addition to the full resolution image,
this layer also contains smaller versions,
and each smaller version has further versions with varying aspect ratios.
|
SpecificChannels | A grid of pixels. The pixels are written to your custom pixel storage.
|
SpecificChannelsBuilder | Used to construct a |
Enums
Blocks | How the image pixels are split up into separate blocks. |
FlatSamples | A vector of non-deep values (one value per pixel per channel).
Stores row after row in a single vector.
The precision of all values is either |
Levels | One or multiple resolution levels of the same image.
|
Traits
CheckDuplicates | This check can be executed at compile time
if the channel names are |
IntoSample | Convert this type into one of the known sample types. Also specify the preferred native type, which dictates the default sample type in the image. |
Type Definitions
AnyImage | This image type contains all supported exr features and can represent almost any image. It currently does not support deep data yet. |
FlatImage | This image type contains the most common exr features and can represent almost any plain image. Does not contain resolution levels. Does not support deep data. |
FlatSamplesPixel | A list of samples representing a single pixel. Does not heap allocate for images with 8 or fewer channels. |
Layers | A list of layers. |
LevelMaps | A list of resolution levels. |
PixelImage | This image type contains a single layer containing a user-defined type of pixels. |
PixelLayersImage | This image type contains multiple layers, with each layer containing a user-defined type of pixels. |
RgbChannels | Contains information about the channels in an rgb image, in the order |
RgbaChannels | Contains information about the channels in an rgba image, in the order |
RgbaImage | This image type contains a single layer containing a user-defined type of rgba pixels. |
RgbaLayersImage | This image type contains multiple layers, with each layer containing a user-defined type of rgba pixels. |