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 ()
 
bool IsInSync () const
 
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: