retdec
resource_icon.h
Go to the documentation of this file.
1 
7 #ifndef RETDEC_FILEFORMAT_TYPES_RESOURCE_TABLE_RESOURCE_ICON_H
8 #define RETDEC_FILEFORMAT_TYPES_RESOURCE_TABLE_RESOURCE_ICON_H
9 
11 namespace retdec {
12 namespace fileformat {
13 
17 class ResourceIcon : public Resource
18 {
19  private:
20  std::uint16_t width = 0;
21  std::uint16_t height = 0;
22  std::size_t iconSize = 0;
23  std::uint8_t colorCount = 0;
24  std::uint16_t planes = 0;
25  std::uint16_t bitCount = 0;
26  std::size_t iconGroup = 0;
27  bool loadedProperties = false;
28  bool validColorCount = false;
29 
30  public:
33  std::uint16_t getWidth() const;
34  std::uint16_t getHeight() const;
35  std::size_t getIconSize() const;
36  std::uint8_t getColorCount() const;
37  std::uint16_t getPlanes() const;
38  std::uint16_t getBitCount() const;
39  std::size_t getIconGroup() const;
41 
44  void setWidth(std::uint16_t iWidth);
45  void setHeight(std::uint16_t iHeight);
46  void setIconSize(std::size_t iSize);
47  void setColorCount(std::uint8_t iColorCount);
48  void setPlanes(std::uint16_t iPlanes);
49  void setBitCount(std::uint16_t iBitCount);
50  void setIconGroup(std::size_t iGroup);
51  void setLoadedProperties();
52  void setValidColorCount();
54 
57  bool hasLoadedProperties() const;
58  bool hasValidColorCount() const;
60 };
61 
62 } // namespace fileformat
63 } // namespace retdec
64 
65 #endif
Definition: resource_icon.h:18
void setColorCount(std::uint8_t iColorCount)
Definition: resource_icon.cpp:116
bool validColorCount
true if color count has a valid value
Definition: resource_icon.h:28
std::uint16_t getHeight() const
Definition: resource_icon.cpp:25
std::size_t getIconSize() const
Definition: resource_icon.cpp:34
std::uint16_t width
icon width
Definition: resource_icon.h:20
void setIconSize(std::size_t iSize)
Definition: resource_icon.cpp:107
std::uint16_t bitCount
icon bit count
Definition: resource_icon.h:25
std::size_t iconSize
icon size in file
Definition: resource_icon.h:22
std::uint16_t planes
icon planes
Definition: resource_icon.h:24
std::size_t iconGroup
icon group the icon belongs to
Definition: resource_icon.h:26
std::uint16_t getPlanes() const
Definition: resource_icon.cpp:52
void setWidth(std::uint16_t iWidth)
Definition: resource_icon.cpp:79
std::uint16_t getBitCount() const
Definition: resource_icon.cpp:61
void setHeight(std::uint16_t iHeight)
Definition: resource_icon.cpp:93
std::uint16_t getWidth() const
Definition: resource_icon.cpp:16
void setBitCount(std::uint16_t iBitCount)
Definition: resource_icon.cpp:134
std::uint16_t height
icon height
Definition: resource_icon.h:21
bool loadedProperties
true if properties were successfully loaded from icon group resource
Definition: resource_icon.h:27
bool hasValidColorCount() const
Definition: resource_icon.cpp:177
void setIconGroup(std::size_t iGroup)
Definition: resource_icon.cpp:143
void setPlanes(std::uint16_t iPlanes)
Definition: resource_icon.cpp:125
void setValidColorCount()
Definition: resource_icon.cpp:159
std::uint8_t colorCount
icon color count
Definition: resource_icon.h:23
std::size_t getIconGroup() const
Definition: resource_icon.cpp:70
void setLoadedProperties()
Definition: resource_icon.cpp:151
std::uint8_t getColorCount() const
Definition: resource_icon.cpp:43
bool hasLoadedProperties() const
Definition: resource_icon.cpp:168
Definition: resource.h:24
Class for one resource.
Definition: archive_wrapper.h:19