OpenSDN source code
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
DiagEntry Class Referenceabstract

#include <diag.h>

Inheritance diagram for DiagEntry:
Collaboration diagram for DiagEntry:

Public Types

typedef uint16_t DiagKey
 
typedef Timer DiagTimer
 

Public Member Functions

 DiagEntry (const std::string &sip, const std::string &dip, uint8_t proto, uint16_t sport, uint16_t dport, const std::string &vrf_name, int timeout, int count, DiagTable *diag_table)
 
virtual ~DiagEntry ()
 
void Init ()
 
void EnqueueForceDelete ()
 
virtual void SendRequest ()=0
 
virtual void HandleReply (DiagPktHandler *handler)=0
 
virtual void RequestTimedOut (uint32_t seq_no)=0
 
virtual void SendSummary ()
 
bool TimerExpiry (uint32_t seqno)
 
void RestartTimer ()
 
virtual bool IsDone ()
 
virtual bool ResendOnTimerExpiry ()
 
DiagKey GetKey ()
 
uint32_t GetSeqNo ()
 
uint32_t GetMaxAttempts ()
 
void SetKey (DiagKey key)
 
virtual void Retry ()
 
bool TimerCancel ()
 
DiagTablediag_table () const
 
uint32_t HashValUdpSourcePort ()
 
void FillOamPktHeader (OverlayOamPktData *pktdata, uint32_t vxlan_id, const boost::posix_time::ptime &time)
 

Protected Attributes

IpAddress sip_
 
IpAddress dip_
 
uint8_t proto_
 
uint16_t sport_
 
uint16_t dport_
 
std::string vrf_name_
 
boost::system::error_code ec_
 
DiagTablediag_table_
 
DiagKey key_
 
int timeout_
 
DiagTimertimer_
 
uint32_t max_attempts_
 
uint32_t seq_no_
 

Detailed Description

Definition at line 21 of file diag.h.

Member Typedef Documentation

typedef uint16_t DiagEntry::DiagKey

Definition at line 23 of file diag.h.

Definition at line 24 of file diag.h.

Constructor & Destructor Documentation

DiagEntry::DiagEntry ( const std::string &  sip,
const std::string &  dip,
uint8_t  proto,
uint16_t  sport,
uint16_t  dport,
const std::string &  vrf_name,
int  timeout,
int  count,
DiagTable diag_table 
)

Definition at line 25 of file diag.cc.

DiagEntry::~DiagEntry ( )
virtual

Definition at line 40 of file diag.cc.

Here is the call graph for this function:

Member Function Documentation

DiagTable* DiagEntry::diag_table ( ) const
inline

Definition at line 48 of file diag.h.

void DiagEntry::EnqueueForceDelete ( )

Definition at line 52 of file diag.cc.

Here is the call graph for this function:

void DiagEntry::FillOamPktHeader ( OverlayOamPktData pktdata,
uint32_t  vxlan_id,
const boost::posix_time::ptime &  time 
)

Definition at line 173 of file diag.cc.

DiagKey DiagEntry::GetKey ( )
inline

Definition at line 40 of file diag.h.

uint32_t DiagEntry::GetMaxAttempts ( )
inline

Definition at line 42 of file diag.h.

uint32_t DiagEntry::GetSeqNo ( )
inline

Definition at line 41 of file diag.h.

virtual void DiagEntry::HandleReply ( DiagPktHandler handler)
pure virtual
uint32_t DiagEntry::HashValUdpSourcePort ( )

Definition at line 163 of file diag.cc.

void DiagEntry::Init ( )

Definition at line 47 of file diag.cc.

Here is the call graph for this function:

bool DiagEntry::IsDone ( )
virtual

Reimplemented in SegmentHealthCheckPkt, TraceRoute, and OverlayTraceRoute.

Definition at line 63 of file diag.cc.

Here is the call graph for this function:

virtual void DiagEntry::RequestTimedOut ( uint32_t  seq_no)
pure virtual
virtual bool DiagEntry::ResendOnTimerExpiry ( )
inlinevirtual

Reimplemented in SegmentHealthCheckPkt.

Definition at line 39 of file diag.h.

void DiagEntry::RestartTimer ( )

Definition at line 57 of file diag.cc.

Here is the call graph for this function:

void DiagEntry::Retry ( )
virtual

Reimplemented in SegmentHealthCheckPkt.

Definition at line 84 of file diag.cc.

Here is the call graph for this function:

virtual void DiagEntry::SendRequest ( )
pure virtual
virtual void DiagEntry::SendSummary ( )
inlinevirtual

Reimplemented in OverlayPing, Ping, and TraceRoute.

Definition at line 35 of file diag.h.

void DiagEntry::SetKey ( DiagKey  key)
inline

Definition at line 43 of file diag.h.

bool DiagEntry::TimerCancel ( )
inline

Definition at line 45 of file diag.h.

Here is the call graph for this function:

bool DiagEntry::TimerExpiry ( uint32_t  seqno)

Definition at line 67 of file diag.cc.

Here is the call graph for this function:

Member Data Documentation

DiagTable* DiagEntry::diag_table_
protected

Definition at line 64 of file diag.h.

IpAddress DiagEntry::dip_
protected

Definition at line 57 of file diag.h.

uint16_t DiagEntry::dport_
protected

Definition at line 60 of file diag.h.

boost::system::error_code DiagEntry::ec_
protected

Definition at line 62 of file diag.h.

DiagKey DiagEntry::key_
protected

Definition at line 65 of file diag.h.

uint32_t DiagEntry::max_attempts_
protected

Definition at line 69 of file diag.h.

uint8_t DiagEntry::proto_
protected

Definition at line 58 of file diag.h.

uint32_t DiagEntry::seq_no_
protected

Definition at line 70 of file diag.h.

IpAddress DiagEntry::sip_
protected

Definition at line 56 of file diag.h.

uint16_t DiagEntry::sport_
protected

Definition at line 59 of file diag.h.

int DiagEntry::timeout_
protected

Definition at line 67 of file diag.h.

DiagTimer* DiagEntry::timer_
protected

Definition at line 68 of file diag.h.

std::string DiagEntry::vrf_name_
protected

Definition at line 61 of file diag.h.


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