SNode.C
Loading...
Searching...
No Matches
core::EventReceiver Class Referenceabstract

#include <EventReceiver.h>

Inheritance diagram for core::EventReceiver:
Collaboration diagram for core::EventReceiver:

Public Member Functions

 EventReceiver (const std::string &name)
 
 EventReceiver (EventReceiver &)=delete
 
 EventReceiver (EventReceiver &&)=delete
 
EventReceiveroperator= (EventReceiver &)=delete
 
EventReceiveroperator= (EventReceiver &&)=delete
 
virtual void destruct ()
 
void span ()
 
void relax ()
 
virtual void onEvent (const utils::Timeval &currentTime)=0
 
const std::string & getName () const
 

Static Public Member Functions

static void atNextTick (const std::function< void(void)> &callBack)
 

Protected Member Functions

virtual ~EventReceiver ()=default
 

Private Attributes

Event event
 

Detailed Description

Definition at line 39 of file EventReceiver.h.

Constructor & Destructor Documentation

◆ EventReceiver() [1/3]

core::EventReceiver::EventReceiver ( const std::string & name)

Definition at line 49 of file EventReceiver.cpp.

50 : event(this, name) {
51 }

References EventReceiver().

Referenced by EventReceiver().

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

◆ EventReceiver() [2/3]

core::EventReceiver::EventReceiver ( EventReceiver & )
delete

◆ EventReceiver() [3/3]

core::EventReceiver::EventReceiver ( EventReceiver && )
delete

◆ ~EventReceiver()

virtual core::EventReceiver::~EventReceiver ( )
protectedvirtualdefault

Member Function Documentation

◆ atNextTick()

void core::EventReceiver::atNextTick ( const std::function< void(void)> & callBack)
static

Definition at line 28 of file EventReceiver.cpp.

28 {
29 class NextTickEvent : public core::EventReceiver {
30 public:
31 explicit NextTickEvent(const std::function<void(void)>& callBack)
32 : core::EventReceiver("RequestEvent")
33 , callBack(callBack) {
34 }
35
36 void onEvent([[maybe_unused]] const utils::Timeval& currentTime) override {
37 callBack();
38
39 delete this;
40 }
41
42 private:
43 std::function<void(void)> callBack;
44 };
45
46 (new NextTickEvent(callBack))->span();
47 }
Definition Timer.h:37

References span().

Here is the call graph for this function:

◆ destruct()

◆ getName()

const std::string & core::EventReceiver::getName ( ) const

Definition at line 65 of file EventReceiver.cpp.

65 {
66 return event.getName();
67 }

◆ onEvent()

virtual void core::EventReceiver::onEvent ( const utils::Timeval & currentTime)
pure virtual

Implemented in apps::towercalculator::TowerCalculator, core::DescriptorEventReceiver, core::file::FileReader, core::TimerEventReceiver, database::mariadb::MariaDBCommandStartEvent, and iot::mqtt::OnReceivedFromPeerEvent.

Referenced by core::Event::dispatch().

Here is the caller graph for this function:

◆ operator=() [1/2]

EventReceiver & core::EventReceiver::operator= ( EventReceiver && )
delete

◆ operator=() [2/2]

EventReceiver & core::EventReceiver::operator= ( EventReceiver & )
delete

◆ relax()

void core::EventReceiver::relax ( )

Definition at line 61 of file EventReceiver.cpp.

61 {
62 event.relax();
63 }

◆ span()

void core::EventReceiver::span ( )

Definition at line 57 of file EventReceiver.cpp.

57 {
58 event.span();
59 }

Referenced by atNextTick(), apps::towercalculator::TowerCalculator::calculate(), core::socket::stream::SocketReader::doRead(), apps::towercalculator::TowerCalculator::onEvent(), and core::multiplexer::epoll::DescriptorEventPublisher::spanActiveEvents().

Here is the caller graph for this function:

Member Data Documentation

◆ event

Event core::EventReceiver::event
private

Definition at line 65 of file EventReceiver.h.


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