#include <mb_mblock.h>
Inheritance diagram for mb_mblock:


Subclass this to define your mblocks.
Public Member Functions | |
| virtual | ~mb_mblock () |
| bool | walk_tree (mb_visitor *visitor, const std::string &path="") |
| Perform a pre-order depth-first traversal of the hierarchy. | |
| mb_mblock_impl_sptr | impl () const |
| | |
Protected Member Functions | |
| mb_mblock () | |
| mblock constructor. | |
| virtual void | init_fsm () |
| Called by the runtime system to execute the initial transition of the finite state machine. | |
| virtual void | handle_message (mb_message_sptr msg) |
| Called by the runtime system when there's a message to handle. | |
| mb_port_sptr | define_port (const std::string &port_name, const std::string &protocol_class_name, bool conjugated, mb_port::port_type_t port_type) |
| Define a port. | |
| void | define_component (const std::string &component_name, mb_mblock_sptr component) |
| Define a subcomponent by name. | |
| void | connect (const std::string &comp_name1, const std::string &port_name1, const std::string &comp_name2, const std::string &port_name2) |
| connect endpoint_1 to endpoint_2 | |
| void | disconnect (const std::string &comp_name1, const std::string &port_name1, const std::string &comp_name2, const std::string &port_name2) |
| disconnect endpoint_1 from endpoint_2 | |
| void | disconnect_component (const std::string component_name) |
| disconnect all connections to specified component | |
| void | disconnect_all () |
| disconnect all connections to all components | |
| int | nconnections () const |
| Return number of connections (QA mostly). | |
Friends | |
| class | mb_runtime |
| class | mb_mblock_impl |
|
|
mblock constructor. Initializing all mblocks in the system is a 3 step procedure. The top level mblock's constructor is run. That constructor (a) registers all of its ports using define_port, (b) constructs and registers any subcomponents it may have via the define_component method, and then (c) issues connect calls to wire its subcomponents together. |
|
|
|
|
||||||||||||||||||||
|
connect endpoint_1 to endpoint_2
To connect an internal or relay port, use "self" as the component name. |
|
||||||||||||
|
Define a subcomponent by name. Called within the constructor to tell the system the names and identities of our sub-component mblocks.
|
|
||||||||||||||||||||
|
Define a port. EXTERNAL and RELAY ports are part of our peer interface. INTERNAL ports are used to talk to sub-components.
|
|
||||||||||||||||||||
|
disconnect endpoint_1 from endpoint_2
To disconnect an internal or relay port, use "self" as the component name. |
|
|
disconnect all connections to all components
|
|
|
disconnect all connections to specified component
|
|
|
Called by the runtime system when there's a message to handle. Override this to define your behavior. Do not issue any potentially blocking calls in this method. This includes things such reads or writes on sockets, pipes or slow i/o devices. |
|
|
|
|
|
Called by the runtime system to execute the initial transition of the finite state machine. Override this to initialize your finite state machine. |
|
|
Return number of connections (QA mostly).
|
|
||||||||||||
|
Perform a pre-order depth-first traversal of the hierarchy. The traversal stops and returns false if any call to visitor returns false. |
|
|
|
|
|
|
1.4.6