#include <l1394_nodecontainer.h>
Public Member Functions | |
~NodeContainer () | |
destructor | |
Node * | getNode (u_int64_t guid) |
This method returns the Node object with guid, NULL if this node not exist. | |
Node * | findNode (u_int64_t guid) |
This method returns the Node object with guid, NULL if this node not exist. | |
bool | nodeExist (u_int64_t guid) |
This method checks, if a Node object with a specific guid exist. | |
void | release (Node *node) |
This method releases Node objects. | |
void | insert (Node *node) |
This method inserts a new Node object into the node_list. | |
void | removeNode (const Node *n) |
Static Public Member Functions | |
static NodeContainer * | getNodeContainer () |
Protected Member Functions | |
NodeContainer () | |
Constructor. |
A NodeContainer object stores the Node objects, created by the Card objects
To store the objects two (STL)single associated container are used.The Node objects are stored as key/value pairs, for fast access to them. The key is the GUID, the value the object pointer.
The first container stores the active Node objects, that are connected to FireWire bus The second one stores the inactive Node objects. An inactive node object is a Node object, that was disconnected from FireWire bus, but was not deleted. After a defined timeout, node objects for disconnected nodes are deleted.
Definition at line 48 of file l1394_nodecontainer.h.
|
destructor
Definition at line 40 of file l1394_nodecontainer.cpp. References L1394::internal::Message::debugStream(), L1394::ThreadMutex::lock(), and L1394::ThreadMutex::unlock(). |
|
Constructor.
Definition at line 27 of file l1394_nodecontainer.cpp. References L1394::Singleton< T, CreationPolicy, LifetimePolicy, ThreadingModel >::getInstance(). Referenced by getNodeContainer(). |
|
This method returns the Node object with guid, NULL if this node not exist. The difference between getNode(u_int64_t guid) is, that the reference counter is not be increased. This method is for internal use only.
Definition at line 99 of file l1394_nodecontainer.cpp. References L1394::internal::Message::debugStream(), L1394::ThreadMutex::lock(), and L1394::ThreadMutex::unlock(). |
|
This method returns the Node object with guid, NULL if this node not exist. If you use this function, the internal reference counter is increased.
Definition at line 69 of file l1394_nodecontainer.cpp. References L1394::internal::Message::debugStream(), insert(), L1394::ThreadMutex::lock(), and L1394::ThreadMutex::unlock(). Referenced by L1394::Card::makeNodeList(). |
|
Definition at line 31 of file l1394_nodecontainer.cpp. References L1394::ThreadMutex::lock(), NodeContainer(), and L1394::ThreadMutex::unlock(). Referenced by L1394::Card::Card(), and L1394::Session::getNode(). |
|
This method inserts a new Node object into the node_list. ? Definition at line 128 of file l1394_nodecontainer.cpp. References L1394::internal::Message::debugStream(), L1394::internal::Message::errorStream(), L1394::ThreadMutex::lock(), nodeExist(), and L1394::ThreadMutex::unlock(). Referenced by L1394::Card::Card(), getNode(), and L1394::Card::makeNodeList(). |
|
This method checks, if a Node object with a specific guid exist.
Definition at line 144 of file l1394_nodecontainer.cpp. Referenced by insert(), and L1394::Card::nodeExist(). |
|
This method releases Node objects. You must use this function, if you get a Node object with getNode(u_int64_t guid). This method decrease the reference counter and if the reference counter is less than 1, the Node object is inserted in the inactive_node_list.
Definition at line 110 of file l1394_nodecontainer.cpp. References L1394::_Card, and L1394::internal::Message::debugStream(). Referenced by L1394::Card::makeNodeList(), and L1394::Card::~Card(). |
|
Definition at line 153 of file l1394_nodecontainer.cpp. References L1394::ThreadMutex::lock(), L1394::ThreadMutex::unlock(), and L1394::internal::Message::warningStream(). Referenced by L1394::Card::~Card(). |