qb  2.0.0.0
C++17 Actor Framework
qb Issue Watch Star Fork Follow @isndev
Loading...
Searching...
No Matches
Event.h File Reference

Event system for the QB Actor Framework. More...

#include <bitset>
#include <qb/system/allocator/pipe.h>
#include <utility>
#include "ActorId.h"
#include "ICallback.h"
Include dependency graph for Event.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  qb::type< T >
 Template struct used for type identification in the event system. More...
class  qb::Event
 Base class for all events in the actor system. More...
struct  qb::EventQOS0
 Event with lowest quality of service level. More...
class  qb::ServiceEvent
 Event type for service-to-service communication. More...
struct  qb::KillEvent
 Event used to terminate an actor. More...
struct  qb::UnregisterCallbackEvent
 Event used to unregister an actor's callback. More...
struct  qb::SignalEvent
 Event used to handle system signals. More...
struct  qb::PingEvent
 Event used for actor health checks. More...
struct  qb::RequireEvent
 Event used to query actor status. More...
struct  qb::WithData< _Args >
 Event template that includes data payload. More...
struct  qb::WithoutData< _Args >
 Event template without data payload. More...
struct  qb::AskData< _Args >
 Event template for requesting data, typically without carrying data itself. More...
struct  qb::FillEvent< _Args >
 Event template for events that carry and "fill" data. More...

Typedefs

using qb::EventQOS2 = Event
 Event with highest quality of service (priority level 2)
using qb::EventQOS1 = Event
 Event with medium quality of service (priority level 1)
using qb::VirtualPipe = allocator::pipe<EventBucket>
 Pipe for event transmission in the actor system.
using qb::event = Event
 Alias for the base Event class.
using qb::service_event = ServiceEvent
 Alias for the ServiceEvent class.

Enumerations

enum class  qb::ActorStatus : uint32_t { ActorStatus::Alive , ActorStatus::Dead }
 Represents the current status of an actor in the system. More...

Functions

template<typename T>
constexpr TypeId qb::type_id ()
 Function to get a unique type identifier for a given type.

Detailed Description

Event system for the QB Actor Framework.

This file defines the event system used by the QB Actor Framework for communication between actors. It includes the base Event class and several specialized event types for different purposes, including quality of service levels, service events, and system events like kill and signal events.

Events are the primary means of communication between actors, ensuring isolation and thread safety in the actor system.

Author
qb - C++ Actor Framework

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.