Guiliani  Version 2.6 revision 7293 (documentation build 12)
GUIImageData.h
1/*
2* Copyright (C) TES Electronic Solutions GmbH,
3* All Rights Reserved.
4* Contact: info@guiliani.de
5*
6* This file is part of the Guiliani HMI framework
7* for the development of graphical user interfaces on embedded systems.
8*/
9
10#ifndef GUIIMAGEDATA__H_
11#define GUIIMAGEDATA__H_
12
13#include "eC_Types.h"
14#include "GUICommonEnums.h"
15
16// TODO: concept for supporting vector and bitmap-images
17//new for SVGs
18#include <vector>
19#include "SVGShape.h"
20
22
29{
30public:
34 {
37 };
38
42 {
45 MT_ROM
46 };
47
48public:
51
54
61
65 void SetWidth(const eC_UInt &uiWidth);
66
70 void SetHeight(const eC_UInt &uiHeight);
71
76 void SetData(eC_UByte *pubData);
77
81 void SetDataType(const DataType_t& eType);
82
86 void SetMemoryType(const MemoryType_t& eType);
87
92 void SetDataSVG(CSVGShape* pkSVGShapes);
93
97 void SetShapeCount(const eC_UInt& uiShapeCount);
98
102 void SetSourceAlpha(const eC_Bool& bSourceAlpha);
103
110 void SetFiller(const eC_UByte &ubFillerByte);
111
116
118 eC_UInt GetWidth() const;
119
121 eC_UInt GetHeight() const;
122
124 eC_UByte* GetData() const;
125
128
131
137
141 eC_UInt GetShapeCount() const;
142
146 eC_UByte GetFiller() const;
147
150
152 eC_UByte GetBytePerPixel() const;
153
158 eC_UInt GetImageSize() const;
159
163 eC_Bool HasAlpha() const;
164
168 eC_Bool HasSourceAlpha() const;
169
172
173private:
178 CGUIImageData(const CGUIImageData& kSource);
179
180private:
181 eC_UInt m_uiWidth;
182 eC_UInt m_uiHeight;
183 CGUICommonEnums::ImageType_t m_eImageType;
184
185 eC_Bool m_bSourceAlpha;
186
188 eC_UByte m_ubFillerByte;
189
190 eC_UByte* m_pubData;
191 DataType_t m_eDataType;
192 MemoryType_t m_eMemoryType;
193
194 CSVGShape* m_pkSVGData;
195 eC_UInt m_uiShapeCount;
196};
197
198#endif
ImageType_t
Definition: GUICommonEnums.h:80
Contains information about an image loaded by CGUIImageLoader.
Definition: GUIImageData.h:29
CGUICommonEnums::ImageType_t GetImageType() const
void SetHeight(const eC_UInt &uiHeight)
eC_Bool HasSourceAlpha() const
CGUIImageData & operator=(const CGUIImageData &kSource)
eC_UByte GetBytePerPixel() const
void SetShapeCount(const eC_UInt &uiShapeCount)
void DeleteData()
void SetData(eC_UByte *pubData)
void SetMemoryType(const MemoryType_t &eType)
eC_UInt GetShapeCount() const
eC_UInt GetImageSize() const
eC_UInt GetWidth() const
void SetDataSVG(CSVGShape *pkSVGShapes)
void SetImageType(const CGUICommonEnums::ImageType_t &eImageType)
eC_UInt GetHeight() const
MemoryType_t
Definition: GUIImageData.h:42
@ MT_MANAGED_EXTERNAL
externally managed, will NOT be freed
Definition: GUIImageData.h:44
@ MT_ROM
ROM, will not be freed.
Definition: GUIImageData.h:45
@ MT_MANAGED_INTERNAL
internally managed, will be automatically freed at end of lifetime
Definition: GUIImageData.h:43
void SetFiller(const eC_UByte &ubFillerByte)
void SetDataType(const DataType_t &eType)
eC_UByte * GetData() const
MemoryType_t GetMemoryType() const
void SetWidth(const eC_UInt &uiWidth)
eC_UByte GetFiller() const
CSVGShape * GetDataSVG()
eC_Bool HasAlpha() const
DataType_t
Definition: GUIImageData.h:34
@ DT_BITMAP
bitmap
Definition: GUIImageData.h:35
@ DT_VECTOR
vector
Definition: GUIImageData.h:36
void SetSourceAlpha(const eC_Bool &bSourceAlpha)
DataType_t GetDataType() const
Definition: SVGShape.h:62