8 #ifndef META_OCEAN_CV_FRAME_CONVERTER_ARGB_32_H
9 #define META_OCEAN_CV_FRAME_CONVERTER_ARGB_32_H
40 static inline void convertARGB32ToARGB32(
const uint8_t* source, uint8_t* target,
const unsigned int width,
const unsigned int height,
const ConversionFlag flag,
const unsigned int sourcePaddingElements,
const unsigned int targetPaddingElements,
Worker* worker =
nullptr);
53 static inline void convertARGB32ToBGRA32(
const uint8_t* source, uint8_t* target,
const unsigned int width,
const unsigned int height,
const ConversionFlag flag,
const unsigned int sourcePaddingElements,
const unsigned int targetPaddingElements,
Worker* worker =
nullptr);
66 static inline void convertARGB32ToRGB24(
const uint8_t* source, uint8_t* target,
const unsigned int width,
const unsigned int height,
const ConversionFlag flag,
const unsigned int sourcePaddingElements,
const unsigned int targetPaddingElements,
Worker* worker =
nullptr);
79 static inline void convertARGB32ToRGBA32(
const uint8_t* source, uint8_t* target,
const unsigned int width,
const unsigned int height,
const ConversionFlag flag,
const unsigned int sourcePaddingElements,
const unsigned int targetPaddingElements,
Worker* worker =
nullptr);
84 ocean_assert(source !=
nullptr && target !=
nullptr);
85 ocean_assert(width >= 1u && height >= 1u);
87 FrameChannels::transformGeneric<uint8_t, 4u>(source, target, width, height, flag, sourcePaddingElements, targetPaddingElements, worker);
92 ocean_assert(source !=
nullptr && target !=
nullptr);
93 ocean_assert(width >= 1u && height >= 1u);
95 FrameChannels::reverseChannelOrder<uint8_t, 4u>(source, target, width, height, flag, sourcePaddingElements, targetPaddingElements, worker);
100 ocean_assert(source !=
nullptr && target !=
nullptr);
101 ocean_assert(width >= 1u && height >= 1u);
103 FrameChannels::removeFirstChannel<uint8_t, 4u>(source, target, width, height, flag, sourcePaddingElements, targetPaddingElements, worker);
108 ocean_assert(source !=
nullptr && target !=
nullptr);
109 ocean_assert(width >= 1u && height >= 1u);
115 constexpr
unsigned int shufflePattern = 0x0321;
117 FrameChannels::shuffleChannels<uint8_t, 4u, 4u, shufflePattern>(source, target, width, height, flag, sourcePaddingElements, targetPaddingElements, worker);
This class implements functions to convert frames with ARGB 32 bit pixel format.
Definition: FrameConverterARGB32.h:26
static void convertARGB32ToBGRA32(const uint8_t *source, uint8_t *target, const unsigned int width, const unsigned int height, const ConversionFlag flag, const unsigned int sourcePaddingElements, const unsigned int targetPaddingElements, Worker *worker=nullptr)
Converts a frame with ARGB32 pixel format to BGRA32 pixel format.
Definition: FrameConverterARGB32.h:90
static void convertARGB32ToARGB32(const uint8_t *source, uint8_t *target, const unsigned int width, const unsigned int height, const ConversionFlag flag, const unsigned int sourcePaddingElements, const unsigned int targetPaddingElements, Worker *worker=nullptr)
Converts a frame with ARGB32 pixel format to ARGB32 pixel format.
Definition: FrameConverterARGB32.h:82
static void convertARGB32ToRGBA32(const uint8_t *source, uint8_t *target, const unsigned int width, const unsigned int height, const ConversionFlag flag, const unsigned int sourcePaddingElements, const unsigned int targetPaddingElements, Worker *worker=nullptr)
Converts a frame with ARGB32 pixel format to RGBA32 pixel format.
Definition: FrameConverterARGB32.h:106
static void convertARGB32ToRGB24(const uint8_t *source, uint8_t *target, const unsigned int width, const unsigned int height, const ConversionFlag flag, const unsigned int sourcePaddingElements, const unsigned int targetPaddingElements, Worker *worker=nullptr)
Converts a frame with ARGB32 pixel format to RGB24 pixel format.
Definition: FrameConverterARGB32.h:98
This is the base class for all frame converter classes.
Definition: FrameConverter.h:32
ConversionFlag
Definition of individual conversion flags.
Definition: FrameConverter.h:39
This class implements a worker able to distribute function calls over different threads.
Definition: Worker.h:33
The namespace covering the entire Ocean framework.
Definition: Accessor.h:15