Main class of SocRob Multicast. More...
#include <manager.h>

Public Member Functions | |
| Manager (ManagerOptions const &options) | |
| Constructor.   | |
| bool | startShortRound (std::vector< uint8_t > const &question, std::set< id_type > const &required_sids, short_callback_type const &callback=empty_short_callback) | 
| Starts a short round for multiple agents.   | |
| bool | startShortRound (std::vector< uint8_t > const &question, id_type required_sid, short_callback_type const &callback=empty_short_callback) | 
| Starts a short round for a single agent.   | |
| ~Manager () | |
| Destructor.   | |
Private Attributes | |
| boost::shared_ptr< implementation > | impl_ | 
Main class of SocRob Multicast.
This class is the Manager, responsible to coordinate everything.
| socrob::multicast::Manager::Manager | ( | ManagerOptions const & | options | ) | 
Constructor.
The Manager constructor creates the SocRob Multicast Manager and starts threads and communication. For this reason, please declare the Manager as the last variable of your class or use a shared_ptr to it, so that you initialize it only after everything is ready to start.
| options | Options to be used by the Manager. | 
Destructor.
The Manager destructor stops communication and threads.
| bool socrob::multicast::Manager::startShortRound | ( | std::vector< uint8_t > const & | question, | 
| std::set< id_type > const & | required_sids, | ||
| short_callback_type const & | callback = empty_short_callback  | 
        ||
| ) | 
Starts a short round for multiple agents.
Starts a short question round that will transmit the question to all agents specified in the required_sids set. When all the answers are received or agents are considered offline, the callback will be called.
| question | Question to be transmitted. | 
| required_sids | Set of agents that need to answer. | 
| callback | Callback function to be called when all answers arrive. | 
| bool socrob::multicast::Manager::startShortRound | ( | std::vector< uint8_t > const & | question, | 
| id_type | required_sid, | ||
| short_callback_type const & | callback = empty_short_callback  | 
        ||
| ) |  [inline] | 
        
Starts a short round for a single agent.
Starts a short question round that will transmit the question to the specified agent. When the answer is received or the agent is considered offline, the callback will be called.
| question | Question to be transmitted. | 
| required_sid | Agent that needs to answer. | 
| callback | Callback function to be called when all answers arrive. | 
boost::shared_ptr<implementation> socrob::multicast::Manager::impl_ [private] |