| OPAL (Object Oriented Parallel Accelerator Library)
    2.2.0
    OPAL | 
An interface implementing the basics of a poll loop, posting an MPI_Irecv and waiting for new requests on a specific communicator. More...
#include <Poller.h>

| Public Member Functions | |
| Poller (MPI_Comm comm, double delay=0.1) | |
| virtual | ~Poller () | 
| Protected Member Functions | |
| virtual bool | onMessage (MPI_Status status, size_t recv_value)=0 | 
| virtual void | onStop ()=0 | 
| enable implementation to react to STOP tag  More... | |
| virtual void | setupPoll ()=0 | 
| executed before starting polling loop  More... | |
| virtual void | prePoll ()=0 | 
| executed before checking for new request  More... | |
| virtual void | postPoll ()=0 | 
| executed after handling (if any) new request  More... | |
| virtual void | run () | 
| Protected Attributes | |
| MPI_Comm | comm_m | 
| communicator the poller listens to requests  More... | |
| bool | is_running_ | 
| double | last_polled_ | 
| time of last MPI_Test  More... | |
| double | poll_delay_ | 
| delay in seconds between polls  More... | |
An interface implementing the basics of a poll loop, posting an MPI_Irecv and waiting for new requests on a specific communicator.
| 
 | inline | 
Definition at line 22 of file Poller.h.
References last_polled_.
| 
 | protectedpure virtual | 
User specific behavior on receiving a message.
Implemented in Pilot< Opt_t, Sim_t, SolPropagationGraph_t, Comm_t >, SamplePilot< Opt_t, Sim_t, SolPropagationGraph_t, Comm_t >, Worker< Sim_t >, SampleWorker< Sim_t >, FixedPisaNsga2< CrossoverOperator, MutationOperator >, Sampler, and Optimizer.
Referenced by run().
| 
 | protectedpure virtual | 
enable implementation to react to STOP tag
Implemented in Pilot< Opt_t, Sim_t, SolPropagationGraph_t, Comm_t >, Worker< Sim_t >, FixedPisaNsga2< CrossoverOperator, MutationOperator >, Sampler, and Optimizer.
Referenced by run().
| 
 | protectedpure virtual | 
executed after handling (if any) new request
Implemented in Pilot< Opt_t, Sim_t, SolPropagationGraph_t, Comm_t >, Worker< Sim_t >, SamplePilot< Opt_t, Sim_t, SolPropagationGraph_t, Comm_t >, FixedPisaNsga2< CrossoverOperator, MutationOperator >, Sampler, and Optimizer.
Referenced by run().
| 
 | protectedpure virtual | 
executed before checking for new request
Implemented in Pilot< Opt_t, Sim_t, SolPropagationGraph_t, Comm_t >, Worker< Sim_t >, FixedPisaNsga2< CrossoverOperator, MutationOperator >, Sampler, and Optimizer.
Referenced by run().
| 
 | inlineprotectedvirtual | 
The poll loop stops when receiving a 'MPI_STOP_TAG' otherwise passes message to user.
Reimplemented in Pilot< Opt_t, Sim_t, SolPropagationGraph_t, Comm_t >.
Definition at line 62 of file Poller.h.
References comm_m, is_running_, last_polled_, MPI_STOP_TAG, onMessage(), onStop(), poll_delay_, postPoll(), prePoll(), and setupPoll().
Referenced by Sampler::initialize(), SampleWorker< Sim_t >::onMessage(), SampleWorker< Sim_t >::runSlave(), SampleWorker< Sim_t >::SampleWorker(), and Worker< Sim_t >::Worker().

| 
 | protectedpure virtual | 
executed before starting polling loop
Implemented in Pilot< Opt_t, Sim_t, SolPropagationGraph_t, Comm_t >, Worker< Sim_t >, FixedPisaNsga2< CrossoverOperator, MutationOperator >, Sampler, and Optimizer.
Referenced by run().
| 
 | protected | 
communicator the poller listens to requests
Definition at line 35 of file Poller.h.
Referenced by SampleWorker< Sim_t >::onMessage(), Worker< Sim_t >::onMessage(), Pilot< Opt_t, Sim_t, SolPropagationGraph_t, Comm_t >::parseInputFile(), run(), and Worker< Sim_t >::setupPoll().
| 
 | protected | 
Definition at line 37 of file Poller.h.
Referenced by run(), Worker< Sim_t >::runCoWorker(), and SampleWorker< Sim_t >::runSlave().
| 
 | protected | 
| 
 | protected | 
 1.8.5
 1.8.5