SimObject::ID Class Reference

Class containing all the id's necessary to uniquely identify a simulation object. More...

#include <SimObject.h>

Collaboration diagram for SimObject::ID:

Collaboration graph
[legend]

List of all members.

Public Types

typedef long long Packed
 Type for the compress / packed form of the ID.
typedef shared_ptr
< std::vector< Packed > > 
Vector
 Vector of packed IDs.
typedef SimObjectIDSortedVector SortedVector

Public Member Functions

 ID (nodeid_t nid, engineid_t eid, object_type_t tid, local_objectid_t oid)
 ID (void)
 ID (const Packed &pid)
 Initialize from a packed repsesentation.
bool operator< (const ID &other) const
bool isInTheSameSTEngineWith (const ID &other) const
Packed packed ()
 Compress / packed form of the ID.
bool operator== (const ID &other) const
 Compare two IDs.
bool operator!= (const ID &other) const
 Compare two IDs.
string toString (void) const
 Provide a readable form of the id.

Static Public Member Functions

static SimObject::ID makeID (const Packed &pid)

Public Attributes

local_objectid_t localid
 Local ID; i.e. the ID local to the simulation engine the object belongs to.
nodeid_t node
 ID of MPI node.
object_type_t type
 ID of object type.
engineid_t eng
 ID of simulation engine (closely related to thread).

Static Public Attributes

static const ID Invalid
 Constant of an invalid object ID.


Detailed Description

Class containing all the id's necessary to uniquely identify a simulation object.

Definition at line 109 of file SimObject.h.


Member Typedef Documentation

typedef long long SimObject::ID::Packed

Type for the compress / packed form of the ID.

Definition at line 114 of file SimObject.h.

typedef shared_ptr< std::vector< Packed > > SimObject::ID::Vector

Vector of packed IDs.

Definition at line 117 of file SimObject.h.

Definition at line 125 of file SimObject.h.


Constructor & Destructor Documentation

SimObject::ID::ID ( nodeid_t  nid,
engineid_t  eid,
object_type_t  tid,
local_objectid_t  oid 
) [inline, explicit]

Definition at line 119 of file SimObject.h.

SimObject::ID::ID ( void   )  [inline]

Definition at line 123 of file SimObject.h.

SimObject::ID::ID ( const Packed pid  )  [inline, explicit]

Initialize from a packed repsesentation.

Definition at line 130 of file SimObject.h.


Member Function Documentation

static SimObject::ID SimObject::ID::makeID ( const Packed pid  )  [inline, static]

Definition at line 135 of file SimObject.h.

bool SimObject::ID::operator< ( const ID other  )  const [inline]

Definition at line 140 of file SimObject.h.

References eng, localid, node, and type.

bool SimObject::ID::isInTheSameSTEngineWith ( const ID other  )  const [inline]

Definition at line 154 of file SimObject.h.

References eng, and node.

Referenced by DistributedMultiThreadNetwork::_addSpikeMessage_().

SimObject::ID::Packed SimObject::ID::packed (  ) 

Compress / packed form of the ID.

Definition at line 23 of file SimObject.cpp.

bool SimObject::ID::operator== ( const ID other  )  const

Compare two IDs.

Definition at line 40 of file SimObject.cpp.

References eng, localid, node, and type.

bool SimObject::ID::operator!= ( const ID other  )  const

Compare two IDs.

Definition at line 48 of file SimObject.cpp.

References eng, localid, node, and type.

string SimObject::ID::toString ( void   )  const


Member Data Documentation

Local ID; i.e. the ID local to the simulation engine the object belongs to.

Definition at line 161 of file SimObject.h.

Referenced by DistributedNetwork::getFirstSenderSpikePort(), SingleThreadSimEngine::one_way_link(), operator!=(), operator<(), operator==(), toString(), and SingleThreadSimEngine::two_way_link().


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

Generated on Wed Jul 9 16:34:53 2008 for PCSIM by  doxygen 1.5.5