OpenSDN source code
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
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
< AgentDBEntry
AgentDBEntyRef
 
- Public Types inherited from DBEntryBase
typedef DBTableBase::ListenerId ListenerId
 
typedef std::unique_ptr
< DBRequestKey
KeyPtr
 

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

Enumerator
INVALID 
VLAN 

Definition at line 18 of file vrf_assign.h.

Constructor & Destructor Documentation

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

Definition at line 46 of file vrf_assign.h.

virtual VrfAssign::~VrfAssign ( )
inlinevirtual

Definition at line 48 of file vrf_assign.h.

Member Function Documentation

bool VrfAssign::Change ( const DBRequest req)

Definition at line 169 of file vrf_assign.cc.

Here is the call graph for this function:

VrfAssign::DISALLOW_COPY_AND_ASSIGN ( VrfAssign  )
private
const Interface* VrfAssign::GetInterface ( ) const
inline

Definition at line 60 of file vrf_assign.h.

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:

const Type VrfAssign::GetType ( ) const
inline

Definition at line 59 of file vrf_assign.h.

const VrfEntry* VrfAssign::GetVrf ( ) const
inline

Definition at line 61 of file vrf_assign.h.

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

Implements DBEntry.

Definition at line 156 of file vrf_assign.cc.

void VrfAssign::SetVrf ( VrfEntry vrf)
inlineprotected

Definition at line 65 of file vrf_assign.h.

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

Reimplemented in VlanVrfAssign.

Definition at line 57 of file vrf_assign.h.

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

Implemented in VlanVrfAssign.

Friends And Related Function Documentation

friend class VrfAssignTable
friend

Definition at line 61 of file vrf_assign.h.

Member Data Documentation

InterfaceRef VrfAssign::interface_
protected

Definition at line 67 of file vrf_assign.h.

Type VrfAssign::type_
protected

Definition at line 65 of file vrf_assign.h.

VrfEntryRef VrfAssign::vrf_
protected

Definition at line 68 of file vrf_assign.h.


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