Classes | |
| struct | ImageHierarchy |
| class | ImageBaseInterface |
| class | ImageTextureInterface |
| class | ImageInterface |
| class | ImageLayerInterface |
| class | ImageFunctionsInterface |
| class | ImageChannelTypeInterface |
| class | ImageChannelInterface |
| struct | BlendPixelHandlerStruct |
| class | ImagePixelBlendInterface |
| struct | IsZeroInitialized< PixelFormatGroup > |
| struct | PixelConstBuffer |
| struct | PixelMutableBuffer |
| struct | ImageBufferTemplate< BASECLASS > |
| struct | ConvertFuncChannelHelper |
| class | PixelFormatInterface |
| class | PixelFormatsInterface |
| class | PixelFormatDynamicInterface |
| class | PixelFormatGroupInterface |
| class | PixelFormatIterator |
| class | PixelFormatIndexedColorInterface |
| class | VectorImageInterface |
Macros | |
| #define | MAXON_REGISTER_PIXELFORMAT(group, name, className) |
| #define | MAXON_REGISTER_PIXELFORMAT_X(group, name, className) |
| #define | MAXON_REGISTER_PIXELFORMAT_TEMPLATE(group, name, className) |
| #define | MAXON_REGISTER_PIXELFORMAT_TEMPLATE_X(group, name, className) |
| #define | REGISTER_PIXELFORMATGROUP(name) |
Typedefs | |
| using | Pix = UChar |
| using | Pix8u = UChar |
| using | Pix8s = Char |
| using | Pix16u = UInt16 |
| using | Pix16s = Int16 |
| using | Pix32u = UInt32 |
| using | Pix32s = Int32 |
| using | Pix32f = Float32 |
| using | Pix64f = Float64 |
| using | Pix16f = HalfFloat |
| using | BlendPixelHandlerRef = StrongRef< BlendPixelHandlerStruct > |
| using | ChannelOffsets = Block< const BITS > |
| using | ImageConstBuffer = ImageBufferTemplate< PixelConstBuffer > |
| using | ImageMutableBuffer = ImageBufferTemplate< PixelMutableBuffer > |
| using | CONVERTPIXELFUNC = Delegate< Result< void >(const PixelMutableBuffer &dst, Int count, const PixelConstBuffer &src, GETPIXELFLAGS flags)> |
| using | CONVERTPIXELFUNCSTATIC = Result< void >(*)(const PixelMutableBuffer &dst, Int count, const PixelConstBuffer &src, GETPIXELFLAGS flags, const ChannelOffsets &dstChannelOffset, const ChannelOffsets &srcChannelOffset) |
| using | ConvertFuncChannelHelperRef = StrongRef< ConvertFuncChannelHelper > |
Enumerations | |
| enum class | IMAGEHIERARCHY { TEXTURE , IMAGE , ALPHA , LAYER , MASK , DEEPIMAGEDATA , MAX_ELEMENTS } |
| enum class | TRANSFORM_COLORS_FLAGS { NONE , INVERSE_DIRECTION } |
| enum class | BLENDPIXELFLAGS { NONE } |
| enum class | CONVERTPIXELFLAGS { NONE , FORCECOLORPROFILECONVERSION } |
| enum class | GETPIXELHANDLERFLAGS { NONE , FORCECOLORPROFILECONVERSION , DEEPIMAGE , DONTAPPLYMASK , ALLOW_INVALIDATE_ALPHA } |
| enum class | GETPIXELFLAGS { NONE , DEEPIMAGE } |
| enum class | SETPIXELHANDLERFLAGS { NONE , FORCECOLORPROFILECONVERSION , DEEPIMAGE } |
| enum class | SETPIXELFLAGS { NONE , DEEPIMAGE } |
Functions | |
| enum maxon::IMAGEHIERARCHY | MAXON_ENUM_LIST (IMAGEHIERARCHY) |
| enum maxon::TRANSFORM_COLORS_FLAGS | MAXON_ENUM_FLAGS (TRANSFORM_COLORS_FLAGS) |
| const Class< ImagePixelStorage > & | GetNormalPixelStorageClass () |
| MAXON_REGISTRY (Class< ImageBaseRef >, ImageBaseClasses, "net.maxon.image.registry.imagebaseclasses") | |
| MAXON_REGISTRY (Class< ImageTextureRef >, ImageTextureClasses, "net.maxon.image.registry.imagetextureclasses") | |
| MAXON_REGISTRY (Class< ImageRef >, ImageClasses, "net.maxon.image.registry.imageclasses") | |
| MAXON_REGISTRY (Class< ImageLayerRef >, ImageLayerClasses, "net.maxon.image.registry.imagelayerclasses") | |
| ImageRef | GetImageOf (const ImageBaseRef &bmp) |
| ImageLayerRef | GetFirstAlphaOf (const ImageBaseRef &bmp) |
| Result< void > | ConvertImageSequence (const Url &sourceUrl, const Url &destPath, const String &destFilePatern, const Class< MediaOutputUrlRef > &exportClass, const ValueReceiver< const Url & > &resultFiles) |
| Result< void > | CopyImageData (const ImageBaseRef &source, const ImageRef &dest, Bool allowDifferentSize) |
| enum maxon::BLENDPIXELFLAGS | MAXON_ENUM_FLAGS (BLENDPIXELFLAGS) |
| MAXON_DATATYPE (BlendPixelHandlerRef, "net.maxon.datatype.blendpixelhandlerref", MAXON_IMPLEMENTATION_MODULE("net.maxon.image")) | |
| MAXON_REGISTRY (ImagePixelBlend, ImagePixelBlends, "net.maxon.render.registry.blendmodeclasses") | |
| enum maxon::CONVERTPIXELFLAGS | MAXON_ENUM_FLAGS (CONVERTPIXELFLAGS) |
| enum maxon::GETPIXELHANDLERFLAGS | MAXON_ENUM_FLAGS (GETPIXELHANDLERFLAGS) |
| enum maxon::GETPIXELFLAGS | MAXON_ENUM_FLAGS (GETPIXELFLAGS) |
| enum maxon::SETPIXELHANDLERFLAGS | MAXON_ENUM_FLAGS (SETPIXELHANDLERFLAGS) |
| enum maxon::SETPIXELFLAGS | MAXON_ENUM_FLAGS (SETPIXELFLAGS) |
| Result< CONVERTPIXELFUNC > | LambdaWrapper (CONVERTPIXELFUNCSTATIC func, const ChannelOffsets &dstChannelOffsets, const ChannelOffsets &srcChannelOffsets) |
| MAXON_DECLARATION (Class< PixelFormat >, PixelFormatBaseClass, "net.maxon.image.class.pixelformatbase", MAXON_IMPLEMENTATION_MODULE("net.maxon.image")) | |
| Result< PixelFormat > | JoinPixelFormats (const PixelFormat &format1, const PixelFormat &format2) |
| MAXON_REGISTRY (PixelFormatGroup, PixelFormats, "net.maxon.image.registry.pixelformats") | |
| MAXON_ATTRIBUTE_FORCE_INLINE PixelFormat | GetNativeFloatColorAlphaFormat () |
| MAXON_ATTRIBUTE_FORCE_INLINE PixelFormat | GetNativeFloatColorFormat () |
| MAXON_REGISTRY (Class< VectorImageRef >, VectorImageClasses, "net.maxon.image.registry.vectorimageclasses") | |
| template<typename PIXELDEPTH > | |
| ImageChannel | GetChannel () const |
| static MAXON_FUNCTION Result< PixelFormat > | FindOrCreatePixelFormat (const DataType &pixelType, const Block< const ImageChannelType > &imageChannelTypes) |
| template<typename PIXELTYPE > | |
| Result< PixelFormat > | FindOrCreatePixelFormat (const Block< const ImageChannelType > &imageChannelTypes) |
| template<typename PIXELTYPE , typename... CHANNELS> | |
| Result< PixelFormat > | FindOrCreatePixelFormat () |
| #define MAXON_REGISTER_PIXELFORMAT | ( | group, | |
| name, | |||
| className | |||
| ) |
Use this macro to define a new pixel format, e.g.: MAXON_REGISTER_PIXELFORMAT("rgb8i", PixelFormat::RGB::U8);
| #define MAXON_REGISTER_PIXELFORMAT_X | ( | group, | |
| name, | |||
| className | |||
| ) |
| #define MAXON_REGISTER_PIXELFORMAT_TEMPLATE | ( | group, | |
| name, | |||
| className | |||
| ) |
| #define MAXON_REGISTER_PIXELFORMAT_TEMPLATE_X | ( | group, | |
| name, | |||
| className | |||
| ) |
| #define REGISTER_PIXELFORMATGROUP | ( | name | ) |
This macro allows to register a new pixel format group with a single line:
| using ChannelOffsets = Block<const BITS> |
ChannelOffsets describe the offset of each channel of a pixel format. There is always one channel more than the channel count. This last value contains usually the total size.
| using CONVERTPIXELFUNC = Delegate<Result<void>(const PixelMutableBuffer& dst, Int count, const PixelConstBuffer& src, GETPIXELFLAGS flags)> |
| using CONVERTPIXELFUNCSTATIC = Result<void>(*)(const PixelMutableBuffer& dst, Int count, const PixelConstBuffer& src, GETPIXELFLAGS flags, const ChannelOffsets& dstChannelOffset, const ChannelOffsets& srcChannelOffset) |
|
strong |
used by ImageBaseInterface to add layers/alphas/images to the right sub tree in the hierarchy.
|
strong |
|
strong |
|
strong |
|
strong |
Flags to control the GetPixelHandler functions.
|
strong |
|
strong |
Flags to control the SetPixelHandler functions.
|
strong |
| enum maxon::IMAGEHIERARCHY maxon::MAXON_ENUM_LIST | ( | IMAGEHIERARCHY | ) |
| enum maxon::TRANSFORM_COLORS_FLAGS maxon::MAXON_ENUM_FLAGS | ( | TRANSFORM_COLORS_FLAGS | ) |
| const Class<ImagePixelStorage>& maxon::GetNormalPixelStorageClass | ( | ) |
GetNormalPixelStorageClass returns ImagePixelStorageClasses::Normal() without including gfx_pixelstorage.h.
| maxon::MAXON_REGISTRY | ( | Class< ImageBaseRef > | , |
| ImageBaseClasses | , | ||
| "net.maxon.image.registry.imagebaseclasses" | |||
| ) |
| maxon::MAXON_REGISTRY | ( | Class< ImageTextureRef > | , |
| ImageTextureClasses | , | ||
| "net.maxon.image.registry.imagetextureclasses" | |||
| ) |
| maxon::MAXON_REGISTRY | ( | Class< ImageRef > | , |
| ImageClasses | , | ||
| "net.maxon.image.registry.imageclasses" | |||
| ) |
| maxon::MAXON_REGISTRY | ( | Class< ImageLayerRef > | , |
| ImageLayerClasses | , | ||
| "net.maxon.image.registry.imagelayerclasses" | |||
| ) |
| ImageRef maxon::GetImageOf | ( | const ImageBaseRef & | bmp | ) |
GetImageOf extracts the first image in a texture or if bmp is already a bmp itself.
| [in] | bmp | ImageBaseRef of type texture or image. |
| ImageLayerRef maxon::GetFirstAlphaOf | ( | const ImageBaseRef & | bmp | ) |
GetFirstAlphaOf returns the alpha channel of a texture or image.
| [in] | bmp | Texture or image. |
| Result<void> maxon::ConvertImageSequence | ( | const Url & | sourceUrl, |
| const Url & | destPath, | ||
| const String & | destFilePatern, | ||
| const Class< MediaOutputUrlRef > & | exportClass, | ||
| const ValueReceiver< const Url & > & | resultFiles | ||
| ) |
ConvertAnim converts a given image stream into image sequence.
| [in] | sourceUrl | Url of the source movie/image sequence. |
| [in] | destPath | Url of the destination folder. |
| [in] | destFilePatern | Format string of the destination files. |
| [in] | exportClass | Export Image class to use. |
| [out] | resultFiles | Receives the generated files. |
or to convert a image sequence Url loadUrl = Application::GetUrl(APPLICATION_URLTYPE::CURRENT_MODULE_RESOURCE_DIR).Append("modules"_s).Append("images"_s).Append("logo_with_alpha@{4'0'}.png"_s) iferr_return; loadUrl.Set(URLFLAGS::IMAGESEQUENCE_FPS, 1.0) iferr_return; Url saveUrl = Url saveUrl = Application::GetUrl(APPLICATION_URLTYPE::USER_DOCUMENTS_DIR) iferr_return; ConvertImageSequence(loadUrl, saveUrl, "_logo_with_alpha@{4'0'}.png"_s, ImageSaverClasses::Png(), nullptr) iferr_return;
| Result<void> maxon::CopyImageData | ( | const ImageBaseRef & | source, |
| const ImageRef & | dest, | ||
| Bool | allowDifferentSize | ||
| ) |
| enum maxon::BLENDPIXELFLAGS maxon::MAXON_ENUM_FLAGS | ( | BLENDPIXELFLAGS | ) |
| maxon::MAXON_DATATYPE | ( | BlendPixelHandlerRef | , |
| "net.maxon.datatype.blendpixelhandlerref" | , | ||
| MAXON_IMPLEMENTATION_MODULE("net.maxon.image") | |||
| ) |
| maxon::MAXON_REGISTRY | ( | ImagePixelBlend | , |
| ImagePixelBlends | , | ||
| "net.maxon.render.registry.blendmodeclasses" | |||
| ) |
| enum maxon::CONVERTPIXELFLAGS maxon::MAXON_ENUM_FLAGS | ( | CONVERTPIXELFLAGS | ) |
| enum maxon::GETPIXELHANDLERFLAGS maxon::MAXON_ENUM_FLAGS | ( | GETPIXELHANDLERFLAGS | ) |
| enum maxon::GETPIXELFLAGS maxon::MAXON_ENUM_FLAGS | ( | GETPIXELFLAGS | ) |
| enum maxon::SETPIXELHANDLERFLAGS maxon::MAXON_ENUM_FLAGS | ( | SETPIXELHANDLERFLAGS | ) |
| enum maxon::SETPIXELFLAGS maxon::MAXON_ENUM_FLAGS | ( | SETPIXELFLAGS | ) |
| Result<CONVERTPIXELFUNC> maxon::LambdaWrapper | ( | CONVERTPIXELFUNCSTATIC | func, |
| const ChannelOffsets & | dstChannelOffsets, | ||
| const ChannelOffsets & | srcChannelOffsets | ||
| ) |
| maxon::MAXON_DECLARATION | ( | Class< PixelFormat > | , |
| PixelFormatBaseClass | , | ||
| "net.maxon.image.class.pixelformatbase" | , | ||
| MAXON_IMPLEMENTATION_MODULE("net.maxon.image") | |||
| ) |
Base channels which implements a bunch of default functions for all pixel formats.
| Result<PixelFormat> maxon::JoinPixelFormats | ( | const PixelFormat & | format1, |
| const PixelFormat & | format2 | ||
| ) |
Joins 2 pixel formats together. The result pixel format will have all channels from the first format followed by the channels of the second format.
| [in] | format1 | First pixel format. |
| [in] | format2 | Second pixel format. |
| maxon::MAXON_REGISTRY | ( | PixelFormatGroup | , |
| PixelFormats | , | ||
| "net.maxon.image.registry.pixelformats" | |||
| ) |
| MAXON_ATTRIBUTE_FORCE_INLINE PixelFormat maxon::GetNativeFloatColorAlphaFormat | ( | ) |
GetNativeFloatColorAlphaFormat returns the ColorA 32 or 64 PixelFormat depending on the system.
| MAXON_ATTRIBUTE_FORCE_INLINE PixelFormat maxon::GetNativeFloatColorFormat | ( | ) |
GetNativeFloatColorFormat returns the Color 32 or 64 PixelFormat depending on the system.
| maxon::MAXON_REGISTRY | ( | Class< VectorImageRef > | , |
| VectorImageClasses | , | ||
| "net.maxon.image.registry.vectorimageclasses" | |||
| ) |
| ImageChannel GetChannel | ( | ) | const |
|
static |
Create of find a pixel format. This function simplifies the usage without the need to create the array of channels on the stack:
| [in] | pixelType | Pixel data type e.g. GetDataType<Pix32f>(). |
| [in] | imageChannelTypes | Image Channel types. PixelFormat formatGBR32f = PixelFormatsInterface::FindOrCreatePixelFormat<ImageChannels::Green, ImageChannels::Blue, ImageChannels::Red>() iferr_return;
|
| Result<PixelFormat> FindOrCreatePixelFormat | ( | const Block< const ImageChannelType > & | imageChannelTypes | ) |
| Result<PixelFormat> FindOrCreatePixelFormat | ( | ) |