OpenSDN source code
VmEntry Class Reference

#include <vm.h>

Inheritance diagram for VmEntry:
Collaboration diagram for VmEntry:

Public Member Functions

 VmEntry (const boost::uuids::uuid &id)
 
virtual ~VmEntry ()
 
virtual bool IsLess (const DBEntry &rhs) const
 
virtual KeyPtr GetDBRequestKey () const
 
virtual void SetKey (const DBRequestKey *key)
 
virtual string ToString () const
 
const string & GetCfgName () const
 
void SetCfgName (std::string name)
 
const boost::uuids::uuidGetUuid () const
 
uint32_t GetRefCount () const
 
void SendObjectLog (AgentLogEvent::type event) const
 
bool DBEntrySandesh (Sandesh *sresp, std::string &name) const
 
uint32_t flow_count () const
 
void update_flow_count (int val) const
 
uint32_t linklocal_flow_count () const
 
void update_linklocal_flow_count (int val) const
 
bool drop_new_flows () const
 
- Public Member Functions inherited from AgentOperDBEntry
 AgentOperDBEntry ()
 
virtual ~AgentOperDBEntry ()
 
IFMapNodeifmap_node () const
 
void SetIFMapNodeState (IFMapDependencyManager::IFMapNodePtr sref)
 
- 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 ()
 
- Public Member Functions inherited from DBEntry
 DBEntry ()
 
virtual ~DBEntry ()
 
bool operator< (const DBEntry &rhs) const
 
- Public Member Functions inherited from DBEntryBase
 DBEntryBase ()
 
virtual ~DBEntryBase ()
 
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 ()
 

Static Public Attributes

static const int kVectorIncreaseSize = 16
 

Private Member Functions

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

Private Attributes

boost::uuids::uuid uuid_
 
std::string name_
 
tbb::atomic< int > flow_count_
 
tbb::atomic< int > linklocal_flow_count_
 
bool drop_new_flows_
 
- Private Attributes inherited from AgentRefCount< VmEntry >
tbb::mutex back_ref_mutex_
 
std::set< IntrusiveReferrerback_ref_set_
 

Friends

class VmTable
 

Additional Inherited Members

- 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 Attributes inherited from DBEntryBase
boost::intrusive::list_member_hook chg_list_
 

Detailed Description

Definition at line 32 of file vm.h.

Constructor & Destructor Documentation

◆ VmEntry()

VmEntry::VmEntry ( const boost::uuids::uuid id)

Definition at line 22 of file vm.cc.

◆ ~VmEntry()

VmEntry::~VmEntry ( )
virtual

Definition at line 28 of file vm.cc.

Member Function Documentation

◆ DBEntrySandesh()

bool VmEntry::DBEntrySandesh ( Sandesh sresp,
std::string &  name 
) const
virtual

Implements AgentDBEntry.

Definition at line 52 of file vm.cc.

Here is the call graph for this function:

◆ DISALLOW_COPY_AND_ASSIGN()

VmEntry::DISALLOW_COPY_AND_ASSIGN ( VmEntry  )
private

◆ drop_new_flows()

bool VmEntry::drop_new_flows ( ) const
inline

Definition at line 65 of file vm.h.

◆ flow_count()

uint32_t VmEntry::flow_count ( ) const
inline

Definition at line 55 of file vm.h.

◆ GetCfgName()

const string& VmEntry::GetCfgName ( ) const
inline

Definition at line 43 of file vm.h.

◆ GetDBRequestKey()

DBEntryBase::KeyPtr VmEntry::GetDBRequestKey ( ) const
virtual

Implements DBEntryBase.

Definition at line 42 of file vm.cc.

◆ GetRefCount()

uint32_t VmEntry::GetRefCount ( ) const
inlinevirtual

Implements AgentDBEntry.

Definition at line 48 of file vm.h.

Here is the call graph for this function:

◆ GetUuid()

const boost::uuids::uuid& VmEntry::GetUuid ( ) const
inline

Definition at line 46 of file vm.h.

◆ IsLess()

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

Implements DBEntry.

Definition at line 33 of file vm.cc.

◆ linklocal_flow_count()

uint32_t VmEntry::linklocal_flow_count ( ) const
inline

Definition at line 58 of file vm.h.

◆ SendObjectLog()

void VmEntry::SendObjectLog ( AgentLogEvent::type  event) const

Definition at line 115 of file vm.cc.

Here is the call graph for this function:

◆ SetCfgName()

void VmEntry::SetCfgName ( std::string  name)
inline

Definition at line 44 of file vm.h.

◆ SetInterfacesDropNewFlows()

void VmEntry::SetInterfacesDropNewFlows ( bool  drop_new_flows) const
private

Definition at line 94 of file vm.cc.

Here is the call graph for this function:

◆ SetKey()

void VmEntry::SetKey ( const DBRequestKey key)
virtual

Implements DBEntry.

Definition at line 47 of file vm.cc.

◆ ToString()

string VmEntry::ToString ( ) const
virtual

Implements DBEntryBase.

Definition at line 38 of file vm.cc.

Here is the call graph for this function:

◆ update_flow_count()

void VmEntry::update_flow_count ( int  val) const

Definition at line 69 of file vm.cc.

Here is the call graph for this function:

◆ update_linklocal_flow_count()

void VmEntry::update_linklocal_flow_count ( int  val) const
inline

Definition at line 59 of file vm.h.

Friends And Related Function Documentation

◆ VmTable

friend class VmTable
friend

Definition at line 69 of file vm.h.

Member Data Documentation

◆ drop_new_flows_

bool VmEntry::drop_new_flows_
mutableprivate

Definition at line 74 of file vm.h.

◆ flow_count_

tbb::atomic<int> VmEntry::flow_count_
mutableprivate

Definition at line 72 of file vm.h.

◆ kVectorIncreaseSize

const int VmEntry::kVectorIncreaseSize = 16
static

Definition at line 34 of file vm.h.

◆ linklocal_flow_count_

tbb::atomic<int> VmEntry::linklocal_flow_count_
mutableprivate

Definition at line 73 of file vm.h.

◆ name_

std::string VmEntry::name_
private

Definition at line 71 of file vm.h.

◆ uuid_

boost::uuids::uuid VmEntry::uuid_
private

Definition at line 70 of file vm.h.


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