OpenSDN source code
QosConfigKSyncEntry Class Reference

#include <qos_config_ksync.h>

Inheritance diagram for QosConfigKSyncEntry:
Collaboration diagram for QosConfigKSyncEntry:

Public Types

typedef std::pair< uint32_t, KSyncEntryPtrKSyncQosFcPair
 
typedef std::map< uint32_t, KSyncEntryPtrKSyncQosFcMap
 
- Public Types inherited from KSyncDBEntry
typedef std::list< DBEntry * > DupEntryList
 
- Public Types inherited from KSyncEntry
enum  KSyncState {
  INIT , TEMP , ADD_DEFER , CHANGE_DEFER ,
  IN_SYNC , SYNC_WAIT , NEED_SYNC , DEL_DEFER_SYNC ,
  DEL_DEFER_REF , DEL_DEFER_DEL_ACK , DEL_ACK_WAIT , RENEW_WAIT ,
  FREE_WAIT
}
 
enum  KSyncEvent {
  ADD_CHANGE_REQ , ADD_ACK , CHANGE_ACK , DEL_REQ ,
  DEL_ADD_REQ , DEL_ACK , RE_EVAL , INT_PTR_REL ,
  INVALID
}
 
typedef boost::intrusive_ptr< KSyncEntryKSyncEntryPtr
 

Public Member Functions

 QosConfigKSyncEntry (QosConfigKSyncObject *obj, const QosConfigKSyncEntry *entry)
 
 QosConfigKSyncEntry (QosConfigKSyncObject *obj, const AgentQosConfig *qc)
 
virtual ~QosConfigKSyncEntry ()
 
KSyncDBObjectGetObject () const
 
virtual bool IsLess (const KSyncEntry &rhs) const
 
virtual std::string ToString () const
 
virtual KSyncEntryUnresolvedReference ()
 
virtual bool Sync (DBEntry *e)
 
virtual int AddMsg (char *buf, int buf_len)
 
virtual int ChangeMsg (char *buf, int buf_len)
 
virtual int DeleteMsg (char *buf, int buf_len)
 
boost::uuids::uuid uuid () const
 
uint32_t id () const
 
int MsgLen ()
 
- Public Member Functions inherited from KSyncNetlinkDBEntry
 KSyncNetlinkDBEntry ()
 
 KSyncNetlinkDBEntry (uint32_t index)
 
virtual ~KSyncNetlinkDBEntry ()
 
bool Add ()
 
bool Change ()
 
bool Delete ()
 
- Public Member Functions inherited from KSyncDBEntry
 KSyncDBEntry ()
 
 KSyncDBEntry (uint32_t index)
 
virtual ~KSyncDBEntry ()
 
void SetDBEntry (DBEntry *db_entry)
 
DBEntryGetDBEntry ()
 
- Public Member Functions inherited from KSyncEntry
std::string StateString () const
 
std::string AckOperationString (KSyncEvent ack_event) const
 
std::string EventString (KSyncEvent event) const
 
 KSyncEntry ()
 
 KSyncEntry (uint32_t index)
 
virtual ~KSyncEntry ()
 
void Reset ()
 
void Reset (uint32_t index)
 
bool operator< (const KSyncEntry &rhs) const
 
virtual bool ShouldReEvalBackReference () const
 
bool IsResolved ()
 
virtual bool IsDataResolved ()
 
virtual void Response ()
 
virtual bool AllowDeleteStateComp ()
 
virtual void ErrorHandler (int err, uint32_t seqno, KSyncEvent event) const
 
virtual std::string VrouterError (uint32_t error) const
 
virtual bool pre_alloc_rx_buffer () const
 
virtual uint32_t GetTableIndex () const
 
virtual void StaleTimerExpired ()
 
size_t GetIndex () const
 
KSyncState GetState () const
 
bool del_add_pending () const
 
uint32_t GetRefCount () const
 
bool Seen () const
 
bool stale () const
 
void SetSeen ()
 
bool IsDeleted ()
 
bool IsActive ()
 
void set_del_add_pending (bool pending)
 
void RecordTransition (KSyncState from, KSyncState to, KSyncEvent event)
 
- Public Member Functions inherited from DBState
virtual ~DBState ()
 

Static Public Attributes

static const uint32_t kDefaultQosMsgSize = 4096
 
- Static Public Attributes inherited from KSyncEntry
static const size_t kInvalidIndex = 0xFFFFFFFF
 
static const int kDefaultMsgSize = 512
 

Private Member Functions

bool CopyQosMap (KSyncQosFcMap &ksync_map, const AgentQosConfig::QosIdForwardingClassMap *map)
 
int Encode (sandesh_op::type op, char *buf, int buf_len)
 
 DISALLOW_COPY_AND_ASSIGN (QosConfigKSyncEntry)
 

Private Attributes

KSyncDBObjectksync_obj_
 
boost::uuids::uuid uuid_
 
uint32_t id_
 
KSyncQosFcMap dscp_map_
 
KSyncQosFcMap vlan_priority_map_
 
KSyncQosFcMap mpls_exp_map_
 
uint32_t default_forwarding_class_
 

Additional Inherited Members

- Static Public Member Functions inherited from KSyncEntry
static std::string VrouterErrorToString (uint32_t error)
 
- Protected Member Functions inherited from KSyncEntry
void SetIndex (size_t index)
 
void SetState (KSyncState state)
 

Detailed Description

Definition at line 20 of file qos_config_ksync.h.

Member Typedef Documentation

◆ KSyncQosFcMap

Definition at line 24 of file qos_config_ksync.h.

◆ KSyncQosFcPair

typedef std::pair<uint32_t, KSyncEntryPtr> QosConfigKSyncEntry::KSyncQosFcPair

Definition at line 23 of file qos_config_ksync.h.

Constructor & Destructor Documentation

◆ QosConfigKSyncEntry() [1/2]

QosConfigKSyncEntry::QosConfigKSyncEntry ( QosConfigKSyncObject obj,
const QosConfigKSyncEntry entry 
)

Definition at line 15 of file qos_config_ksync.cc.

◆ QosConfigKSyncEntry() [2/2]

QosConfigKSyncEntry::QosConfigKSyncEntry ( QosConfigKSyncObject obj,
const AgentQosConfig qc 
)

Definition at line 20 of file qos_config_ksync.cc.

◆ ~QosConfigKSyncEntry()

QosConfigKSyncEntry::~QosConfigKSyncEntry ( )
virtual

Definition at line 25 of file qos_config_ksync.cc.

Member Function Documentation

◆ AddMsg()

int QosConfigKSyncEntry::AddMsg ( char *  buf,
int  buf_len 
)
virtual

Implements KSyncNetlinkDBEntry.

Definition at line 166 of file qos_config_ksync.cc.

Here is the call graph for this function:

◆ ChangeMsg()

int QosConfigKSyncEntry::ChangeMsg ( char *  buf,
int  buf_len 
)
virtual

Implements KSyncNetlinkDBEntry.

Definition at line 170 of file qos_config_ksync.cc.

Here is the call graph for this function:

◆ CopyQosMap()

bool QosConfigKSyncEntry::CopyQosMap ( KSyncQosFcMap ksync_map,
const AgentQosConfig::QosIdForwardingClassMap map 
)
private

Definition at line 43 of file qos_config_ksync.cc.

Here is the call graph for this function:

◆ DeleteMsg()

int QosConfigKSyncEntry::DeleteMsg ( char *  buf,
int  buf_len 
)
virtual

Implements KSyncNetlinkDBEntry.

Definition at line 174 of file qos_config_ksync.cc.

Here is the call graph for this function:

◆ DISALLOW_COPY_AND_ASSIGN()

QosConfigKSyncEntry::DISALLOW_COPY_AND_ASSIGN ( QosConfigKSyncEntry  )
private

◆ Encode()

int QosConfigKSyncEntry::Encode ( sandesh_op::type  op,
char *  buf,
int  buf_len 
)
private

Definition at line 94 of file qos_config_ksync.cc.

Here is the call graph for this function:

◆ GetObject()

KSyncDBObject * QosConfigKSyncEntry::GetObject ( ) const
virtual

Implements KSyncEntry.

Definition at line 28 of file qos_config_ksync.cc.

◆ id()

uint32_t QosConfigKSyncEntry::id ( ) const
inline

Definition at line 41 of file qos_config_ksync.h.

◆ IsLess()

bool QosConfigKSyncEntry::IsLess ( const KSyncEntry rhs) const
virtual

Implements KSyncEntry.

Definition at line 32 of file qos_config_ksync.cc.

◆ MsgLen()

int QosConfigKSyncEntry::MsgLen ( )
inlinevirtual

Reimplemented from KSyncNetlinkDBEntry.

Definition at line 42 of file qos_config_ksync.h.

◆ Sync()

bool QosConfigKSyncEntry::Sync ( DBEntry e)
virtual

Implements KSyncDBEntry.

Definition at line 69 of file qos_config_ksync.cc.

Here is the call graph for this function:

◆ ToString()

std::string QosConfigKSyncEntry::ToString ( ) const
virtual

Implements KSyncEntry.

Definition at line 37 of file qos_config_ksync.cc.

◆ UnresolvedReference()

KSyncEntry * QosConfigKSyncEntry::UnresolvedReference ( )
virtual

Implements KSyncEntry.

Definition at line 178 of file qos_config_ksync.cc.

Here is the call graph for this function:

◆ uuid()

boost::uuids::uuid QosConfigKSyncEntry::uuid ( ) const
inline

Definition at line 40 of file qos_config_ksync.h.

Member Data Documentation

◆ default_forwarding_class_

uint32_t QosConfigKSyncEntry::default_forwarding_class_
private

Definition at line 53 of file qos_config_ksync.h.

◆ dscp_map_

KSyncQosFcMap QosConfigKSyncEntry::dscp_map_
private

Definition at line 50 of file qos_config_ksync.h.

◆ id_

uint32_t QosConfigKSyncEntry::id_
private

Definition at line 49 of file qos_config_ksync.h.

◆ kDefaultQosMsgSize

const uint32_t QosConfigKSyncEntry::kDefaultQosMsgSize = 4096
static

Definition at line 22 of file qos_config_ksync.h.

◆ ksync_obj_

KSyncDBObject* QosConfigKSyncEntry::ksync_obj_
private

Definition at line 47 of file qos_config_ksync.h.

◆ mpls_exp_map_

KSyncQosFcMap QosConfigKSyncEntry::mpls_exp_map_
private

Definition at line 52 of file qos_config_ksync.h.

◆ uuid_

boost::uuids::uuid QosConfigKSyncEntry::uuid_
private

Definition at line 48 of file qos_config_ksync.h.

◆ vlan_priority_map_

KSyncQosFcMap QosConfigKSyncEntry::vlan_priority_map_
private

Definition at line 51 of file qos_config_ksync.h.


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