OpenSDN source code
flow_entry_info.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2018 Juniper Networks, Inc. All rights reserved.
3  * Copyright Contributors to the OpenSDN project
4  */
5 
6 #ifndef __AGENT_PKT_FLOW_ENTRY_INFO_H__
7 #define __AGENT_PKT_FLOW_ENTRY_INFO_H__
8 
10 
12 // Per flow information stored in flow-mgmt module. Holds a reference to
13 // flow so that flow active till flow-mgmt processing is done
16 public:
18  flow_(flow), tree_(), count_(0), ingress_(false), local_flow_(false) {
19  }
20  virtual ~FlowEntryInfo() { assert(tree_.size() == 0); }
21  const FlowMgmtKeyTree &tree() const { return tree_; }
22 
23 private:
24  friend class FlowMgmtManager;
27  uint32_t count_; // Number of times tree modified
28  bool ingress_;
31 };
32 
33 #endif // __AGENT_PKT_FLOW_ENTRY_INFO_H__
virtual ~FlowEntryInfo()
const FlowMgmtKeyTree & tree() const
FlowMgmtKeyTree tree_
FlowEntryInfo(FlowEntry *flow)
DISALLOW_COPY_AND_ASSIGN(FlowEntryInfo)
FlowEntryPtr flow_
boost::intrusive_ptr< FlowEntry > FlowEntryPtr
Definition: flow_entry.h:126
std::map< FlowMgmtKey *, FlowMgmtKeyNode *, FlowMgmtKeyCmp > FlowMgmtKeyTree