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

#include <ifmap_object.h>

Inheritance diagram for IFMapObject:
Collaboration diagram for IFMapObject:

Public Member Functions

 IFMapObject ()
 
virtual ~IFMapObject ()
 
virtual std::string ToString () const =0
 
virtual void EncodeUpdate (pugi::xml_node *parent) const =0
 
void set_origin (IFMapOrigin origin)
 
uint64_t sequence_number ()
 
const uint64_t sequence_number () const
 
void set_sequence_number (uint64_t sequence_number)
 
IFMapOrigin origin () const
 
virtual bool ResolveStaleness ()=0
 
virtual
boost::crc_32_type::value_type 
CalculateCrc () const =0
 

Private Member Functions

 DISALLOW_COPY_AND_ASSIGN (IFMapObject)
 

Static Private Member Functions

static void Release (IFMapObject *object)
 

Private Attributes

boost::intrusive::list_member_hook node_
 
int refcount_
 
uint64_t sequence_number_
 
IFMapOrigin origin_
 

Friends

class IFMapNode
 
void intrusive_ptr_add_ref (IFMapObject *object)
 
void intrusive_ptr_release (IFMapObject *object)
 
void intrusive_ptr_add_ref (const IFMapObject *object)
 
void intrusive_ptr_release (const IFMapObject *object)
 

Detailed Description

Definition at line 23 of file ifmap_object.h.

Constructor & Destructor Documentation

IFMapObject::IFMapObject ( )

Definition at line 7 of file ifmap_object.cc.

IFMapObject::~IFMapObject ( )
virtual

Definition at line 11 of file ifmap_object.cc.

Member Function Documentation

virtual boost::crc_32_type::value_type IFMapObject::CalculateCrc ( ) const
pure virtual
IFMapObject::DISALLOW_COPY_AND_ASSIGN ( IFMapObject  )
private
virtual void IFMapObject::EncodeUpdate ( pugi::xml_node *  parent) const
pure virtual
IFMapOrigin IFMapObject::origin ( ) const
inline

Definition at line 38 of file ifmap_object.h.

void IFMapObject::Release ( IFMapObject object)
staticprivate

Definition at line 14 of file ifmap_object.cc.

virtual bool IFMapObject::ResolveStaleness ( )
pure virtual

Implemented in IFMapLinkAttr, and IFMapIdentifier.

uint64_t IFMapObject::sequence_number ( )
inline

Definition at line 33 of file ifmap_object.h.

const uint64_t IFMapObject::sequence_number ( ) const
inline

Definition at line 34 of file ifmap_object.h.

void IFMapObject::set_origin ( IFMapOrigin  origin)
inline

Definition at line 31 of file ifmap_object.h.

Here is the call graph for this function:

void IFMapObject::set_sequence_number ( uint64_t  sequence_number)
inline

Definition at line 35 of file ifmap_object.h.

Here is the call graph for this function:

virtual std::string IFMapObject::ToString ( ) const
pure virtual

Friends And Related Function Documentation

friend class IFMapNode
friend

Definition at line 43 of file ifmap_object.h.

void intrusive_ptr_add_ref ( IFMapObject object)
friend

Definition at line 59 of file ifmap_object.h.

void intrusive_ptr_add_ref ( const IFMapObject object)
friend

Definition at line 73 of file ifmap_object.h.

void intrusive_ptr_release ( IFMapObject object)
friend

Definition at line 65 of file ifmap_object.h.

void intrusive_ptr_release ( const IFMapObject object)
friend

Definition at line 76 of file ifmap_object.h.

Member Data Documentation

boost::intrusive::list_member_hook IFMapObject::node_
private

Definition at line 51 of file ifmap_object.h.

IFMapOrigin IFMapObject::origin_
private

Definition at line 54 of file ifmap_object.h.

int IFMapObject::refcount_
mutableprivate

Definition at line 52 of file ifmap_object.h.

uint64_t IFMapObject::sequence_number_
private

Definition at line 53 of file ifmap_object.h.


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