1 #ifndef DALI_EVENT_IMAGES_PIXEL_MANIPULATION_H
2 #define DALI_EVENT_IMAGES_PIXEL_MANIPULATION_H
5 * Copyright (c) 2017 Samsung Electronics Co., Ltd.
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
20 #include <dali/public-api/images/pixel.h>
38 MAX_NUMBER_OF_CHANNELS
42 * Return true if the channel exists in the pixel format
43 * @param[in] pixelFormat The pixelFormat
44 * @param[in] channel The channel to test for
45 * @return true if the channel exists
47 bool HasChannel( Dali::Pixel::Format pixelFormat, Channel channel );
51 * Read a colour channel from the pixel with the given pixel format.
52 * Returns zero if the format does not support the channel
53 * @param[in] pixelData Location of the pixel
54 * @param[in] pixelFormat The format of the pixel
55 * @param[in] channel The channel to read
56 * @return the channel value
58 unsigned int ReadChannel( unsigned char* pixelData,
59 Dali::Pixel::Format pixelFormat,
63 * Write a colour channel to the pixel with the given pixel format.
64 * @param[in] pixelData Location of the pixel
65 * @param[in] pixelFormat The format of the pixel
66 * @param[in] channel The channel to write
67 * @param[in] channelValue the value to write to the channel
69 void WriteChannel( unsigned char* pixelData,
70 Dali::Pixel::Format pixelFormat,
72 unsigned int channelValue );
74 void ConvertColorChannelsToRGBA8888(
75 unsigned char* srcPixel, int srcOffset, Dali::Pixel::Format srcFormat,
76 unsigned char* destPixel, int destOffset );
83 #endif // DALI_EVENT_IMAGES_PIXEL_MANIPULATION_H