Base class to all NEVESIM objects. More...
#include <EvSimObject.h>
Classes | |
class | BlockAllocator |
Class for memory management of SimObjects. More... | |
Public Types | |
enum | PortType { eventPortDirect, eventPortProjected, portUndefined } |
typedef unsigned | ID |
typedef shared_ptr < std::vector< ID > > | IDVector |
Public Member Functions | |
virtual void | announceEvEmitted (SimContext &sim_ctxt, Time time, global_proj_out_port_id_t port_id) |
virtual void | eventHit (SimContext &sim_ctxt, Time time, port_id_t port) |
virtual void | updateState (SimContext &sim_ctxt, Time time, update_id_t upd_id) |
virtual bool | owned_by_net () |
virtual unsigned | numProjOutputPorts () const |
virtual unsigned | numOutputPorts () const |
virtual unsigned | numInputPorts () const |
virtual PortType | getOutputPortType (port_id_t) const |
virtual PortType | getInputPortType (port_id_t) const |
virtual void | init (EvSimNetwork &net, ID id) |
virtual void | reset (SimContext &sim_ctxt) |
virtual const EvSimObjectTypeUtilsBase * | getSimObjTypeUtils () const |
virtual EvSimObject * | copy () const |
EvSimObject * | create (void) const |
Derived classes implement this function to create clones. | |
void *const | getVariablePtr (const string &var_name) const |
const type_info & | getVariableType (const string &var_name) const |
const string & | getTypeName () const |
string | getTypeNameWithPtr () const |
virtual void | postAddedInNetwork (EvSimNetwork &net, EvSimObject::ID self) |
virtual void | postOutPortConnect (EvSimNetwork &net, port_id_t p, EvSimObject::ID dest, port_id_t dest_port) |
virtual void | postInputPortConnect (EvSimNetwork &net, port_id_t p, EvSimObject::ID src, port_id_t src_port) |
virtual void | postSrcCausalLink (EvSimNetwork &net, EvSimObject::ID target, update_id_t upd_id) |
virtual void | postTargetCausalLink (EvSimNetwork &net, EvSimObject::ID src, update_id_t upd_id) |
virtual void | postMountAsMountedObj (EvSimNetwork &net, EvSimObject::ID self, EvSimObject::ID mountpoint) |
virtual void | postMountAsMountPoint (EvSimNetwork &net, EvSimObject::ID self, EvSimObject::ID mounted_obj) |
virtual bool | propagatesUpdate (update_id_t upd_id) const |
void * | operator new (size_t sz) |
void | operator delete (void *, size_t) |
void * | operator new[] (size_t sz) |
void | operator delete[] (void *, size_t) |
Static Public Member Functions | |
static void | setAllocator (BlockAllocator &ba) |
Base class to all NEVESIM objects.
Provides the interface to event handling and object updating. All NEVESIM objects are factories, clones of which can be created by the EvSimObjectFactory::create() method.