replicode
Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
mBrane::sdk::mdaemon::Node Class Referenceabstract

#include <mdaemon_node.h>

Inheritance diagram for mBrane::sdk::mdaemon::Node:
Inheritance graph
Collaboration diagram for mBrane::sdk::mdaemon::Node:
Collaboration graph

Public Member Functions

bool isRunning ()
 
virtual void dump (const char *fileName)=0
 
virtual void load (const char *fileName)=0
 
virtual void migrate (uint16_t CID, uint16_t ID, uint8_t NID)=0
 
virtual module::_ModulegetModule (uint8_t hostID, uint16_t CID, uint16_t ID)=0
 
- Public Member Functions inherited from mBrane::sdk::module::Node
uint8_t id () const
 
virtual const char * name ()=0
 
virtual void send (const _Module *sender, _Payload *p, Network network=PRIMARY)=0
 
virtual void send (const _Module *sender, _Payload *message, uint8_t nodeID, Network network=PRIMARY)=0
 
virtual uint64_t time () const =0
 
virtual void newSpace (const _Module *sender, Network network=PRIMARY)=0
 
virtual void newModule (const _Module *sender, uint16_t CID, Network network=PRIMARY, const char *hostName="local")=0
 
virtual void deleteSpace (uint16_t ID, Network network=PRIMARY)=0
 
virtual void deleteModule (uint16_t CID, uint16_t ID, Network network=PRIMARY)=0
 
virtual void activateModule (const _Module *sender, uint16_t module_cid, uint16_t module_id, uint16_t space_id, float activationLevel, Network network=PRIMARY)=0
 
virtual void activateSpace (const _Module *sender, uint16_t space_id, uint16_t target_sid, float activationLevel, Network network=PRIMARY)=0
 
virtual void setSpaceThreshold (const _Module *sender, uint16_t space_id, float threshold, Network network=PRIMARY)=0
 
virtual void subscribeMessage (const _Module *sender, uint16_t module_cid, uint16_t module_id, uint16_t space_id, uint16_t message_cid, Network network=PRIMARY)=0
 
virtual void unsubscribeMessage (const _Module *sender, uint16_t module_cid, uint16_t module_id, uint16_t space_id, uint16_t message_cid, Network network=PRIMARY)=0
 
virtual void subscribeStream (const _Module *sender, uint16_t module_cid, uint16_t module_id, uint16_t space_id, uint16_t stream_id, Network network=PRIMARY)=0
 
virtual void unsubscribeStream (const _Module *sender, uint16_t module_cid, uint16_t module_id, uint16_t space_id, uint16_t stream_id, Network network=PRIMARY)=0
 
virtual const char * getSpaceName (uint16_t hostID, uint16_t ID)=0
 
virtual const char * getModuleName (uint16_t CID)=0
 
virtual uint8_t getNodeID (const char *name)=0
 
virtual void markUnused (_Payload *p)=0
 
virtual void addConstantObject (_Payload *c, const std::string &name)=0
 
virtual _PayloadgetConstantObject (uint32_t OID)=0
 
virtual _PayloadgetConstantObject (const std::string &name)=0
 
virtual void addLookup (uint8_t sourceNID, uint32_t OID)=0
 
virtual bool hasLookup (uint8_t destinationNID, uint32_t OID)=0
 
virtual void addSharedObject (_Payload *p)=0
 
virtual _PayloadgetSharedObject (uint32_t OID)=0
 
virtual void consolidate (_Payload *p)=0
 

Protected Member Functions

 Node (uint8_t ID=NoID)
 
bool loadConfig (XMLNode &n)
 
void start ()
 
virtual void shutdown ()
 
 ~Node ()
 
- Protected Member Functions inherited from mBrane::sdk::module::Node
 Node (uint8_t ID)
 
 ~Node ()
 

Protected Attributes

bool volatile _shutdown
 
StaticArray< DynamicClassLoader< Daemon > * > daemonLoaders
 
StaticArray< Daemon * > daemons
 
StaticArray< std::threaddaemonThreads
 
- Protected Attributes inherited from mBrane::sdk::module::Node
uint8_t _ID
 

Friends

class RecvThread
 
class PushThread
 
class XThread
 
class Executing
 

Additional Inherited Members

- Public Types inherited from mBrane::sdk::module::Node
enum  Network {
  PRIMARY = 0, SECONDARY = 1, BOTH = 2, LOCAL = 3,
  EITHER = 4
}
 
enum  TraceLevel { EXECUTION = 0, NETWORK = 1, APPLICATION = 2 }
 
- Static Public Member Functions inherited from mBrane::sdk::module::Node
static NodeGet ()
 
static std::ostream & trace (TraceLevel l)
 
- Static Public Attributes inherited from mBrane::sdk::module::Node
static const uint8_t NoID = 0xFF
 
- Static Protected Attributes inherited from mBrane::sdk::module::Node
static std::ostream * Streams [3]
 

Constructor & Destructor Documentation

mBrane::sdk::mdaemon::Node::Node ( uint8_t  ID = NoID)
protected
mBrane::sdk::mdaemon::Node::~Node ( )
protected

Member Function Documentation

virtual void mBrane::sdk::mdaemon::Node::dump ( const char *  fileName)
pure virtual

Implemented in mBrane::Node.

virtual module::_Module* mBrane::sdk::mdaemon::Node::getModule ( uint8_t  hostID,
uint16_t  CID,
uint16_t  ID 
)
pure virtual

Implemented in mBrane::Node.

bool mBrane::sdk::mdaemon::Node::isRunning ( )
inline

Here is the caller graph for this function:

virtual void mBrane::sdk::mdaemon::Node::load ( const char *  fileName)
pure virtual

Implemented in mBrane::Node.

bool mBrane::sdk::mdaemon::Node::loadConfig ( XMLNode n)
protected

Here is the call graph for this function:

virtual void mBrane::sdk::mdaemon::Node::migrate ( uint16_t  CID,
uint16_t  ID,
uint8_t  NID 
)
pure virtual

Implemented in mBrane::Node.

void mBrane::sdk::mdaemon::Node::shutdown ( )
protectedvirtual

Reimplemented in mBrane::Networking, and mBrane::Node.

Here is the call graph for this function:

void mBrane::sdk::mdaemon::Node::start ( )
protected

Here is the call graph for this function:

Here is the caller graph for this function:

Friends And Related Function Documentation

friend class Executing
friend
friend class PushThread
friend
friend class RecvThread
friend
friend class XThread
friend

Member Data Documentation

bool volatile mBrane::sdk::mdaemon::Node::_shutdown
protected
StaticArray<DynamicClassLoader<Daemon> *> mBrane::sdk::mdaemon::Node::daemonLoaders
protected
StaticArray<Daemon *> mBrane::sdk::mdaemon::Node::daemons
protected
StaticArray<std::thread> mBrane::sdk::mdaemon::Node::daemonThreads
protected

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