YARP
Yet Another Robot Platform
Marker.h
Go to the documentation of this file.
1 /*
2  * SPDX-FileCopyrightText: 2006-2021 Istituto Italiano di Tecnologia (IIT)
3  * SPDX-License-Identifier: BSD-3-Clause
4  */
5 
6 // This is an automatically generated file.
7 
8 // Generated from the following "visualization_msgs/Marker" msg definition:
9 // # See http://www.ros.org/wiki/rviz/DisplayTypes/Marker and http://www.ros.org/wiki/rviz/Tutorials/Markers%3A%20Basic%20Shapes for more information on using this message with rviz
10 //
11 // uint8 ARROW=0
12 // uint8 CUBE=1
13 // uint8 SPHERE=2
14 // uint8 CYLINDER=3
15 // uint8 LINE_STRIP=4
16 // uint8 LINE_LIST=5
17 // uint8 CUBE_LIST=6
18 // uint8 SPHERE_LIST=7
19 // uint8 POINTS=8
20 // uint8 TEXT_VIEW_FACING=9
21 // uint8 MESH_RESOURCE=10
22 // uint8 TRIANGLE_LIST=11
23 //
24 // uint8 ADD=0
25 // uint8 MODIFY=0
26 // uint8 DELETE=2
27 // uint8 DELETEALL=3
28 //
29 // Header header # header for time/frame information
30 // string ns # Namespace to place this object in... used in conjunction with id to create a unique name for the object
31 // int32 id # object ID useful in conjunction with the namespace for manipulating and deleting the object later
32 // int32 type # Type of object
33 // int32 action # 0 add/modify an object, 1 (deprecated), 2 deletes an object, 3 deletes all objects
34 // geometry_msgs/Pose pose # Pose of the object
35 // geometry_msgs/Vector3 scale # Scale of the object 1,1,1 means default (usually 1 meter square)
36 // std_msgs/ColorRGBA color # Color [0.0-1.0]
37 // duration lifetime # How long the object should last before being automatically deleted. 0 means forever
38 // bool frame_locked # If this marker should be frame-locked, i.e. retransformed into its frame every timestep
39 //
40 // #Only used if the type specified has some use for them (eg. POINTS, LINE_STRIP, ...)
41 // geometry_msgs/Point[] points
42 // #Only used if the type specified has some use for them (eg. POINTS, LINE_STRIP, ...)
43 // #number of colors must either be 0 or equal to the number of points
44 // #NOTE: alpha is not yet used
45 // std_msgs/ColorRGBA[] colors
46 //
47 // # NOTE: only used for text markers
48 // string text
49 //
50 // # NOTE: only used for MESH_RESOURCE markers
51 // string mesh_resource
52 // bool mesh_use_embedded_materials
53 // Instances of this class can be read and written with YARP ports,
54 // using a ROS-compatible format.
55 
56 #ifndef YARP_ROSMSG_visualization_msgs_Marker_h
57 #define YARP_ROSMSG_visualization_msgs_Marker_h
58 
59 #include <yarp/os/Wire.h>
60 #include <yarp/os/Type.h>
61 #include <yarp/os/idl/WireTypes.h>
62 #include <string>
63 #include <vector>
70 
71 namespace yarp {
72 namespace rosmsg {
73 namespace visualization_msgs {
74 
76 {
77 public:
78  static const std::uint8_t ARROW = 0;
79  static const std::uint8_t CUBE = 1;
80  static const std::uint8_t SPHERE = 2;
81  static const std::uint8_t CYLINDER = 3;
82  static const std::uint8_t LINE_STRIP = 4;
83  static const std::uint8_t LINE_LIST = 5;
84  static const std::uint8_t CUBE_LIST = 6;
85  static const std::uint8_t SPHERE_LIST = 7;
86  static const std::uint8_t POINTS = 8;
87  static const std::uint8_t TEXT_VIEW_FACING = 9;
88  static const std::uint8_t MESH_RESOURCE = 10;
89  static const std::uint8_t TRIANGLE_LIST = 11;
90  static const std::uint8_t ADD = 0;
91  static const std::uint8_t MODIFY = 0;
92  static const std::uint8_t DELETE = 2;
93  static const std::uint8_t DELETEALL = 3;
95  std::string ns;
96  std::int32_t id;
97  std::int32_t type;
98  std::int32_t action;
104  std::vector<yarp::rosmsg::geometry_msgs::Point> points;
105  std::vector<yarp::rosmsg::std_msgs::ColorRGBA> colors;
106  std::string text;
107  std::string mesh_resource;
109 
110  Marker() :
111  header(),
112  ns(""),
113  id(0),
114  type(0),
115  action(0),
116  pose(),
117  scale(),
118  color(),
119  lifetime(),
120  frame_locked(false),
121  points(),
122  colors(),
123  text(""),
124  mesh_resource(""),
126  {
127  }
128 
129  void clear()
130  {
131  // *** ARROW ***
132 
133  // *** CUBE ***
134 
135  // *** SPHERE ***
136 
137  // *** CYLINDER ***
138 
139  // *** LINE_STRIP ***
140 
141  // *** LINE_LIST ***
142 
143  // *** CUBE_LIST ***
144 
145  // *** SPHERE_LIST ***
146 
147  // *** POINTS ***
148 
149  // *** TEXT_VIEW_FACING ***
150 
151  // *** MESH_RESOURCE ***
152 
153  // *** TRIANGLE_LIST ***
154 
155  // *** ADD ***
156 
157  // *** MODIFY ***
158 
159  // *** DELETE ***
160 
161  // *** DELETEALL ***
162 
163  // *** header ***
164  header.clear();
165 
166  // *** ns ***
167  ns = "";
168 
169  // *** id ***
170  id = 0;
171 
172  // *** type ***
173  type = 0;
174 
175  // *** action ***
176  action = 0;
177 
178  // *** pose ***
179  pose.clear();
180 
181  // *** scale ***
182  scale.clear();
183 
184  // *** color ***
185  color.clear();
186 
187  // *** lifetime ***
188  lifetime.clear();
189 
190  // *** frame_locked ***
191  frame_locked = false;
192 
193  // *** points ***
194  points.clear();
195 
196  // *** colors ***
197  colors.clear();
198 
199  // *** text ***
200  text = "";
201 
202  // *** mesh_resource ***
203  mesh_resource = "";
204 
205  // *** mesh_use_embedded_materials ***
207  }
208 
209  bool readBare(yarp::os::ConnectionReader& connection) override
210  {
211  // *** header ***
212  if (!header.read(connection)) {
213  return false;
214  }
215 
216  // *** ns ***
217  int len = connection.expectInt32();
218  ns.resize(len);
219  if (!connection.expectBlock((char*)ns.c_str(), len)) {
220  return false;
221  }
222 
223  // *** id ***
224  id = connection.expectInt32();
225 
226  // *** type ***
227  type = connection.expectInt32();
228 
229  // *** action ***
230  action = connection.expectInt32();
231 
232  // *** pose ***
233  if (!pose.read(connection)) {
234  return false;
235  }
236 
237  // *** scale ***
238  if (!scale.read(connection)) {
239  return false;
240  }
241 
242  // *** color ***
243  if (!color.read(connection)) {
244  return false;
245  }
246 
247  // *** lifetime ***
248  if (!lifetime.read(connection)) {
249  return false;
250  }
251 
252  // *** frame_locked ***
253  if (!connection.expectBlock((char*)&frame_locked, 1)) {
254  return false;
255  }
256 
257  // *** points ***
258  len = connection.expectInt32();
259  points.resize(len);
260  for (int i=0; i<len; i++) {
261  if (!points[i].read(connection)) {
262  return false;
263  }
264  }
265 
266  // *** colors ***
267  len = connection.expectInt32();
268  colors.resize(len);
269  for (int i=0; i<len; i++) {
270  if (!colors[i].read(connection)) {
271  return false;
272  }
273  }
274 
275  // *** text ***
276  len = connection.expectInt32();
277  text.resize(len);
278  if (!connection.expectBlock((char*)text.c_str(), len)) {
279  return false;
280  }
281 
282  // *** mesh_resource ***
283  len = connection.expectInt32();
284  mesh_resource.resize(len);
285  if (!connection.expectBlock((char*)mesh_resource.c_str(), len)) {
286  return false;
287  }
288 
289  // *** mesh_use_embedded_materials ***
290  if (!connection.expectBlock((char*)&mesh_use_embedded_materials, 1)) {
291  return false;
292  }
293 
294  return !connection.isError();
295  }
296 
297  bool readBottle(yarp::os::ConnectionReader& connection) override
298  {
299  connection.convertTextMode();
300  yarp::os::idl::WireReader reader(connection);
301  if (!reader.readListHeader(31)) {
302  return false;
303  }
304 
305  // *** header ***
306  if (!header.read(connection)) {
307  return false;
308  }
309 
310  // *** ns ***
311  if (!reader.readString(ns)) {
312  return false;
313  }
314 
315  // *** id ***
316  id = reader.expectInt32();
317 
318  // *** type ***
319  type = reader.expectInt32();
320 
321  // *** action ***
322  action = reader.expectInt32();
323 
324  // *** pose ***
325  if (!pose.read(connection)) {
326  return false;
327  }
328 
329  // *** scale ***
330  if (!scale.read(connection)) {
331  return false;
332  }
333 
334  // *** color ***
335  if (!color.read(connection)) {
336  return false;
337  }
338 
339  // *** lifetime ***
340  if (!lifetime.read(connection)) {
341  return false;
342  }
343 
344  // *** frame_locked ***
345  frame_locked = reader.expectInt8();
346 
347  // *** points ***
348  if (connection.expectInt32() != BOTTLE_TAG_LIST) {
349  return false;
350  }
351  int len = connection.expectInt32();
352  points.resize(len);
353  for (int i=0; i<len; i++) {
354  if (!points[i].read(connection)) {
355  return false;
356  }
357  }
358 
359  // *** colors ***
360  if (connection.expectInt32() != BOTTLE_TAG_LIST) {
361  return false;
362  }
363  len = connection.expectInt32();
364  colors.resize(len);
365  for (int i=0; i<len; i++) {
366  if (!colors[i].read(connection)) {
367  return false;
368  }
369  }
370 
371  // *** text ***
372  if (!reader.readString(text)) {
373  return false;
374  }
375 
376  // *** mesh_resource ***
377  if (!reader.readString(mesh_resource)) {
378  return false;
379  }
380 
381  // *** mesh_use_embedded_materials ***
383 
384  return !connection.isError();
385  }
386 
388  bool read(yarp::os::ConnectionReader& connection) override
389  {
390  return (connection.isBareMode() ? readBare(connection)
391  : readBottle(connection));
392  }
393 
394  bool writeBare(yarp::os::ConnectionWriter& connection) const override
395  {
396  // *** header ***
397  if (!header.write(connection)) {
398  return false;
399  }
400 
401  // *** ns ***
402  connection.appendInt32(ns.length());
403  connection.appendExternalBlock((char*)ns.c_str(), ns.length());
404 
405  // *** id ***
406  connection.appendInt32(id);
407 
408  // *** type ***
409  connection.appendInt32(type);
410 
411  // *** action ***
412  connection.appendInt32(action);
413 
414  // *** pose ***
415  if (!pose.write(connection)) {
416  return false;
417  }
418 
419  // *** scale ***
420  if (!scale.write(connection)) {
421  return false;
422  }
423 
424  // *** color ***
425  if (!color.write(connection)) {
426  return false;
427  }
428 
429  // *** lifetime ***
430  if (!lifetime.write(connection)) {
431  return false;
432  }
433 
434  // *** frame_locked ***
435  connection.appendBlock((char*)&frame_locked, 1);
436 
437  // *** points ***
438  connection.appendInt32(points.size());
439  for (size_t i=0; i<points.size(); i++) {
440  if (!points[i].write(connection)) {
441  return false;
442  }
443  }
444 
445  // *** colors ***
446  connection.appendInt32(colors.size());
447  for (size_t i=0; i<colors.size(); i++) {
448  if (!colors[i].write(connection)) {
449  return false;
450  }
451  }
452 
453  // *** text ***
454  connection.appendInt32(text.length());
455  connection.appendExternalBlock((char*)text.c_str(), text.length());
456 
457  // *** mesh_resource ***
458  connection.appendInt32(mesh_resource.length());
459  connection.appendExternalBlock((char*)mesh_resource.c_str(), mesh_resource.length());
460 
461  // *** mesh_use_embedded_materials ***
462  connection.appendBlock((char*)&mesh_use_embedded_materials, 1);
463 
464  return !connection.isError();
465  }
466 
467  bool writeBottle(yarp::os::ConnectionWriter& connection) const override
468  {
469  connection.appendInt32(BOTTLE_TAG_LIST);
470  connection.appendInt32(31);
471 
472  // *** header ***
473  if (!header.write(connection)) {
474  return false;
475  }
476 
477  // *** ns ***
478  connection.appendInt32(BOTTLE_TAG_STRING);
479  connection.appendInt32(ns.length());
480  connection.appendExternalBlock((char*)ns.c_str(), ns.length());
481 
482  // *** id ***
483  connection.appendInt32(BOTTLE_TAG_INT32);
484  connection.appendInt32(id);
485 
486  // *** type ***
487  connection.appendInt32(BOTTLE_TAG_INT32);
488  connection.appendInt32(type);
489 
490  // *** action ***
491  connection.appendInt32(BOTTLE_TAG_INT32);
492  connection.appendInt32(action);
493 
494  // *** pose ***
495  if (!pose.write(connection)) {
496  return false;
497  }
498 
499  // *** scale ***
500  if (!scale.write(connection)) {
501  return false;
502  }
503 
504  // *** color ***
505  if (!color.write(connection)) {
506  return false;
507  }
508 
509  // *** lifetime ***
510  if (!lifetime.write(connection)) {
511  return false;
512  }
513 
514  // *** frame_locked ***
515  connection.appendInt32(BOTTLE_TAG_INT8);
516  connection.appendInt8(frame_locked);
517 
518  // *** points ***
519  connection.appendInt32(BOTTLE_TAG_LIST);
520  connection.appendInt32(points.size());
521  for (size_t i=0; i<points.size(); i++) {
522  if (!points[i].write(connection)) {
523  return false;
524  }
525  }
526 
527  // *** colors ***
528  connection.appendInt32(BOTTLE_TAG_LIST);
529  connection.appendInt32(colors.size());
530  for (size_t i=0; i<colors.size(); i++) {
531  if (!colors[i].write(connection)) {
532  return false;
533  }
534  }
535 
536  // *** text ***
537  connection.appendInt32(BOTTLE_TAG_STRING);
538  connection.appendInt32(text.length());
539  connection.appendExternalBlock((char*)text.c_str(), text.length());
540 
541  // *** mesh_resource ***
542  connection.appendInt32(BOTTLE_TAG_STRING);
543  connection.appendInt32(mesh_resource.length());
544  connection.appendExternalBlock((char*)mesh_resource.c_str(), mesh_resource.length());
545 
546  // *** mesh_use_embedded_materials ***
547  connection.appendInt32(BOTTLE_TAG_INT8);
549 
550  connection.convertTextMode();
551  return !connection.isError();
552  }
553 
555  bool write(yarp::os::ConnectionWriter& connection) const override
556  {
557  return (connection.isBareMode() ? writeBare(connection)
558  : writeBottle(connection));
559  }
560 
561  // This class will serialize ROS style or YARP style depending on protocol.
562  // If you need to force a serialization style, use one of these classes:
565 
566  // The name for this message, ROS will need this
567  static constexpr const char* typeName = "visualization_msgs/Marker";
568 
569  // The checksum for this message, ROS will need this
570  static constexpr const char* typeChecksum = "4048c9de2a16f4ae8e0538085ebf1b97";
571 
572  // The source text for this message, ROS will need this
573  static constexpr const char* typeText = "\
574 # See http://www.ros.org/wiki/rviz/DisplayTypes/Marker and http://www.ros.org/wiki/rviz/Tutorials/Markers%3A%20Basic%20Shapes for more information on using this message with rviz\n\
575 \n\
576 uint8 ARROW=0\n\
577 uint8 CUBE=1\n\
578 uint8 SPHERE=2\n\
579 uint8 CYLINDER=3\n\
580 uint8 LINE_STRIP=4\n\
581 uint8 LINE_LIST=5\n\
582 uint8 CUBE_LIST=6\n\
583 uint8 SPHERE_LIST=7\n\
584 uint8 POINTS=8\n\
585 uint8 TEXT_VIEW_FACING=9\n\
586 uint8 MESH_RESOURCE=10\n\
587 uint8 TRIANGLE_LIST=11\n\
588 \n\
589 uint8 ADD=0\n\
590 uint8 MODIFY=0\n\
591 uint8 DELETE=2\n\
592 uint8 DELETEALL=3\n\
593 \n\
594 Header header # header for time/frame information\n\
595 string ns # Namespace to place this object in... used in conjunction with id to create a unique name for the object\n\
596 int32 id # object ID useful in conjunction with the namespace for manipulating and deleting the object later\n\
597 int32 type # Type of object\n\
598 int32 action # 0 add/modify an object, 1 (deprecated), 2 deletes an object, 3 deletes all objects\n\
599 geometry_msgs/Pose pose # Pose of the object\n\
600 geometry_msgs/Vector3 scale # Scale of the object 1,1,1 means default (usually 1 meter square)\n\
601 std_msgs/ColorRGBA color # Color [0.0-1.0]\n\
602 duration lifetime # How long the object should last before being automatically deleted. 0 means forever\n\
603 bool frame_locked # If this marker should be frame-locked, i.e. retransformed into its frame every timestep\n\
604 \n\
605 #Only used if the type specified has some use for them (eg. POINTS, LINE_STRIP, ...)\n\
606 geometry_msgs/Point[] points\n\
607 #Only used if the type specified has some use for them (eg. POINTS, LINE_STRIP, ...)\n\
608 #number of colors must either be 0 or equal to the number of points\n\
609 #NOTE: alpha is not yet used\n\
610 std_msgs/ColorRGBA[] colors\n\
611 \n\
612 # NOTE: only used for text markers\n\
613 string text\n\
614 \n\
615 # NOTE: only used for MESH_RESOURCE markers\n\
616 string mesh_resource\n\
617 bool mesh_use_embedded_materials\n\
618 \n\
619 ================================================================================\n\
620 MSG: std_msgs/Header\n\
621 # Standard metadata for higher-level stamped data types.\n\
622 # This is generally used to communicate timestamped data \n\
623 # in a particular coordinate frame.\n\
624 # \n\
625 # sequence ID: consecutively increasing ID \n\
626 uint32 seq\n\
627 #Two-integer timestamp that is expressed as:\n\
628 # * stamp.sec: seconds (stamp_secs) since epoch (in Python the variable is called 'secs')\n\
629 # * stamp.nsec: nanoseconds since stamp_secs (in Python the variable is called 'nsecs')\n\
630 # time-handling sugar is provided by the client library\n\
631 time stamp\n\
632 #Frame this data is associated with\n\
633 # 0: no frame\n\
634 # 1: global frame\n\
635 string frame_id\n\
636 \n\
637 ================================================================================\n\
638 MSG: geometry_msgs/Pose\n\
639 # A representation of pose in free space, composed of position and orientation. \n\
640 Point position\n\
641 Quaternion orientation\n\
642 \n\
643 ================================================================================\n\
644 MSG: geometry_msgs/Point\n\
645 # This contains the position of a point in free space\n\
646 float64 x\n\
647 float64 y\n\
648 float64 z\n\
649 \n\
650 ================================================================================\n\
651 MSG: geometry_msgs/Quaternion\n\
652 # This represents an orientation in free space in quaternion form.\n\
653 \n\
654 float64 x\n\
655 float64 y\n\
656 float64 z\n\
657 float64 w\n\
658 \n\
659 ================================================================================\n\
660 MSG: geometry_msgs/Vector3\n\
661 # This represents a vector in free space. \n\
662 # It is only meant to represent a direction. Therefore, it does not\n\
663 # make sense to apply a translation to it (e.g., when applying a \n\
664 # generic rigid transformation to a Vector3, tf2 will only apply the\n\
665 # rotation). If you want your data to be translatable too, use the\n\
666 # geometry_msgs/Point message instead.\n\
667 \n\
668 float64 x\n\
669 float64 y\n\
670 float64 z\n\
671 ================================================================================\n\
672 MSG: std_msgs/ColorRGBA\n\
673 float32 r\n\
674 float32 g\n\
675 float32 b\n\
676 float32 a\n\
677 ";
678 
679  yarp::os::Type getType() const override
680  {
682  typ.addProperty("md5sum", yarp::os::Value(typeChecksum));
683  typ.addProperty("message_definition", yarp::os::Value(typeText));
684  return typ;
685  }
686 };
687 
688 } // namespace visualization_msgs
689 } // namespace rosmsg
690 } // namespace yarp
691 
692 #endif // YARP_ROSMSG_visualization_msgs_Marker_h
#define BOTTLE_TAG_INT8
Definition: Bottle.h:19
#define BOTTLE_TAG_INT32
Definition: Bottle.h:21
#define BOTTLE_TAG_STRING
Definition: Bottle.h:26
#define BOTTLE_TAG_LIST
Definition: Bottle.h:28
An interface for reading from a network connection.
virtual bool expectBlock(char *data, size_t len)=0
Read a block of data from the network connection.
virtual bool isBareMode() const =0
Check if the connection is bare mode.
virtual std::int32_t expectInt32()=0
Read a 32-bit integer from the network connection.
virtual bool convertTextMode()=0
Reads in a standard description in text mode, and converts it to a standard description in binary.
virtual bool isError() const =0
An interface for writing to a network connection.
virtual bool isError() const =0
virtual bool isBareMode() const =0
Check if the connection is bare mode.
virtual void appendInt8(std::int8_t data)=0
Send a representation of a 8-bit integer to the network connection.
virtual void appendExternalBlock(const char *data, size_t len)=0
Send a block of data to the network connection, without making a copy.
virtual bool convertTextMode()=0
Converts a standard description in binary into a textual description, if the connection is in text-mo...
virtual void appendInt32(std::int32_t data)=0
Send a representation of a 32-bit integer to the network connection.
virtual void appendBlock(const char *data, size_t len)=0
Send a block of data to the network connection.
static Type byName(const char *name)
Definition: Type.cpp:171
Type & addProperty(const char *key, const Value &val)
Definition: Type.cpp:134
A single value (typically within a Bottle).
Definition: Value.h:45
A "tamed" Portable, that promises to serialize itself in an IDL-friendly way.
Definition: WirePortable.h:23
virtual bool read(yarp::os::idl::WireReader &reader)
virtual bool write(const yarp::os::idl::WireWriter &writer) const
IDL-friendly connection reader.
Definition: WireReader.h:30
bool readString(std::string &str, bool *is_vocab=nullptr)
Definition: WireReader.cpp:382
std::int8_t expectInt8()
Definition: WireReader.h:80
std::int32_t expectInt32()
Definition: WireReader.h:92
bool write(yarp::os::ConnectionWriter &connection) const override
Write this object to a network connection.
Definition: TickDuration.h:148
bool read(yarp::os::ConnectionReader &connection) override
Read this object from a network connection.
Definition: TickDuration.h:113
bool write(yarp::os::ConnectionWriter &connection) const override
Write this object to a network connection.
Definition: Pose.h:129
bool read(yarp::os::ConnectionReader &connection) override
Read this object from a network connection.
Definition: Pose.h:88
bool read(yarp::os::ConnectionReader &connection) override
Read this object from a network connection.
Definition: Vector3.h:95
bool write(yarp::os::ConnectionWriter &connection) const override
Write this object to a network connection.
Definition: Vector3.h:137
bool read(yarp::os::ConnectionReader &connection) override
Read this object from a network connection.
Definition: ColorRGBA.h:101
bool write(yarp::os::ConnectionWriter &connection) const override
Write this object to a network connection.
Definition: ColorRGBA.h:150
bool write(yarp::os::ConnectionWriter &connection) const override
Write this object to a network connection.
Definition: Header.h:159
bool read(yarp::os::ConnectionReader &connection) override
Read this object from a network connection.
Definition: Header.h:112
static const std::uint8_t POINTS
Definition: Marker.h:86
static constexpr const char * typeChecksum
Definition: Marker.h:570
static const std::uint8_t CYLINDER
Definition: Marker.h:81
std::vector< yarp::rosmsg::std_msgs::ColorRGBA > colors
Definition: Marker.h:105
static const std::uint8_t DELETE
Definition: Marker.h:92
bool read(yarp::os::ConnectionReader &connection) override
Read this object from a network connection.
Definition: Marker.h:388
static const std::uint8_t CUBE_LIST
Definition: Marker.h:84
yarp::os::idl::BareStyle< yarp::rosmsg::visualization_msgs::Marker > rosStyle
Definition: Marker.h:563
yarp::rosmsg::std_msgs::ColorRGBA color
Definition: Marker.h:101
bool readBottle(yarp::os::ConnectionReader &connection) override
Definition: Marker.h:297
static const std::uint8_t TEXT_VIEW_FACING
Definition: Marker.h:87
bool writeBottle(yarp::os::ConnectionWriter &connection) const override
Definition: Marker.h:467
static const std::uint8_t SPHERE
Definition: Marker.h:80
bool writeBare(yarp::os::ConnectionWriter &connection) const override
Definition: Marker.h:394
static const std::uint8_t ARROW
Definition: Marker.h:78
yarp::rosmsg::TickDuration lifetime
Definition: Marker.h:102
static const std::uint8_t SPHERE_LIST
Definition: Marker.h:85
static const std::uint8_t MODIFY
Definition: Marker.h:91
yarp::os::idl::BottleStyle< yarp::rosmsg::visualization_msgs::Marker > bottleStyle
Definition: Marker.h:564
yarp::rosmsg::geometry_msgs::Vector3 scale
Definition: Marker.h:100
static constexpr const char * typeText
Definition: Marker.h:573
static const std::uint8_t ADD
Definition: Marker.h:90
static const std::uint8_t TRIANGLE_LIST
Definition: Marker.h:89
static const std::uint8_t LINE_STRIP
Definition: Marker.h:82
yarp::rosmsg::geometry_msgs::Pose pose
Definition: Marker.h:99
static const std::uint8_t CUBE
Definition: Marker.h:79
bool readBare(yarp::os::ConnectionReader &connection) override
Definition: Marker.h:209
yarp::rosmsg::std_msgs::Header header
Definition: Marker.h:94
static const std::uint8_t LINE_LIST
Definition: Marker.h:83
static constexpr const char * typeName
Definition: Marker.h:567
std::vector< yarp::rosmsg::geometry_msgs::Point > points
Definition: Marker.h:104
static const std::uint8_t DELETEALL
Definition: Marker.h:93
static const std::uint8_t MESH_RESOURCE
Definition: Marker.h:88
yarp::os::Type getType() const override
Definition: Marker.h:679
bool write(yarp::os::ConnectionWriter &connection) const override
Write this object to a network connection.
Definition: Marker.h:555
The main, catch-all namespace for YARP.
Definition: dirs.h:16