OpenSDN source code
|
#include <flow_mgmt_tree.h>
Public Types | |
typedef std::map< FlowMgmtKey *, FlowMgmtEntry *, FlowMgmtKeyCmp > | Tree |
Public Member Functions | |
FlowMgmtTree (FlowMgmtManager *mgr) | |
virtual | ~FlowMgmtTree () |
virtual bool | Add (FlowMgmtKey *key, FlowEntry *flow, FlowMgmtKeyNode *node) |
virtual bool | Delete (FlowMgmtKey *key, FlowEntry *flow, FlowMgmtKeyNode *node) |
virtual void | InsertEntry (FlowMgmtKey *key, FlowMgmtEntry *entry) |
virtual void | RemoveEntry (Tree::iterator it) |
virtual bool | OperEntryAdd (const FlowMgmtRequest *req, FlowMgmtKey *key) |
virtual bool | OperEntryChange (const FlowMgmtRequest *req, FlowMgmtKey *key) |
virtual bool | OperEntryDelete (const FlowMgmtRequest *req, FlowMgmtKey *key) |
virtual bool | RetryDelete (FlowMgmtKey *key) |
virtual void | ExtractKeys (FlowEntry *flow, FlowMgmtKeyTree *tree)=0 |
virtual FlowMgmtEntry * | Allocate (const FlowMgmtKey *key)=0 |
virtual void | FreeNotify (FlowMgmtKey *key, uint32_t gen_id) |
FlowMgmtEntry * | Locate (FlowMgmtKey *key) |
FlowMgmtEntry * | Find (FlowMgmtKey *key) |
FlowMgmtKey * | LowerBound (FlowMgmtKey *key) |
Tree & | tree () |
FlowMgmtManager * | mgr () const |
Static Public Member Functions | |
static bool | AddFlowMgmtKey (FlowMgmtKeyTree *tree, FlowMgmtKey *key) |
Protected Member Functions | |
bool | TryDelete (FlowMgmtKey *key, FlowMgmtEntry *entry) |
Protected Attributes | |
Tree | tree_ |
FlowMgmtManager * | mgr_ |
Private Member Functions | |
DISALLOW_COPY_AND_ASSIGN (FlowMgmtTree) | |
Definition at line 19 of file flow_mgmt_tree.h.
typedef std::map<FlowMgmtKey *, FlowMgmtEntry *, FlowMgmtKeyCmp> FlowMgmtTree::Tree |
Definition at line 21 of file flow_mgmt_tree.h.
|
inline |
Definition at line 22 of file flow_mgmt_tree.h.
|
inlinevirtual |
Definition at line 23 of file flow_mgmt_tree.h.
|
virtual |
|
static |
Definition at line 67 of file flow_mgmt_tree.cc.
|
pure virtual |
|
virtual |
Reimplemented in RouteFlowMgmtTree, and AclFlowMgmtTree.
Definition at line 90 of file flow_mgmt_tree.cc.
|
private |
|
pure virtual |
FlowMgmtEntry * FlowMgmtTree::Find | ( | FlowMgmtKey * | key | ) |
Definition at line 11 of file flow_mgmt_tree.cc.
|
virtual |
Reimplemented in BgpAsAServiceFlowMgmtTree, and VrfFlowMgmtTree.
Definition at line 109 of file flow_mgmt_tree.cc.
|
virtual |
Reimplemented in InterfaceFlowMgmtTree, and VnFlowMgmtTree.
Definition at line 29 of file flow_mgmt_tree.cc.
FlowMgmtEntry * FlowMgmtTree::Locate | ( | FlowMgmtKey * | key | ) |
FlowMgmtKey * FlowMgmtTree::LowerBound | ( | FlowMgmtKey * | key | ) |
Definition at line 33 of file flow_mgmt_tree.cc.
|
inline |
Definition at line 61 of file flow_mgmt_tree.h.
|
virtual |
Reimplemented in VrfFlowMgmtTree, InetRouteFlowMgmtTree, and RouteFlowMgmtTree.
Definition at line 118 of file flow_mgmt_tree.cc.
|
virtual |
|
virtual |
Reimplemented in VrfFlowMgmtTree, InetRouteFlowMgmtTree, and RouteFlowMgmtTree.
Definition at line 134 of file flow_mgmt_tree.cc.
|
virtual |
Reimplemented in InterfaceFlowMgmtTree, and VnFlowMgmtTree.
Definition at line 60 of file flow_mgmt_tree.cc.
|
virtual |
|
inline |
Definition at line 60 of file flow_mgmt_tree.h.
|
protected |
|
protected |
Definition at line 67 of file flow_mgmt_tree.h.
|
protected |
Definition at line 66 of file flow_mgmt_tree.h.