1#ifndef PIXELCONVERTERS_H
2#define PIXELCONVERTERS_H
4#include "internal/Pixel.h"
5#include "internal/PixelConverter.h"
6#include "internal/RGBAPixel.h"
7#include "internal/RGBPixel.h"
10template <
typename NumberT>
11inline RGBPixel<NumberT> convertRGB(
const uint8_t *p) {
12 return RGBPixel<NumberT>{
static_cast<NumberT
>(p[0]),
static_cast<NumberT
>(p[1]),
13 static_cast<NumberT
>(p[2])};
16template <
typename NumberT>
17inline RGBAPixel<NumberT> convertRGBA(
const uint8_t *p) {
18 return RGBAPixel<NumberT>{
static_cast<NumberT
>(p[0]),
static_cast<NumberT
>(p[1]),
19 static_cast<NumberT
>(p[2]),
static_cast<NumberT
>(p[3])};
22template <
typename NumberT>
23inline const PixelConverter<RGBPixel<NumberT> (*)(
const uint8_t *)> RGB_CONVERTER{
25template <
typename NumberT>
26inline const PixelConverter<RGBAPixel<NumberT> (*)(
const uint8_t *)> RGBA_CONVERTER{