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

#include <ifmap_node.h>

Inheritance diagram for IFMapNode:
Collaboration diagram for IFMapNode:

Public Types

typedef
boost::crc_32_type::value_type 
crc32type
 
typedef
boost::intrusive::member_hook
< IFMapObject,
boost::intrusive::list_member_hook
<>,&IFMapObject::node_
MemberHook
 
typedef boost::intrusive::list
< IFMapObject, MemberHook
ObjectList
 
typedef std::pair< std::string,
std::string > 
Descriptor
 
- Public Types inherited from DBGraphVertex
typedef
DBGraphBase::vertex_descriptor 
Vertex
 
typedef
DBGraphBase::edge_descriptor 
Edge
 
- Public Types inherited from DBEntryBase
typedef DBTableBase::ListenerId ListenerId
 
typedef std::unique_ptr
< DBRequestKey
KeyPtr
 

Public Member Functions

 IFMapNode (IFMapTable *table)
 
virtual ~IFMapNode ()
 
virtual std::string ToString () const
 
IFMapTabletable ()
 
const IFMapTabletable () const
 
virtual KeyPtr GetDBRequestKey () const
 
virtual void SetKey (const DBRequestKey *genkey)
 
virtual bool IsLess (const DBEntry &db_entry) const
 
void EncodeNodeDetail (pugi::xml_node *parent) const
 
void EncodeNode (pugi::xml_node *parent) const
 
const std::string & name () const
 
IFMapObjectFind (IFMapOrigin origin)
 
void Insert (IFMapObject *obj)
 
void Remove (IFMapObject *obj)
 
IFMapObjectGetObject ()
 
const IFMapObjectGetObject () const
 
crc32type GetConfigCrc ()
 
void PrintAllObjects ()
 
int get_object_list_size ()
 
- Public Member Functions inherited from DBGraphVertex
 DBGraphVertex ()
 
adjacency_iterator begin (DBGraph *graph)
 
adjacency_iterator end (DBGraph *graph)
 
edge_iterator edge_list_begin (DBGraph *graph)
 
edge_iterator edge_list_end (DBGraph *graph)
 
bool HasAdjacencies (DBGraph *graph) const
 
void set_vertex (const Vertex &vertex_id)
 
void VertexInvalidate ()
 
bool IsVertexValid ()
 
Vertex vertex () const
 
void set_visited (uint64_t current_graph_walk_num)
 
bool visited (uint64_t current_graph_walk_num)
 
- 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 Member Functions

static void EncodeNode (const Descriptor &descriptor, pugi::xml_node *parent)
 
static IFMapNodeDescriptorLookup (DB *db, const Descriptor &descriptor)
 

Private Member Functions

 DISALLOW_COPY_AND_ASSIGN (IFMapNode)
 

Private Attributes

IFMapTabletable_
 
std::string name_
 
ObjectList list_
 

Friends

class IFMapNodeCopier
 

Additional Inherited Members

- Public Attributes inherited from DBEntryBase
boost::intrusive::list_member_hook chg_list_
 

Detailed Description

Definition at line 14 of file ifmap_node.h.

Member Typedef Documentation

typedef boost::crc_32_type::value_type IFMapNode::crc32type

Definition at line 16 of file ifmap_node.h.

typedef std::pair<std::string, std::string> IFMapNode::Descriptor

Definition at line 22 of file ifmap_node.h.

typedef boost::intrusive::member_hook<IFMapObject, boost::intrusive::list_member_hook<>, &IFMapObject::node_> IFMapNode::MemberHook

Definition at line 19 of file ifmap_node.h.

typedef boost::intrusive::list<IFMapObject, MemberHook> IFMapNode::ObjectList

Definition at line 21 of file ifmap_node.h.

Constructor & Destructor Documentation

IFMapNode::IFMapNode ( IFMapTable table)
explicit

Definition at line 17 of file ifmap_node.cc.

IFMapNode::~IFMapNode ( )
virtual

Definition at line 27 of file ifmap_node.cc.

Member Function Documentation

IFMapNode * IFMapNode::DescriptorLookup ( DB db,
const Descriptor descriptor 
)
static

Definition at line 133 of file ifmap_node.cc.

Here is the call graph for this function:

IFMapNode::DISALLOW_COPY_AND_ASSIGN ( IFMapNode  )
private
void IFMapNode::EncodeNode ( pugi::xml_node *  parent) const
static void IFMapNode::EncodeNode ( const Descriptor descriptor,
pugi::xml_node *  parent 
)
static
void IFMapNode::EncodeNodeDetail ( pugi::xml_node *  parent) const

Definition at line 99 of file ifmap_node.cc.

Here is the call graph for this function:

IFMapObject * IFMapNode::Find ( IFMapOrigin  origin)

Definition at line 38 of file ifmap_node.cc.

Here is the call graph for this function:

int IFMapNode::get_object_list_size ( )
inline

Definition at line 58 of file ifmap_node.h.

IFMapNode::crc32type IFMapNode::GetConfigCrc ( )

Definition at line 77 of file ifmap_node.cc.

Here is the call graph for this function:

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

Implements DBEntryBase.

Definition at line 121 of file ifmap_node.cc.

IFMapObject * IFMapNode::GetObject ( )

Definition at line 63 of file ifmap_node.cc.

const IFMapObject * IFMapNode::GetObject ( ) const

Definition at line 70 of file ifmap_node.cc.

void IFMapNode::Insert ( IFMapObject obj)

Definition at line 49 of file ifmap_node.cc.

Here is the call graph for this function:

virtual bool IFMapNode::IsLess ( const DBEntry db_entry) const
inlinevirtual

Implements DBEntry.

Definition at line 36 of file ifmap_node.h.

const std::string& IFMapNode::name ( ) const
inline

Definition at line 48 of file ifmap_node.h.

void IFMapNode::PrintAllObjects ( )

Definition at line 90 of file ifmap_node.cc.

Here is the call graph for this function:

void IFMapNode::Remove ( IFMapObject obj)

Definition at line 58 of file ifmap_node.cc.

Here is the call graph for this function:

void IFMapNode::SetKey ( const DBRequestKey genkey)
virtual

Implements DBEntry.

Definition at line 127 of file ifmap_node.cc.

IFMapTable* IFMapNode::table ( )
inline

Definition at line 29 of file ifmap_node.h.

const IFMapTable* IFMapNode::table ( ) const
inline

Definition at line 30 of file ifmap_node.h.

string IFMapNode::ToString ( ) const
virtual

Implements DBGraphVertex.

Definition at line 31 of file ifmap_node.cc.

Here is the call graph for this function:

Friends And Related Function Documentation

friend class IFMapNodeCopier
friend

Definition at line 61 of file ifmap_node.h.

Member Data Documentation

ObjectList IFMapNode::list_
private

Definition at line 64 of file ifmap_node.h.

std::string IFMapNode::name_
private

Definition at line 63 of file ifmap_node.h.

IFMapTable* IFMapNode::table_
private

Definition at line 62 of file ifmap_node.h.


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