Agora  1.2.0
Agora project
Doer Class Reference

#include <doer.h>

Inheritance diagram for Doer:
Collaboration diagram for Doer:

Public Member Functions

virtual bool TryLaunch (moodycamel::ConcurrentQueue< EventData > &task_queue, moodycamel::ConcurrentQueue< EventData > &complete_task_queue, moodycamel::ProducerToken *worker_ptok)
 
virtual EventData Launch (size_t tag)
 
virtual EventData Launch (size_t tag, EventType event_type)
 

Protected Member Functions

 Doer (Config *in_config, int in_tid)
 
virtual ~Doer ()=default
 

Protected Attributes

Configcfg_
 
int tid_
 

Constructor & Destructor Documentation

◆ Doer()

Doer::Doer ( Config in_config,
int  in_tid 
)
inlineprotected

◆ ~Doer()

virtual Doer::~Doer ( )
protectedvirtualdefault

Member Function Documentation

◆ Launch() [1/2]

virtual EventData Doer::Launch ( size_t  tag)
inlinevirtual

The main event handling function that performs Doer-specific work. Doers that handle only one event type use this signature.

Reimplemented in DoFFT, DoDemul, DoPrecode, DoBeamWeights, DoIFFTClient, DoIFFT, DoDecode, DoEncode, and DoDecodeClient.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Launch() [2/2]

virtual EventData Doer::Launch ( size_t  tag,
EventType  event_type 
)
inlinevirtual

The main event handling function that performs Doer-specific work. Doers that handle multiple event types use this signature.

Here is the call graph for this function:

◆ TryLaunch()

virtual bool Doer::TryLaunch ( moodycamel::ConcurrentQueue< EventData > &  task_queue,
moodycamel::ConcurrentQueue< EventData > &  complete_task_queue,
moodycamel::ProducerToken worker_ptok 
)
inlinevirtual
Here is the call graph for this function:

Member Data Documentation

◆ cfg_

Config* Doer::cfg_
protected

◆ tid_

int Doer::tid_
protected

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