Ariles
writer.h
Go to the documentation of this file.
1 /**
2  @file
3  @author Alexander Sherikov
4 
5  @copyright 2018 Alexander Sherikov, Licensed under the Apache License, Version 2.0.
6  (see @ref LICENSE or http://www.apache.org/licenses/LICENSE-2.0)
7 
8  @brief
9 */
10 
11 #pragma once
12 
13 
14 namespace ariles
15 {
16  namespace ns_ros
17  {
18  namespace impl
19  {
21  }
22 
23 
24 
25  /**
26  * @brief Configuration writer class
27  */
28  class ARILES_VISIBILITY_ATTRIBUTE Writer : public ns_ros::Base<ariles::write::Visitor, impl::Writer>
29  {
30  public:
31  explicit Writer(const ::ros::NodeHandle &nh);
32 
33 
34  void flush();
35 
36 
37 
38  void descend(const std::string &map_name);
39  void ascend();
40 
41  void startArray(const std::size_t size, const bool /*compact*/ = false);
42  void shiftArray();
43  void endArray();
44 
45 
46  void startRoot(const std::string &name);
47  void endRoot(const std::string &name);
48 
49 
50 #define ARILES_BASIC_TYPE(type) void writeElement(const type &element);
51 
53 
54 #undef ARILES_BASIC_TYPE
55  };
56  } // namespace ns_ros
57 } // namespace ariles
#define ARILES_BASIC_TYPES_LIST
Definition: helpers.h:105
ARILES_MACRO_SUBSTITUTE(ARILES_BASIC_SIGNED_INTEGER_TYPES_LIST) ARILES_MACRO_SUBSTITUTE(ARILES_BASIC_UNSIGNED_INTEGER_TYPES_LIST) ARILES_MACRO_SUBSTITUTE(ARILES_BASIC_REAL_TYPES_LIST) void Reader
Definition: reader.cpp:172
class ARILES_VISIBILITY_ATTRIBUTE Writer
Definition: writer.h:23
Configuration writer class.
Definition: writer.h:28
#define ARILES_VISIBILITY_ATTRIBUTE
Definition: helpers.h:69
Definition: basic.h:17