Revised OpenFlow Library  v0.6.0dev
 All Classes Files Functions Variables Friends Groups Pages
cofmsg_meter_features_stats.h
1 /*
2  * cofmsg_meter_features_stats.h
3  *
4  * Created on: 27.05.2014
5  * Author: andi
6  */
7 
8 #ifndef COFMSG_METER_FEATURES_H_
9 #define COFMSG_METER_FEATURES_H_ 1
10 
11 #include <inttypes.h>
12 #include <map>
13 
14 #include "rofl/common/openflow/messages/cofmsg_stats.h"
15 #include "rofl/common/openflow/cofmeterfeatures.h"
16 
17 namespace rofl {
18 namespace openflow {
19 
25 {
26 public:
27 
28 
33  uint8_t of_version = rofl::openflow::OFP_VERSION_UNKNOWN,
34  uint32_t xid = 0,
35  uint16_t stats_flags = 0);
36 
37 
43 
44 
49  operator= (
51 
52 
56  virtual
58 
59 
64  rofl::cmemory *memarea);
65 
66 
67 
68 public:
69 
70  friend std::ostream&
71  operator<< (std::ostream& os, cofmsg_meter_features_stats_request const& msg) {
72  os << dynamic_cast<cofmsg_stats_request const&>( msg );
73  os << indent(2) << "<cofmsg_meter_features_request >" << std::endl;
74  return os;
75  };
76 };
77 
78 
79 
80 
81 
82 
83 
84 
89  public cofmsg_stats_reply
90 {
91 public:
92 
93 
98  uint8_t of_version = rofl::openflow::OFP_VERSION_UNKNOWN,
99  uint32_t xid = 0,
100  uint16_t stats_flags = 0,
102 
103 
109 
110 
115  operator= (
117 
118 
122  virtual
124 
125 
130 
131 
135  virtual void
136  reset();
137 
138 
142  virtual uint8_t*
143  resize(size_t len);
144 
145 
149  virtual size_t
150  length() const;
151 
152 
156  virtual void
157  pack(uint8_t *buf = (uint8_t*)0, size_t buflen = 0);
158 
159 
163  virtual void
164  unpack(uint8_t *buf, size_t buflen);
165 
166 
169  virtual void
170  validate();
171 
172 public:
173 
178  get_meter_features_reply() const { return meter_features; };
179 
184  set_meter_features_reply() { return meter_features; };
185 
186 
187 public:
188 
189  friend std::ostream&
190  operator<< (std::ostream& os, cofmsg_meter_features_stats_reply const& msg) {
191  os << dynamic_cast<cofmsg_stats_reply const&>( msg );
192  os << indent(2) << "<cofmsg_meter_features_reply >" << std::endl;
193  indent i(4); os << msg.get_meter_features_reply();
194  return os;
195  };
196 
197 private:
198 
200 };
201 
202 } // end of namespace openflow
203 } // end of namespace rofl
204 
205 #endif /* COFMSG_METER_FEATURES_STATS_H_ */
cofmsg_meter_features_stats_request(uint8_t of_version=rofl::openflow::OFP_VERSION_UNKNOWN, uint32_t xid=0, uint16_t stats_flags=0)
Definition: cofmsg_meter_features_stats.cc:5
Definition: cofmeterfeatures.h:22
Definition: cofmsg_stats.h:264
cofmsg_meter_features_stats_reply(uint8_t of_version=rofl::openflow::OFP_VERSION_UNKNOWN, uint32_t xid=0, uint16_t stats_flags=0, const rofl::openflow::cofmeter_features_reply &meter_features=rofl::openflow::cofmeter_features_reply())
Definition: cofmsg_meter_features_stats.cc:74
Definition: cofmsg_meter_features_stats.h:23
virtual void validate()
Definition: cofmsg_meter_features_stats.cc:211
Definition: cofmsg_stats.h:187
virtual ~cofmsg_meter_features_stats_reply()
Definition: cofmsg_meter_features_stats.cc:131
virtual void unpack(uint8_t *buf, size_t buflen)
Definition: cofmsg_meter_features_stats.cc:201
virtual void pack(uint8_t *buf=(uint8_t *) 0, size_t buflen=0)
Definition: cofmsg_meter_features_stats.cc:171
virtual size_t length() const
Definition: cofmsg_meter_features_stats.cc:157
C++ abstraction for malloc'ed memory areas.
Definition: cmemory.h:44
virtual void reset()
Definition: cofmsg_meter_features_stats.cc:139
Definition: cofmsg_meter_features_stats.h:88
Definition: logging.h:76
virtual ~cofmsg_meter_features_stats_request()
Definition: cofmsg_meter_features_stats.cc:57