OpenSDN source code
VrfFlowMgmtTree Class Reference

#include <flow_mgmt_tree.h>

Inheritance diagram for VrfFlowMgmtTree:
Collaboration diagram for VrfFlowMgmtTree:

Public Types

typedef std::map< uint32_t, const VrfEntry * > VrfIdMap
 
- Public Types inherited from FlowMgmtTree
typedef std::map< FlowMgmtKey *, FlowMgmtEntry *, FlowMgmtKeyCmp > Tree
 

Public Member Functions

 VrfFlowMgmtTree (FlowMgmtManager *mgr)
 
virtual ~VrfFlowMgmtTree ()
 
virtual FlowMgmtEntry * Allocate (const FlowMgmtKey *key)
 
virtual bool OperEntryAdd (const FlowMgmtRequest *req, FlowMgmtKey *key)
 
virtual bool OperEntryDelete (const FlowMgmtRequest *req, FlowMgmtKey *key)
 
void DeleteDefaultRoute (const VrfEntry *vrf)
 
virtual void FreeNotify (FlowMgmtKey *key, uint32_t gen_id)
 
void RetryDelete (uint32_t vrf_id)
 
void ExtractKeys (FlowEntry *flow, FlowMgmtKeyTree *tree)
 
- Public Member Functions inherited from FlowMgmtTree
 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 OperEntryChange (const FlowMgmtRequest *req, FlowMgmtKey *key)
 
virtual bool RetryDelete (FlowMgmtKey *key)
 
FlowMgmtEntry * Locate (FlowMgmtKey *key)
 
FlowMgmtEntry * Find (FlowMgmtKey *key)
 
FlowMgmtKey * LowerBound (FlowMgmtKey *key)
 
Tree & tree ()
 
FlowMgmtManager * mgr () const
 

Private Member Functions

 DISALLOW_COPY_AND_ASSIGN (VrfFlowMgmtTree)
 

Private Attributes

VrfIdMap id_map_
 

Additional Inherited Members

- Static Public Member Functions inherited from FlowMgmtTree
static bool AddFlowMgmtKey (FlowMgmtKeyTree *tree, FlowMgmtKey *key)
 
- Protected Member Functions inherited from FlowMgmtTree
bool TryDelete (FlowMgmtKey *key, FlowMgmtEntry *entry)
 
- Protected Attributes inherited from FlowMgmtTree
Tree tree_
 
FlowMgmtManager * mgr_
 

Detailed Description

Definition at line 244 of file flow_mgmt_tree.h.

Member Typedef Documentation

◆ VrfIdMap

typedef std::map<uint32_t, const VrfEntry *> VrfFlowMgmtTree::VrfIdMap

Definition at line 249 of file flow_mgmt_tree.h.

Constructor & Destructor Documentation

◆ VrfFlowMgmtTree()

VrfFlowMgmtTree::VrfFlowMgmtTree ( FlowMgmtManager *  mgr)
inline

Definition at line 250 of file flow_mgmt_tree.h.

◆ ~VrfFlowMgmtTree()

virtual VrfFlowMgmtTree::~VrfFlowMgmtTree ( )
inlinevirtual

Definition at line 251 of file flow_mgmt_tree.h.

Member Function Documentation

◆ Allocate()

FlowMgmtEntry * VrfFlowMgmtTree::Allocate ( const FlowMgmtKey *  key)
virtual

Implements FlowMgmtTree.

Definition at line 655 of file flow_mgmt_tree.cc.

Here is the call graph for this function:

◆ DeleteDefaultRoute()

void VrfFlowMgmtTree::DeleteDefaultRoute ( const VrfEntry *  vrf)

Definition at line 695 of file flow_mgmt_tree.cc.

Here is the call graph for this function:

◆ DISALLOW_COPY_AND_ASSIGN()

VrfFlowMgmtTree::DISALLOW_COPY_AND_ASSIGN ( VrfFlowMgmtTree  )
private

◆ ExtractKeys()

void VrfFlowMgmtTree::ExtractKeys ( FlowEntry *  flow,
FlowMgmtKeyTree *  tree 
)
virtual

Implements FlowMgmtTree.

Definition at line 652 of file flow_mgmt_tree.cc.

◆ FreeNotify()

void VrfFlowMgmtTree::FreeNotify ( FlowMgmtKey *  key,
uint32_t  gen_id 
)
virtual

Reimplemented from FlowMgmtTree.

Definition at line 673 of file flow_mgmt_tree.cc.

Here is the call graph for this function:

◆ OperEntryAdd()

bool VrfFlowMgmtTree::OperEntryAdd ( const FlowMgmtRequest *  req,
FlowMgmtKey *  key 
)
virtual

Reimplemented from FlowMgmtTree.

Definition at line 660 of file flow_mgmt_tree.cc.

Here is the call graph for this function:

◆ OperEntryDelete()

bool VrfFlowMgmtTree::OperEntryDelete ( const FlowMgmtRequest *  req,
FlowMgmtKey *  key 
)
virtual

Reimplemented from FlowMgmtTree.

Definition at line 721 of file flow_mgmt_tree.cc.

Here is the call graph for this function:

◆ RetryDelete()

void VrfFlowMgmtTree::RetryDelete ( uint32_t  vrf_id)

Definition at line 683 of file flow_mgmt_tree.cc.

Here is the call graph for this function:

Member Data Documentation

◆ id_map_

VrfIdMap VrfFlowMgmtTree::id_map_
private

Definition at line 262 of file flow_mgmt_tree.h.


The documentation for this class was generated from the following files: