#include <SonicClientPseudoAsync.h>
Public Member Functions | |
void | dispatch (edm::WaitingTaskWithArenaHolder holder) final |
SonicClientPseudoAsync () | |
~SonicClientPseudoAsync () override | |
Public Member Functions inherited from SonicClientBase | |
const std::string & | debugName () const |
void | setDebugName (const std::string &debugName) |
SonicClientBase () | |
virtual | ~SonicClientBase ()=default |
Public Member Functions inherited from SonicClientTypes< InputT, OutputT > | |
Input & | input () |
const Output & | output () const |
virtual | ~SonicClientTypes ()=default |
Private Member Functions | |
void | waitForNext () |
Private Attributes | |
std::condition_variable | cond_ |
bool | hasCall_ |
std::mutex | mutex_ |
std::atomic< bool > | stop_ |
std::unique_ptr< std::thread > | thread_ |
Additional Inherited Members | |
Public Types inherited from SonicClientTypes< InputT, OutputT > | |
typedef InputT | Input |
typedef OutputT | Output |
Protected Member Functions inherited from SonicClientBase | |
virtual unsigned | allowedTries () const |
virtual void | evaluate ()=0 |
void | finish (bool success, std::exception_ptr eptr=std::exception_ptr{}) |
void | setStartTime () |
Protected Attributes inherited from SonicClientBase | |
std::string | debugName_ |
edm::WaitingTaskWithArenaHolder | holder_ |
std::chrono::time_point< std::chrono::high_resolution_clock > | t0_ |
unsigned | tries_ |
Protected Attributes inherited from SonicClientTypes< InputT, OutputT > | |
Input | input_ |
Output | output_ |
Definition at line 17 of file SonicClientPseudoAsync.h.
|
inline |
Definition at line 20 of file SonicClientPseudoAsync.h.
References SonicClientPseudoAsync< InputT, OutputT >::thread_, and SonicClientPseudoAsync< InputT, OutputT >::waitForNext().
|
inlineoverride |
Definition at line 24 of file SonicClientPseudoAsync.h.
References SonicClientPseudoAsync< InputT, OutputT >::cond_, SonicClientPseudoAsync< InputT, OutputT >::stop_, and SonicClientPseudoAsync< InputT, OutputT >::thread_.
|
inlinefinalvirtual |
Implements SonicClientBase.
Definition at line 36 of file SonicClientPseudoAsync.h.
References SonicClientPseudoAsync< InputT, OutputT >::cond_, SonicClientPseudoAsync< InputT, OutputT >::hasCall_, SonicClientBase::holder_, eostools::move(), SonicClientPseudoAsync< InputT, OutputT >::mutex_, and SonicClientBase::setStartTime().
|
inlineprivate |
Definition at line 50 of file SonicClientPseudoAsync.h.
References SonicClientPseudoAsync< InputT, OutputT >::cond_, SonicClientBase::evaluate(), SonicClientPseudoAsync< InputT, OutputT >::hasCall_, SonicClientPseudoAsync< InputT, OutputT >::mutex_, or, and SonicClientPseudoAsync< InputT, OutputT >::stop_.
Referenced by SonicClientPseudoAsync< InputT, OutputT >::SonicClientPseudoAsync().
|
private |
Definition at line 71 of file SonicClientPseudoAsync.h.
Referenced by SonicClientPseudoAsync< InputT, OutputT >::dispatch(), SonicClientPseudoAsync< InputT, OutputT >::waitForNext(), and SonicClientPseudoAsync< InputT, OutputT >::~SonicClientPseudoAsync().
|
private |
Definition at line 69 of file SonicClientPseudoAsync.h.
Referenced by SonicClientPseudoAsync< InputT, OutputT >::dispatch(), and SonicClientPseudoAsync< InputT, OutputT >::waitForNext().
|
private |
Definition at line 70 of file SonicClientPseudoAsync.h.
Referenced by SonicClientPseudoAsync< InputT, OutputT >::dispatch(), and SonicClientPseudoAsync< InputT, OutputT >::waitForNext().
|
private |
Definition at line 72 of file SonicClientPseudoAsync.h.
Referenced by SonicClientPseudoAsync< InputT, OutputT >::waitForNext(), and SonicClientPseudoAsync< InputT, OutputT >::~SonicClientPseudoAsync().
|
private |
Definition at line 73 of file SonicClientPseudoAsync.h.
Referenced by SonicClientPseudoAsync< InputT, OutputT >::SonicClientPseudoAsync(), and SonicClientPseudoAsync< InputT, OutputT >::~SonicClientPseudoAsync().