12 #ifndef COFACTIONSET_H_
13 #define COFACTIONSET_H_
19 #include "rofl/common/openflow/cofaction.h"
20 #include "rofl/common/openflow/cofinstruction.h"
30 std::map<uint16_t, std::map<uint8_t, cofaction> >
acfields;
32 uint64_t metadata_mask;
50 std::vector<cofaction>&
87 init_action_indices();
89 static std::map<uint16_t, int>
95 operator<< (std::ostream& os,
cofactionset const& actionset) {
96 os <<
"<cofactionset ";
97 os <<
"metadata:" << (
unsigned long long)actionset.metadata <<
" ";
98 os <<
"metadata-mask:" << (
unsigned long long)actionset.metadata_mask <<
" ";
99 os <<
"actions:" << std::endl;
100 for (std::map<int,cofaction>::const_iterator
101 it = actionset.
acset.begin(); it != actionset.
acset.end(); ++it) {
102 os << it->first <<
":" << it->second << std::endl;
104 os <<
"set-fields:" << std::endl;
105 for (std::map<uint16_t, std::map<uint8_t, cofaction> >::const_iterator
108 uint16_t oxm_class = it->first;
109 std::map<uint8_t, cofaction>
const& acfields_per_class = it->second;
111 os <<
"oxm-class:" << (int)oxm_class << std::endl;
112 for (std::map<uint8_t, cofaction>::const_iterator
113 jt = acfields_per_class.begin(); jt != acfields_per_class.end(); ++jt) {
115 os << (int)jt->first <<
": " << jt->second << std::endl;
void actionset_write_metadata(const cofinstruction_write_metadata &inst)
Definition: cofactionset.cc:128
std::vector< cofaction > & ordered_action_set()
static std::map< uint16_t, int > action_indices
indexes for priority ordering of actions
Definition: cofactionset.h:90
std::map< uint16_t, std::map< uint8_t, cofaction > > acfields
OF1.2 list of set fields per instruction.
Definition: cofactionset.h:30
Definition: cofactionset.h:25
static int get_action_index(uint16_t acdtion_type)
Definition: cofactionset.cc:56
cofactionset()
Definition: cofactionset.cc:19
~cofactionset()
Definition: cofactionset.cc:28
void actionset_write_actions(const cofinstruction_actions &inst)
Definition: cofactionset.cc:96
Definition: cofinstruction.h:198
std::map< int, cofaction > acset
OF1.1 ActionSet, except OFPAT_SET_FIELD (OF1.2)
Definition: cofactionset.h:29
void actionset_clear()
Definition: cofactionset.cc:88