8 #ifndef COFQUEUEPROPS_H_
9 #define COFQUEUEPROPS_H_ 1
13 #include "rofl/common/croflexception.h"
14 #include "rofl/common/openflow/openflow.h"
15 #include "rofl/common/openflow/cofqueueprop.h"
27 uint8_t ofp_version = rofl::openflow::OFP_VERSION_UNKNOWN);
53 get_version()
const {
return ofp_version; };
59 set_version(uint8_t ofp_version) {
60 this->ofp_version = ofp_version;
61 for (std::map<uint16_t, cofqueue_prop*>::iterator
62 it = properties.begin(); it != properties.end(); ++it) {
63 it->second->set_version(ofp_version);
70 const std::map<uint16_t, cofqueue_prop*>&
71 get_properties()
const {
return properties; };
76 std::map<uint16_t, cofqueue_prop*>&
77 set_properties() {
return properties; };
91 add_queue_prop_min_rate();
97 set_queue_prop_min_rate();
103 get_queue_prop_min_rate()
const;
109 drop_queue_prop_min_rate();
115 has_queue_prop_min_rate()
const;
121 add_queue_prop_max_rate();
127 set_queue_prop_max_rate();
133 get_queue_prop_max_rate()
const;
139 drop_queue_prop_max_rate();
145 has_queue_prop_max_rate()
const;
151 add_queue_prop_experimenter();
157 set_queue_prop_experimenter();
163 get_queue_prop_experimenter()
const;
169 drop_queue_prop_experimenter();
175 has_queue_prop_experimenter()
const;
192 uint8_t *buf,
size_t buflen);
211 os <<
rofl::indent(0) <<
"<cofqueue_props version: " << (
unsigned int)props.get_version()
212 <<
" #props: " << props.get_properties().size() <<
" >" << std::endl;
214 for (std::map<uint16_t, cofqueue_prop*>::const_iterator
215 it = props.properties.begin(); it != props.properties.end(); ++it) {
216 switch (it->second->get_property()) {
217 case rofl::openflow13::OFPQT_MIN_RATE: {
218 os << dynamic_cast<const cofqueue_prop_min_rate&>( *(it->second) );
220 case rofl::openflow13::OFPQT_MAX_RATE: {
221 os << dynamic_cast<const cofqueue_prop_max_rate&>( *(it->second) );
223 case rofl::openflow13::OFPQT_EXPERIMENTER: {
224 os << dynamic_cast<const cofqueue_prop_experimenter&>( *(it->second) );
227 os << (*(it->second));
237 std::map<uint16_t, cofqueue_prop*> properties;
Definition: cofqueueprop.h:172
Definition: cofqueueprop.h:268
Definition: cofqueueprop.h:364
Definition: cofqueueprops.h:20