adevs
Classes | Public Types | Public Member Functions | List of all members
adevs::Digraph< VALUE, PORT, T > Class Template Reference

#include <adevs_digraph.h>

Inheritance diagram for adevs::Digraph< VALUE, PORT, T >:
adevs::Network< PortValue< VALUE, PORT >, T > adevs::Devs< PortValue< VALUE, PORT >, T >

Public Types

typedef PortValue< VALUE, PORT > IO_Type
 An input or output to a component model.
 
typedef Devs< IO_Type, T > Component
 A component of the Digraph model.
 

Public Member Functions

 Digraph ()
 Construct a network with no components.
 
void add (Component *model)
 Add a model to the network.
 
void couple (Component *src, PORT srcPort, Component *dst, PORT dstPort)
 Couple the source model to the destination model.
 
void getComponents (Set< Component * > &c)
 Puts the network's components into to c.
 
void route (const IO_Type &x, Component *model, Bag< Event< IO_Type, T > > &r)
 Route an event based on the coupling information.
 
 ~Digraph ()
 Destructor. Destroys all of the component models.
 
- Public Member Functions inherited from adevs::Network< PortValue< VALUE, PORT >, T >
 Network ()
 Constructor.
 
virtual void getComponents (Set< Devs< PortValue< VALUE, PORT >, T > * > &c)=0
 
virtual void route (const PortValue< VALUE, PORT > &value, Devs< PortValue< VALUE, PORT >, T > *model, Bag< Event< PortValue< VALUE, PORT >, T > > &r)=0
 
virtual ~Network ()
 
Network< PortValue< VALUE,
PORT >, T > * 
typeIsNetwork ()
 Returns a pointer to this model.
 
- Public Member Functions inherited from adevs::Devs< PortValue< VALUE, PORT >, T >
 Devs ()
 Default constructor.
 
virtual ~Devs ()
 Destructor.
 
virtual Atomic< PortValue
< VALUE, PORT >, T > * 
typeIsAtomic ()
 Returns NULL if this is not an atomic model; returns itself otherwise.
 
const Network< PortValue
< VALUE, PORT >, T > * 
getParent () const
 
Network< PortValue< VALUE,
PORT >, T > * 
getParent ()
 
void setParent (Network< PortValue< VALUE, PORT >, T > *parent)
 
virtual bool model_transition ()
 
virtual T lookahead ()
 
void setProc (int proc)
 
int getProc ()
 

Detailed Description

template<class VALUE, class PORT = int, class T = double>
class adevs::Digraph< VALUE, PORT, T >

The digraph model is used to build block-diagrams from network and atomic components. Its components must have PortValue objects as their input/output type.


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