OpenSDN source code
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
CompositeNHKey Class Reference

#include <nexthop.h>

Inheritance diagram for CompositeNHKey:
Collaboration diagram for CompositeNHKey:

Public Member Functions

 CompositeNHKey (COMPOSITETYPE type, bool policy, const ComponentNHKeyList &component_nh_key_list, const std::string &vrf_name)
 
 CompositeNHKey (COMPOSITETYPE type, bool validate_mcast_src, bool policy, const ComponentNHKeyList &component_nh_key_list, const std::string &vrf_name)
 
virtual CompositeNHKeyClone () const
 
virtual ~CompositeNHKey ()
 
virtual NextHopAllocEntry () const
 
virtual bool NextHopKeyIsLess (const NextHopKey &rhs) const
 
ComponentNHKeyList::const_iterator begin () const
 
ComponentNHKeyList::const_iterator end () const
 
const ComponentNHKeyListcomponent_nh_key_list () const
 
bool Reorder (Agent *agent, uint32_t label, const NextHop *nh)
 
void CreateTunnelNH (Agent *agent)
 
void CreateTunnelNHReq (Agent *agent)
 
void ChangeTunnelType (TunnelType::Type tunnel_type)
 
COMPOSITETYPE composite_nh_type () const
 
bool validate_mcast_src () const
 
void ReplaceLocalNexthop (const ComponentNHKeyList &new_comp_nh)
 
- Public Member Functions inherited from NextHopKey
 NextHopKey (NextHop::Type type, bool policy)
 
virtual ~NextHopKey ()
 
bool IsEqual (const NextHopKey &rhs) const
 
void SetPolicy (bool policy)
 
NextHop::Type GetType () const
 
bool GetPolicy () const
 
bool IsLess (const NextHopKey &rhs) const
 
- Public Member Functions inherited from AgentKey
 AgentKey ()
 
 AgentKey (DBSubOperation sub_op)
 
virtual ~AgentKey ()
 
- Public Member Functions inherited from DBRequestKey
virtual ~DBRequestKey ()
 

Private Member Functions

bool ExpandLocalCompositeNH (Agent *agent)
 
void insert (ComponentNHKeyPtr nh_key)
 
void erase (ComponentNHKeyPtr nh_key)
 
bool find (ComponentNHKeyPtr nh_key)
 
 DISALLOW_COPY_AND_ASSIGN (CompositeNHKey)
 

Private Attributes

COMPOSITETYPE composite_nh_type_
 
bool validate_mcast_src_
 
ComponentNHKeyList component_nh_key_list_
 
VrfKey vrf_key_
 

Friends

class CompositeNH
 

Additional Inherited Members

- Public Types inherited from AgentKey
enum  DBSubOperation { ADD_DEL_CHANGE, RESYNC }
 
- Public Attributes inherited from AgentKey
uint8_t sub_op_
 
- Protected Attributes inherited from NextHopKey
NextHop::Type type_
 
bool policy_
 

Detailed Description

Definition at line 1684 of file nexthop.h.

Constructor & Destructor Documentation

CompositeNHKey::CompositeNHKey ( COMPOSITETYPE  type,
bool  policy,
const ComponentNHKeyList component_nh_key_list,
const std::string &  vrf_name 
)
inline

Definition at line 1686 of file nexthop.h.

CompositeNHKey::CompositeNHKey ( COMPOSITETYPE  type,
bool  validate_mcast_src,
bool  policy,
const ComponentNHKeyList component_nh_key_list,
const std::string &  vrf_name 
)
inline

Definition at line 1696 of file nexthop.h.

virtual CompositeNHKey::~CompositeNHKey ( )
inlinevirtual

Definition at line 1706 of file nexthop.h.

Member Function Documentation

NextHop * CompositeNHKey::AllocEntry ( ) const
virtual

Implements NextHopKey.

Definition at line 1907 of file nexthop.cc.

Here is the call graph for this function:

ComponentNHKeyList::const_iterator CompositeNHKey::begin ( ) const
inline

Definition at line 1711 of file nexthop.h.

void CompositeNHKey::ChangeTunnelType ( TunnelType::Type  tunnel_type)

Definition at line 1914 of file nexthop.cc.

Here is the call graph for this function:

CompositeNHKey * CompositeNHKey::Clone ( ) const
virtual

Implements NextHopKey.

Definition at line 2398 of file nexthop.cc.

Here is the call graph for this function:

const ComponentNHKeyList& CompositeNHKey::component_nh_key_list ( ) const
inline

Definition at line 1719 of file nexthop.h.

COMPOSITETYPE CompositeNHKey::composite_nh_type ( ) const
inline

Definition at line 1726 of file nexthop.h.

void CompositeNHKey::CreateTunnelNH ( Agent agent)

Definition at line 2368 of file nexthop.cc.

Here is the call graph for this function:

void CompositeNHKey::CreateTunnelNHReq ( Agent agent)

Definition at line 2383 of file nexthop.cc.

Here is the call graph for this function:

CompositeNHKey::DISALLOW_COPY_AND_ASSIGN ( CompositeNHKey  )
private
ComponentNHKeyList::const_iterator CompositeNHKey::end ( ) const
inline

Definition at line 1715 of file nexthop.h.

void CompositeNHKey::erase ( ComponentNHKeyPtr  nh_key)
private

Definition at line 2438 of file nexthop.cc.

bool CompositeNHKey::ExpandLocalCompositeNH ( Agent agent)
private

Definition at line 2652 of file nexthop.cc.

Here is the call graph for this function:

bool CompositeNHKey::find ( ComponentNHKeyPtr  nh_key)
private

Definition at line 2403 of file nexthop.cc.

void CompositeNHKey::insert ( ComponentNHKeyPtr  nh_key)
private

Definition at line 2416 of file nexthop.cc.

Here is the call graph for this function:

bool CompositeNHKey::NextHopKeyIsLess ( const NextHopKey rhs) const
virtual

Reimplemented from NextHopKey.

Definition at line 2596 of file nexthop.cc.

Here is the call graph for this function:

bool CompositeNHKey::Reorder ( Agent agent,
uint32_t  label,
const NextHop nh 
)

Definition at line 2740 of file nexthop.cc.

Here is the call graph for this function:

void CompositeNHKey::ReplaceLocalNexthop ( const ComponentNHKeyList new_comp_nh)

Definition at line 1774 of file nexthop.cc.

bool CompositeNHKey::validate_mcast_src ( ) const
inline

Definition at line 1727 of file nexthop.h.

Friends And Related Function Documentation

friend class CompositeNH
friend

Definition at line 1731 of file nexthop.h.

Member Data Documentation

ComponentNHKeyList CompositeNHKey::component_nh_key_list_
private

Definition at line 1739 of file nexthop.h.

COMPOSITETYPE CompositeNHKey::composite_nh_type_
private

Definition at line 1737 of file nexthop.h.

bool CompositeNHKey::validate_mcast_src_
private

Definition at line 1738 of file nexthop.h.

VrfKey CompositeNHKey::vrf_key_
private

Definition at line 1740 of file nexthop.h.


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