OpenSDN source code
VrfAssign Class Referenceabstract

#include <vrf_assign.h>

Inheritance diagram for VrfAssign:
Collaboration diagram for VrfAssign:

Classes

struct  VrfAssignData
 
struct  VrfAssignKey
 

Public Types

enum  Type { INVALID , VLAN }
 
- Public Types inherited from AgentDBEntry
typedef boost::intrusive_ptr< AgentDBEntryAgentDBEntyRef
 
- Public Types inherited from DBEntryBase
typedef DBTableBase::ListenerId ListenerId
 
typedef std::unique_ptr< DBRequestKeyKeyPtr
 

Public Member Functions

 VrfAssign (Type type, Interface *intrface)
 
virtual ~VrfAssign ()
 
uint32_t GetRefCount () const
 
bool IsLess (const DBEntry &rhs) const
 
bool Change (const DBRequest *req)
 
virtual bool VrfAssignIsLess (const VrfAssign &rhs) const =0
 
virtual bool VrfAssignChange (const DBRequest *req)
 
const Type GetType () const
 
const InterfaceGetInterface () const
 
const VrfEntryGetVrf () const
 
- Public Member Functions inherited from AgentDBEntry
 AgentDBEntry ()
 
virtual ~AgentDBEntry ()
 
void SetRefState () const
 
void ClearRefState () const
 
bool IsActive () const
 
DBStateGetAgentDBEntryState (int listener_id)
 
const DBStateGetAgentDBEntryState (int listener_id) const
 
virtual void AllocateResources (ResourceManager *resource_manager)
 
virtual void FreeResources (ResourceManager *resource_manager)
 
virtual void PostAdd ()
 
virtual bool DBEntrySandesh (Sandesh *resp, std::string &name) const =0
 
- Public Member Functions inherited from DBEntry
 DBEntry ()
 
virtual ~DBEntry ()
 
virtual void SetKey (const DBRequestKey *key)=0
 
bool operator< (const DBEntry &rhs) const
 
- Public Member Functions inherited from DBEntryBase
 DBEntryBase ()
 
virtual ~DBEntryBase ()
 
virtual std::string ToString () const =0
 
virtual KeyPtr GetDBRequestKey () const =0
 
virtual bool IsMoreSpecific (const std::string &match) const
 
virtual bool IsLessSpecific (const std::string &match) const
 
void SetState (DBTableBase *tbl_base, ListenerId listener, DBState *state)
 
void ClearState (DBTableBase *tbl_base, ListenerId listener)
 
DBStateGetState (DBTableBase *tbl_base, ListenerId listener) const
 
const DBStateGetState (const DBTableBase *tbl_base, ListenerId listener) const
 
bool is_state_empty (DBTablePartBase *tpart)
 
bool is_state_empty_unlocked (DBTablePartBase *tpart)
 
void Delete ()
 
void MarkDelete ()
 
void ClearDelete ()
 
bool IsDeleted () const
 
void set_onlist ()
 
void clear_onlist ()
 
bool is_onlist ()
 
void SetOnRemoveQ ()
 
bool IsOnRemoveQ ()
 
void ClearOnRemoveQ ()
 
void set_last_change_at (uint64_t time)
 
void set_last_change_at_to_now ()
 
const uint64_t last_change_at () const
 
const std::string last_change_at_str () const
 
void set_last_update_at (uint64_t time)
 
void set_last_update_at_to_now ()
 
const uint64_t last_update_at () const
 
DBTablePartBaseget_table_partition () const
 
void set_table_partition (DBTablePartBase *tpart)
 
DBTableBaseget_table () const
 
void Notify ()
 

Protected Member Functions

void SetVrf (VrfEntry *vrf)
 

Protected Attributes

Type type_
 
InterfaceRef interface_
 
VrfEntryRef vrf_
 

Private Member Functions

 DISALLOW_COPY_AND_ASSIGN (VrfAssign)
 
- Private Member Functions inherited from AgentRefCount< VrfAssign >
uint32_t GetRefCount () const
 
 AgentRefCount ()
 
 AgentRefCount (const AgentRefCount &)
 
AgentRefCountoperator= (const AgentRefCount &)
 
virtual ~AgentRefCount ()
 
void swap (AgentRefCount &)
 

Friends

class VrfAssignTable
 

Additional Inherited Members

- Public Attributes inherited from DBEntryBase
boost::intrusive::list_member_hook chg_list_
 
- Private Attributes inherited from AgentRefCount< VrfAssign >
tbb::mutex back_ref_mutex_
 
std::set< IntrusiveReferrerback_ref_set_
 

Detailed Description

Definition at line 16 of file vrf_assign.h.

Member Enumeration Documentation

◆ Type

Enumerator
INVALID 
VLAN 

Definition at line 18 of file vrf_assign.h.

Constructor & Destructor Documentation

◆ VrfAssign()

VrfAssign::VrfAssign ( Type  type,
Interface intrface 
)
inline

Definition at line 46 of file vrf_assign.h.

◆ ~VrfAssign()

virtual VrfAssign::~VrfAssign ( )
inlinevirtual

Definition at line 48 of file vrf_assign.h.

Member Function Documentation

◆ Change()

bool VrfAssign::Change ( const DBRequest req)

Definition at line 169 of file vrf_assign.cc.

Here is the call graph for this function:

◆ DISALLOW_COPY_AND_ASSIGN()

VrfAssign::DISALLOW_COPY_AND_ASSIGN ( VrfAssign  )
private

◆ GetInterface()

const Interface* VrfAssign::GetInterface ( ) const
inline

Definition at line 60 of file vrf_assign.h.

◆ GetRefCount()

uint32_t VrfAssign::GetRefCount ( ) const
inlinevirtual

Implements AgentDBEntry.

Definition at line 50 of file vrf_assign.h.

Here is the call graph for this function:

◆ GetType()

const Type VrfAssign::GetType ( ) const
inline

Definition at line 59 of file vrf_assign.h.

◆ GetVrf()

const VrfEntry* VrfAssign::GetVrf ( ) const
inline

Definition at line 61 of file vrf_assign.h.

◆ IsLess()

bool VrfAssign::IsLess ( const DBEntry rhs) const
virtual

Implements DBEntry.

Definition at line 156 of file vrf_assign.cc.

◆ SetVrf()

void VrfAssign::SetVrf ( VrfEntry vrf)
inlineprotected

Definition at line 65 of file vrf_assign.h.

◆ VrfAssignChange()

virtual bool VrfAssign::VrfAssignChange ( const DBRequest req)
inlinevirtual

Reimplemented in VlanVrfAssign.

Definition at line 57 of file vrf_assign.h.

◆ VrfAssignIsLess()

virtual bool VrfAssign::VrfAssignIsLess ( const VrfAssign rhs) const
pure virtual

Implemented in VlanVrfAssign.

Friends And Related Function Documentation

◆ VrfAssignTable

friend class VrfAssignTable
friend

Definition at line 64 of file vrf_assign.h.

Member Data Documentation

◆ interface_

InterfaceRef VrfAssign::interface_
protected

Definition at line 67 of file vrf_assign.h.

◆ type_

Type VrfAssign::type_
protected

Definition at line 66 of file vrf_assign.h.

◆ vrf_

VrfEntryRef VrfAssign::vrf_
protected

Definition at line 68 of file vrf_assign.h.


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