MRPT  2.0.4
default_mrpt_glfw_icon.cpp
Go to the documentation of this file.
1 /* +------------------------------------------------------------------------+
2  | Mobile Robot Programming Toolkit (MRPT) |
3  | https://www.mrpt.org/ |
4  | |
5  | Copyright (c) 2005-2020, Individual contributors, see AUTHORS file |
6  | See: https://www.mrpt.org/Authors - All rights reserved. |
7  | Released under BSD License. See: https://www.mrpt.org/License |
8  +------------------------------------------------------------------------+ */
9 
10 #include "gui-precomp.h" // Precompiled headers
11 
13 #include <cstdint>
14 #include <vector>
15 
16 // Default GLFW MRPT icon:
18 {
19  static std::vector<uint8_t> dat;
20  if (!dat.empty()) return dat.data();
21 
22  /* GIMP header image file format (RGB):
23  * /home/jlblanco/code/mrpt/scripts/mrpt_gui_icon_32x32.h */
24  unsigned int width = 64;
25  unsigned int height = 64;
26  /* Call this macro repeatedly. After each use, the pixel data can be
27  * extracted */
28 #define HEADER_PIXEL(data, pixel) \
29  { \
30  pixel[0] = (((data[0] - 33) << 2) | ((data[1] - 33) >> 4)); \
31  pixel[1] = ((((data[1] - 33) & 0xF) << 4) | ((data[2] - 33) >> 2)); \
32  pixel[2] = ((((data[2] - 33) & 0x3) << 6) | ((data[3] - 33))); \
33  data += 4; \
34  }
35  static const char* header_data =
36  ":'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E"
37  ":'2E````````````````````````````````````````````````````````````"
38  "````````````````````````````````````````````````````````````:'2E"
39  ":'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E"
40  ":'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E````````````"
41  "````````````````````````````````````````````````````````````````"
42  "````````````````````````````````````````````````````````````````"
43  "````````````:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E"
44  ":'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E````````````````````"
45  "````````````````````````````````````````````````````````````````"
46  "````````````````````````````````````````````````````````````````"
47  "````````````````````:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E"
48  ":'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E````````````````````````````"
49  "````````````````````````````````````````````````````````````````"
50  "````````````````````````````````````````````````````````````````"
51  "````````````````````````````:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E"
52  ":'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E````````````````````````````````"
53  "````````````````````````````````````````````````````````````````"
54  "````````````````````````````````````````````````````````````````"
55  "````````````````````````````````:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E"
56  ":'2E:'2E:'2E:'2E:'2E:'2E:'2E````````````````````````````````````"
57  "````````````````````````````````````````````````````````````````"
58  "````````````````````````````````````````````````````````````````"
59  "````````````````````````````````````:'2E:'2E:'2E:'2E:'2E:'2E:'2E"
60  ":'2E:'2E:'2E:'2E:'2E:'2E````````````````````````````````````````"
61  "````````````````````````````````````````````````````````````````"
62  "````````````````````````````````````````````````````````````````"
63  "````````````````````````````````````````:'2E:'2E:'2E:'2E:'2E:'2E"
64  ":'2E:'2E:'2E:'2E:'2E````````````````````````````````````````````"
65  "````````````````````````````````````````````````````````````````"
66  "````````````````````````````````````````````````````````````````"
67  "````````````````````````````````````````````:'2E:'2E:'2E:'2E:'2E"
68  ":'2E:'2E:'2E:'2E````````````````````````````````````````````````"
69  "````````````````````````````````````````````````````````````````"
70  "````````````````````````````````````````````````````````````````"
71  "````````````````````````````````````````````````:'2E:'2E:'2E:'2E"
72  ":'2E:'2E:'2E````````````````````````````````````````````````````"
73  "````````````````````````````````````````````````````````````````"
74  "````````````````````````````````````````````````````````````````"
75  "````````````````````````````````````````````````````:'2E:'2E:'2E"
76  ":'2E:'2E:'2E````````````````````````````````````````````````````"
77  "````````````````````````````````````````````````````````````````"
78  "````````````````````````````````````````````````````````````````"
79  "````````````````````````````````````````````````````:'2E:'2E:'2E"
80  ":'2E:'2E````````$Q]0!!!!!!!!K[OL````````````````````````S=H*!!!!"
81  "!!!!!!!!\\_`P````````````$Q]0!!!!!!!!!!!!!!!!#QM,,#QM>H:W[_PL````"
82  "````````````````````$Q]0!!!!!!!!!!!!!!!!$!Q--$!Q@8V^]@(R````\\_`P"
83  "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!'RM<````:'2E:'2E"
84  ":'2E:'2E````````$Q]0!!!!!1%\"3%B)````````````````````````:76F!!!!"
85  "!1%\"!!!!\\_`P````````````$Q]0!!!!!!!!!!!!!!!!!!!!!!!!!!!!(\"Q=Z/4E"
86  "````````````````````$Q]0!!!!!!!!!!!!!!!!!!!!!!!!!!!!*35F[_PL\\_`P"
87  "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!'RM<````:'2E:'2E"
88  ":'2E````````````$Q]0!!!!1U.$!A)#YO,C````````````````^04U$1U./$AY"
89  "#QM,!!!!\\_`P````````````$Q]0!!!!X^`@`````P\\_Z_@HHJ[?$1U.!!!!:G:G"
90  "````````````````````$Q]0!!!!X^`@`````P\\_ZO<GFJ;7#!A)!!!!<W^P````"
91  "````````````````````8V^@!!!!CYO,````````````````````````````:'2E"
92  ":'2E````````````$Q]0!!!!JK;G!!!!AI+#````````````````HJ[?!!!!GZO<"
93  "#QM,!!!!\\_`P````````````$Q]0!!!!X^`@````````````````CYO,!!!!)C)C"
94  "````````````````````$Q]0!!!!X^`@````````````````B97&!!!!*C9G````"
95  "````````````````````8V^@!!!!CYO,````````````````````````````:'2E"
96  ":'2E````````````$Q]0!!!![OLK(R]@)#!A`P\\_````````````/DI[#QM,]`0T"
97  "#QM,!!!!\\_`P````````````$Q]0!!!!X^`@````````````````O,CY!!!!%R-4"
98  "````````````````````$Q]0!!!!X^`@````````````````N\\?X!!!!%2%2````"
99  "````````````````````8V^@!!!!CYO,````````````````````````````:'2E"
100  ":'2E````````````$Q]0!!!![_PLA)#!!!!!P,S]````````VN<7!!!!9G*C````"
101  "#QM,!!!!\\_`P````````````$Q]0!!!!X^`@````````````````C)C)!!!!-4%R"
102  "````````````````````$Q]0!!!!X^`@````````````````BI;'!!!!*C9G````"
103  "````````````````````8V^@!!!!CYO,````````````````````````````:'2E"
104  "````````````````$Q]0!!!![_PLY?(B!A)#76F:````````=X.T!!!!R=8&````"
105  "#QM,!!!!\\_`P````````````$Q]0!!!!X^`@`````P\\_[/DIH:W>#QM,!!!!E:'2"
106  "````````````````````$Q]0!!!!X^`@`````P\\_Z_@HG*C9#1E*!!!!<W^P````"
107  "````````````````````8V^@!!!!CYO,````````````````````````````````"
108  "````````````````$Q]0!!!![_PL````2E:'#!A)\\O\\O_PL[&256+3EJ````````"
109  "#QM,!!!!\\_`P````````````$Q]0!!!!!!!!!!!!!!!!!!!!!!!!\"15&=8&R`P\\_"
110  "````````````````````$Q]0!!!!!!!!!!!!!!!!!!!!!!!!!!!!*#1E[_PL````"
111  "````````````````````8V^@!!!!CYO,````````````````````````````````"
112  "````````````````$Q]0!!!![_PL````K;GJ!!!!EZ/4K[OL!!!!D)S-````````"
113  "#QM,!!!!\\_`P````````````$Q]0!!!!!!!!!!!!!!!!!!!!!!!!-T-TYO,C````"
114  "````````````````````$Q]0!!!!!!!!!!!!!!!!#QM,,S]P@(R]]0$Q````````"
115  "````````````````````8V^@!!!!CYO,````````````````````````````````"
116  "````````````````$Q]0!!!![_PL````_@HZ%R-4-$!Q2U>(\"15&[?HJ````````"
117  "#QM,!!!!\\_`P````````````$Q]0!!!!X^`@````_PL[V^@86V>8!!!!*C9G]`0T"
118  "````````````````````$Q]0!!!!X^`@````````````````````````````````"
119  "````````````````````8V^@!!!!CYO,````````````````````````````````"
120  "````````````````$Q]0!!!![_PL````````<W^P!!!!!1%\"5V.4````````````"
121  "#QM,!!!!\\_`P````````````$Q]0!!!!X^`@`````````````@X^1E*#!!!!>86V"
122  "````````````````````$Q]0!!!!X^`@````````````````````````````````"
123  "````````````````````8V^@!!!!CYO,````````````````````````````````"
124  "````````````````$Q]0!!!![_PL````````UN,3!!!!!!!!NL;W````````````"
125  "#QM,!!!!\\_`P````````````$Q]0!!!!X^`@````````````````W>H:\"!1%\"Q=("
126  "Y/$A````````````````$Q]0!!!!X^`@````````````````````````````````"
127  "````````````````````8V^@!!!!CYO,````````````````````````````````"
128  "````````````````$Q]0!!!![_PL````````````````````````````````````"
129  "#QM,!!!!\\_`P````````````$Q]0!!!!X^`@````````````````````;7FJ!!!!"
130  "86V>````````````````$Q]0!!!!X^`@````````````````````````````````"
131  "````````````````````8V^@!!!!CYO,````````````````````````````````"
132  "````````````````$Q]0!!!![_PL````````````````````````````````````"
133  "#QM,!!!!\\_`P````````````$Q]0!!!!X^`@````````````````````[/DI#QM,"
134  "!A)#U>(2````````````$Q]0!!!!X^`@````````````````````````````````"
135  "````````````````````8V^@!!!!CYO,````````````````````````````````"
136  "````````````````$Q]0!!!![_PL````````````````````````````````````"
137  "#QM,!!!!\\_`P````````````$Q]0!!!!X^`@````````````````````````@HZ_"
138  "!!!!35F*````````````$Q]0!!!!X^`@````````````````````````````````"
139  "````````````````````8V^@!!!!CYO,````````````````````````````````"
140  "````````````````````````````````````````````````````````````````"
141  "````````````````````````````````````````````````````````````````"
142  "````````````````````````````````````````````````````````````````"
143  "````````````````````````````````````````````````````````````````"
144  "````````````````````````````````````````````````````````````````"
145  "````````````````````````````````````````````````````````````````"
146  "````````````````````````````````````````````````````````````````"
147  "````````````````````````````````````````````````````````````````"
148  "````````````````````````````````````````````````````````````````"
149  "````````````````````````````````````````````````]`0`^`@`````````"
150  "````````````````````````````````````````````````````````````````"
151  "````````````````````````````````````````````````````````````````"
152  "````````````````````````````````````````````````````````````````"
153  "````````````````````````````````````````````````45X`!!$`!!$`!!$`"
154  "$A\\`NL<`````````````````````````````````````````````````````````"
155  "````````````````````````````````````````````````````````````````"
156  "````````````````````````````````````````````````````````````````"
157  "````````````````````````````````````````````````2E<`!!$`!!$`!!$`"
158  "!!$`O,D`````````````````````````````````````````````````````````"
159  "````````````````````````````````````````````````````````````````"
160  "````````````````````````````````````````````````````````````````"
161  "````````````````````````````````````````````````1%$`!!$`!!$`!!$`"
162  "!!$`PL\\`````````````````````````````````````````````````````````"
163  "````````````````````````````````````````````````````````````````"
164  "````````````````````````````````````````````````````````````````"
165  "````````````````````````````````````````````````/DL`!!$`!!$`!!$`"
166  "!!$`R=8`````````````````````````````````````````````````````````"
167  "````````````````````````````````````````````````````````````````"
168  "````````````````````````````````````````````````````````````````"
169  "````````````````````````````````````````````````-T0`!!$`!!$`!!$`"
170  "!!$`S]P`````````````````````````````````````````````````````````"
171  "````````````````````````````````````````````````````````````````"
172  "````````````````````````````````````````````````````````````````"
173  "````````````````````````````````````````````````,3X`!!$`!!$`!!$`"
174  "!!$`U>(`````````````````````````````````````````````````````````"
175  "````````````````````````````````````````````````````````````````"
176  "````````````````````````````````````````````````````````````````"
177  "````````````````````````````````````````````````*S@`!!$`!!$`!!$`"
178  "!!$`W.D`````````````````````````````````````````````````````````"
179  "````````````````````````````````````````````````````````````````"
180  "````````````````````````````````````````````````````````````````"
181  "````````````````````````````````````````````````)#$`!!$`!!$`!!$`"
182  "!!$`XN\\`````````````````````````````````````````````````````````"
183  "````````````````````````````````````````````````````````````````"
184  "````````````````````````````````````````````````````````````````"
185  "````````````````````````````````````````````````'BL`!!$`!!$`!!$`"
186  "!!$`Z/4`````````````````````````````````````````````````````````"
187  "````````````````````````````````````````````````````````````````"
188  "````````````````````````````````````````````````````````````````"
189  "````````````````````````````````````````````````&\"4`!!$`!!$`!!$`"
190  "!!$`[_P`````````````````````````````````````````````````````````"
191  "````````````````````````````````````````````````````````````````"
192  "````````````````````````````````````````````````````````````````"
193  "````````````````````````````````````````````````$1X`!!$`!!$`!!$`"
194  "!!$`]@(`````````````````````````````````````````````````````````"
195  "````````````````````````````````````````````````````````````````"
196  "````````````````````````````````````````````````````````````````"
197  "````````````````````````````````````````````````\"Q@`!!$`!!$`!!$`"
198  "!!$`^`@`````````````````````````````````````````````````````````"
199  "````````````````````````````````````````````````````````````````"
200  "````````````````````````````````````````````````````````````````"
201  "````````````````````````````````````````````````!1(`!!$`!!$`!!$`"
202  "!!$`SPX-T0`-T0`-T0`-T0`-T0`-T0`-T0`-T0`-T0`-T@`.X@`>X@`>X@`>X@`>"
203  "X@`>X@`>ZP`G````````````````````````````````````````````````````"
204  "````````````````````````````````````````````````````````````````"
205  "````````````````````````````````````````````_P8[!!$`!!$`!!$`!!$`"
206  "!!8[!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!"
207  "!0]!!0]!20^%````````````````````````````````````````````````````"
208  "````````````````````````````````````````````````````````````````"
209  "``````````````````````````````````````````\\__6^F:A#::A#:'%'F!&7K"
210  "!&OE!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!"
211  "!0]!!0]!2@^&````````````````````````````````````````````````````"
212  "````````````````````````````````````````````````````````````````"
213  "`````````````````````````````````````````XJ[`Q!!`Q!!`Q!!2<I!!0]!"
214  "!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!"
215  "!0]!!0]!2P^'````````````````````````````````````````````````````"
216  "````````````````````````````````````````````````````````````````"
217  "`````````````````````````````````````ZC9`Q!!`Q!!`Q!!`Q!!2,M!!0]!"
218  "!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!!0]!"
219  "!0]!!0]!2`^(````````````````````````````````````````````````````"
220  "````````````````````````````````````````````````````````````````"
221  "`````````````````````````````````\\+S`Q-$`Q!!`Q!!`Q!!`Q!!;:9!-OI?"
222  "-`]T-`]T-`]T-`]T-`]T-`]T-`]T-`]T-`]T-`]T-`]T-@]R)P]C)P]C)P]C)P]C"
223  ")P]C)P]C9@^B````````````````````````````````````````````````````"
224  ":'2E````````````````````````````````````````````````````````````"
225  "`````````````````````````````]D)`QI+`Q!!`Q!!`Q!!`Q!!`Q!!`Y'\"````"
226  "````````````````````````````````````````````````````````````````"
227  "````````````````````````````````````````````````````````````:'2E"
228  ":'2E````````````````````````````````````````````````````````````"
229  "`````````````````````````^86`R)3`Q!!`Q!!`Q!!`Q!!`Q!!`W2E````````"
230  "````````````````````````````````````````````````````````````````"
231  "````````````````````````````````````````````````````````````:'2E"
232  ":'2E````````````````````````````````````````````````````````````"
233  "`````````````````````_8F`R]@`Q!!`Q!!`Q!!`Q!!`Q!!`UN,``P\\````````"
234  "````````````````````````````````````````````````````````````````"
235  "````````````````````````````````````````````````````````````:'2E"
236  ":'2E````````````````````````````````````````````````````````````"
237  "``````````````````(R`S]P`Q!!`Q!!`Q!!`Q!!`Q!!`T9W``4U````````````"
238  "````````````````````````````````````````````````````````````````"
239  "````````````````````````````````````````````````````````````:'2E"
240  ":'2E:'2E````````````````````````````````````````````````````````"
241  "``````````````HZ`U2%`Q!!`Q!!`Q!!`Q!!`Q!!`S1E`_HJ````````````````"
242  "````````````````````````````````````````````````````````````````"
243  "````````````````````````````````````````````````````````:'2E:'2E"
244  ":'2E:'2E````````````````````````````````````````````````````````"
245  "``````````\\_`VR=`Q!!`Q!!`Q!!`Q!!`Q!!`RE:`^`@````````````````````"
246  "````````````````````````````````````````````````````````````````"
247  "````````````````````````````````````````````````````````:'2E:'2E"
248  ":'2E:'2E:'2E````````````````````````````````````````````````````"
249  "`````````X\"Q`Q!!`Q!!`Q!!`Q!!`Q!!`QU.`]\\/````````````````````````"
250  "````````````````````````````````````````````````````````````````"
251  "````````````````````````````````````````````````````:'2E:'2E:'2E"
252  ":'2E:'2E:'2E````````````````````````````````````````````````````"
253  "`````YG*`Q!!`Q!!`Q!!`Q!!`Q!!`Q5&`\\GZ````````````````````````````"
254  "````````````````````````````````````````````````````````````````"
255  "````````````````````````````````````````````````````:'2E:'2E:'2E"
256  ":'2E:'2E:'2E:'2E````````````````````````````````````````````````"
257  "`[?H`Q)#`Q!!`Q!!`Q!!`Q!!`Q%\"`['B````````````````````````````````"
258  "````````````````````````````````````````````````````````````````"
259  "````````````````````````````````````````````````:'2E:'2E:'2E:'2E"
260  ":'2E:'2E:'2E:'2E:'2E````````````````````````````````````````````"
261  "`]<'`R-4`Q!!`Q!!`Q!!`Q!!`YS-````````````````````````````````````"
262  "````````````````````````````````````````````````````````````````"
263  "````````````````````````````````````````````:'2E:'2E:'2E:'2E:'2E"
264  ":'2E:'2E:'2E:'2E:'2E:'2E````````````````````````````````````````"
265  "`````^45`RY?`Q!!`Q!!`WJK````````````````````````````````````````"
266  "````````````````````````````````````````````````````````````````"
267  "````````````````````````````````````````:'2E:'2E:'2E:'2E:'2E:'2E"
268  ":'2E:'2E:'2E:'2E:'2E:'2E:'2E````````````````````````````````````"
269  "`````````_8F`S]P`V:7``X^````````````````````````````````````````"
270  "````````````````````````````````````````````````````````````````"
271  "````````````````````````````````````:'2E:'2E:'2E:'2E:'2E:'2E:'2E"
272  ":'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E````````````````````````````````"
273  "`````````````_`P``DY````````````````````````````````````````````"
274  "````````````````````````````````````````````````````````````````"
275  "````````````````````````````````:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E"
276  ":'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E````````````````````````````"
277  "````````````````````````````````````````````````````````````````"
278  "````````````````````````````````````````````````````````````````"
279  "````````````````````````````:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E"
280  ":'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E````````````````````"
281  "````````````````````````````````````````````````````````````````"
282  "````````````````````````````````````````````````````````````````"
283  "````````````````````:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E"
284  ":'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E````````````"
285  "````````````````````````````````````````````````````````````````"
286  "````````````````````````````````````````````````````````````````"
287  "````````````:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E"
288  ":'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E````````"
289  "````````````````````````````````````````````````````````````````"
290  "````````````````````````````````````````````````````````````:'2E"
291  ":'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E:'2E"
292  "";
293 
294  // GLFW image format: RGBA
295  dat.resize(width * height * 4);
296  const char* in = header_data;
297  uint8_t* out = dat.data();
298  const uint8_t transp = 100; // transparent color
299 
300  for (unsigned int y = 0; y < height; y++)
301  {
302  for (unsigned int x = 0; x < width; x++)
303  {
304  // RGB
305  HEADER_PIXEL(in, out);
306  // alpha
307  out[3] = (out[0] == transp && out[1] == transp && out[2] == transp)
308  ? 0x00
309  : 0xff;
310  out += 4;
311  }
312  }
313  return dat.data();
314 
315 #undef HEADER_PIXEL
316 }
#define HEADER_PIXEL(data, pixel)
mrpt::vision::TStereoCalibResults out
unsigned char * default_mrpt_glfw_icon()
Returns the default MRPT icon data, as a 64x64 RGBA (32 bit/pixel) image, compatible with GLFW...



Page generated by Doxygen 1.8.14 for MRPT 2.0.4 Git: 5711e29ae Wed May 27 14:29:47 2020 +0200 at miƩ may 27 14:30:10 CEST 2020