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 61 of file EventReceiver.h.

Constructor & Destructor Documentation

◆ EventReceiver() [1/3]

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

Definition at line 71 of file EventReceiver.cpp.

72 : event(this, name) {
73 }

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 50 of file EventReceiver.cpp.

50 {
51 class NextTickEvent : public core::EventReceiver {
52 public:
53 explicit NextTickEvent(const std::function<void(void)>& callBack)
54 : core::EventReceiver("RequestEvent")
55 , callBack(callBack) {
56 }
57
58 void onEvent([[maybe_unused]] const utils::Timeval& currentTime) override {
59 callBack();
60
61 delete this;
62 }
63
64 private:
65 std::function<void(void)> callBack;
66 };
67
68 (new NextTickEvent(callBack))->span();
69 }
Definition Timer.h:59

References span().

Here is the call graph for this function:

◆ destruct()

◆ getName()

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

Definition at line 87 of file EventReceiver.cpp.

87 {
88 return event.getName();
89 }

◆ 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 83 of file EventReceiver.cpp.

83 {
84 event.relax();
85 }

◆ span()

void core::EventReceiver::span ( )

Definition at line 79 of file EventReceiver.cpp.

79 {
80 event.span();
81 }

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 87 of file EventReceiver.h.


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