Dali 3D User Interface Engine
Namespaces | Typedefs | Enumerations | Functions | Variables
image-operations.h File Reference
#include <stdint.h>
#include <dali/integration-api/bitmap.h>
#include <dali/public-api/images/image-operations.h>
Include dependency graph for image-operations.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  Dali
 The top level DALi namespace.
 
namespace  Dali::Internal
 
namespace  Dali::Internal::Platform
 

Typedefs

typedef Uint16Pair Dali::Internal::Platform::ImageDimensions
 The integer dimensions of an image or a region of an image packed into 16 bits per component. More...
 

Enumerations

enum  Dali::Internal::Platform::BoxDimensionTest { Dali::Internal::Platform::BoxDimensionTestEither, Dali::Internal::Platform::BoxDimensionTestBoth, Dali::Internal::Platform::BoxDimensionTestX, Dali::Internal::Platform::BoxDimensionTestY }
 Identify which combination of x and y dimensions matter in terminating iterative box filtering. More...
 

Functions

ImageDimensions Dali::Internal::Platform::CalculateDesiredDimensions (ImageDimensions rawDimensions, ImageDimensions requestedDimensions)
 Work out the true desired width and height, accounting for special rules for zeros in either or both input requested dimensions. More...
 
BitmapPtr Dali::Internal::Platform::ApplyAttributesToBitmap (Integration::BitmapPtr bitmap, ImageDimensions dimensions, FittingMode::Type fittingMode=FittingMode::DEFAULT, SamplingMode::Type samplingMode=SamplingMode::DEFAULT)
 Apply requested attributes to bitmap. More...
 
Integration::BitmapPtr Dali::Internal::Platform::DownscaleBitmap (Integration::Bitmap &bitmap, ImageDimensions desired, FittingMode::Type fittingMode, SamplingMode::Type samplingMode)
 Apply downscaling to a bitmap according to requested attributes. More...
 
void Dali::Internal::Platform::DownscaleInPlacePow2 (unsigned char *const pixels, Pixel::Format pixelFormat, unsigned int inputWidth, unsigned int inputHeight, unsigned int desiredWidth, unsigned int desiredHeight, FittingMode::Type fittingMode, SamplingMode::Type samplingMode, unsigned &outWidth, unsigned &outHeight)
 Dispatch to pixel format appropriate box filter downscaling functions. More...
 
void Dali::Internal::Platform::DownscaleInPlacePow2RGB888 (unsigned char *pixels, unsigned int inputWidth, unsigned int inputHeight, unsigned int desiredWidth, unsigned int desiredHeight, BoxDimensionTest dimensionTest, unsigned int &outWidth, unsigned int &outHeight)
 Destructive in-place downscaling by a power of 2 factor. More...
 
void Dali::Internal::Platform::DownscaleInPlacePow2RGBA8888 (unsigned char *pixels, unsigned int inputWidth, unsigned int inputHeight, unsigned int desiredWidth, unsigned int desiredHeight, BoxDimensionTest dimensionTest, unsigned int &outWidth, unsigned int &outHeight)
  More...
 
void Dali::Internal::Platform::DownscaleInPlacePow2RGB565 (unsigned char *pixels, unsigned int inputWidth, unsigned int inputHeight, unsigned int desiredWidth, unsigned int desiredHeight, BoxDimensionTest dimensionTest, unsigned int &outWidth, unsigned int &outHeight)
  More...
 
void Dali::Internal::Platform::DownscaleInPlacePow2ComponentPair (unsigned char *pixels, unsigned int inputWidth, unsigned int inputHeight, unsigned int desiredWidth, unsigned int desiredHeight, BoxDimensionTest dimensionTest, unsigned int &outWidth, unsigned int &outHeight)
  More...
 
void Dali::Internal::Platform::DownscaleInPlacePow2SingleBytePerPixel (unsigned char *pixels, unsigned int inputWidth, unsigned int inputHeight, unsigned int desiredWidth, unsigned int desiredHeight, BoxDimensionTest dimensionTest, unsigned int &outWidth, unsigned int &outHeight)
  More...
 
void Dali::Internal::Platform::PointSample (const unsigned char *inPixels, unsigned int inputWidth, unsigned int inputHeight, Pixel::Format pixelFormat, unsigned char *outPixels, unsigned int desiredWidth, unsigned int desiredHeight)
 Rescales an input image into the exact output dimensions passed-in. More...
 
void Dali::Internal::Platform::PointSample4BPP (const unsigned char *inPixels, unsigned int inputWidth, unsigned int inputHeight, unsigned char *outPixels, unsigned int desiredWidth, unsigned int desiredHeight)
 Rescales an input image into the exact output dimensions passed-in. More...
 
void Dali::Internal::Platform::PointSample3BPP (const unsigned char *inPixels, unsigned int inputWidth, unsigned int inputHeight, unsigned char *outPixels, unsigned int desiredWidth, unsigned int desiredHeight)
 Rescales an input image into the exact output dimensions passed-in. More...
 
void Dali::Internal::Platform::PointSample2BPP (const unsigned char *inPixels, unsigned int inputWidth, unsigned int inputHeight, unsigned char *outPixels, unsigned int desiredWidth, unsigned int desiredHeight)
 Rescales an input image into the exact output dimensions passed-in. More...
 
void Dali::Internal::Platform::PointSample1BPP (const unsigned char *inPixels, unsigned int inputWidth, unsigned int inputHeight, unsigned char *outPixels, unsigned int desiredWidth, unsigned int desiredHeight)
 Rescales an input image into the exact output dimensions passed-in. More...
 
void Dali::Internal::Platform::LinearSample (const unsigned char *__restrict__ inPixels, ImageDimensions inDimensions, Pixel::Format pixelFormat, unsigned char *__restrict__ outPixels, ImageDimensions outDimensions)
 Resample input image to output image using a bilinear filter. More...
 
void Dali::Internal::Platform::LinearSample1BPP (const unsigned char *__restrict__ inPixels, ImageDimensions inputDimensions, unsigned char *__restrict__ outPixels, ImageDimensions desiredDimensions)
 Resample input image to output image using a bilinear filter. More...
 
void Dali::Internal::Platform::LinearSample2BPP (const unsigned char *__restrict__ inPixels, ImageDimensions inputDimensions, unsigned char *__restrict__ outPixels, ImageDimensions desiredDimensions)
 Resample input image to output image using a bilinear filter. More...
 
void Dali::Internal::Platform::LinearSampleRGB565 (const unsigned char *__restrict__ inPixels, ImageDimensions inputDimensions, unsigned char *__restrict__ outPixels, ImageDimensions desiredDimensions)
 Resample input image to output image using a bilinear filter. More...
 
void Dali::Internal::Platform::LinearSample3BPP (const unsigned char *__restrict__ inPixels, ImageDimensions inputDimensions, unsigned char *__restrict__ outPixels, ImageDimensions desiredDimensions)
 Resample input image to output image using a bilinear filter. More...
 
void Dali::Internal::Platform::LinearSample4BPP (const unsigned char *__restrict__ inPixels, ImageDimensions inputDimensions, unsigned char *__restrict__ outPixels, ImageDimensions desiredDimensions)
 Resample input image to output image using a bilinear filter. More...
 
void Dali::Internal::Platform::HalveScanlineInPlaceRGB888 (unsigned char *pixels, unsigned int width)
 Average adjacent pairs of pixels, overwriting the input array. More...
 
void Dali::Internal::Platform::HalveScanlineInPlaceRGBA8888 (unsigned char *pixels, unsigned int width)
 Average adjacent pairs of pixels, overwriting the input array. More...
 
void Dali::Internal::Platform::HalveScanlineInPlaceRGB565 (unsigned char *pixels, unsigned int width)
 Average adjacent pairs of pixels, overwriting the input array. More...
 
void Dali::Internal::Platform::HalveScanlineInPlace2Bytes (unsigned char *pixels, unsigned int width)
 Average adjacent pairs of pixels, overwriting the input array. More...
 
void Dali::Internal::Platform::HalveScanlineInPlace1Byte (unsigned char *pixels, unsigned int width)
 Average adjacent pairs of pixels, overwriting the input array. More...
 
void Dali::Internal::Platform::AverageScanlines1 (const unsigned char *scanline1, const unsigned char *scanline2, unsigned char *outputScanline, unsigned int width)
 Average pixels at corresponding offsets in two scanlines. More...
 
void Dali::Internal::Platform::AverageScanlines2 (const unsigned char *scanline1, const unsigned char *scanline2, unsigned char *outputScanline, unsigned int width)
 : Optimise for ARM using a 4 bytes at a time loop wrapped around the single ARMV6 instruction: UHADD8 R4, R0, R5. More...
 
void Dali::Internal::Platform::AverageScanlines3 (const unsigned char *scanline1, const unsigned char *scanline2, unsigned char *outputScanline, unsigned int width)
 : Optimise for ARM using a 4 bytes at a time loop wrapped around the single ARMV6 instruction: UHADD8 R4, R0, R5. More...
 
void Dali::Internal::Platform::AverageScanlinesRGBA8888 (const unsigned char *scanline1, const unsigned char *scanline2, unsigned char *outputScanline, unsigned int width)
 : Optimise for ARM using a 4 bytes at a time loop wrapped around the single ARMV6 instruction: UHADD8 R4, R0, R5. More...
 
void Dali::Internal::Platform::AverageScanlinesRGB565 (const unsigned char *scanline1, const unsigned char *scanline2, unsigned char *outputScanline, unsigned int width)
 : Optimise for ARM using a 4 bytes at a time loop wrapped around the single ARMV6 instruction: UHADD8 R4, R0, R5. More...
 
unsigned int Dali::Internal::Platform::AverageComponent (unsigned int a, unsigned int b)
 Average two integer arguments. More...
 
uint32_t Dali::Internal::Platform::AveragePixelRGBA8888 (uint32_t a, uint32_t b)
 Average a pair of RGBA8888 pixels. More...
 
uint32_t Dali::Internal::Platform::AveragePixelRGB565 (uint32_t a, uint32_t b)
 Average a pair of RGB565 pixels. More...
 
unsigned int Dali::Internal::Platform::WeightedBlendIntToFixed1616 (unsigned int a, unsigned int b, unsigned int fractBlend)
 
uint64_t Dali::Internal::Platform::WeightedBlendFixed1616ToFixed1632 (unsigned int a, unsigned int b, unsigned int fractBlend)
 Blend two 16.16 inputs to give a 16.32 output. More...
 
unsigned int Dali::Internal::Platform::BilinearFilter1Component (unsigned int tl, unsigned int tr, unsigned int bl, unsigned int br, unsigned int fractBlendHorizontal, unsigned int fractBlendVertical)
 Blend 4 taps into one value using horizontal and vertical weights. More...
 

Variables

enum
Dali::Internal::Platform::BoxDimensionTest 
Dali::Internal::Platform::__attribute__
 
Dali Docs Home
Read more about Dali