Menu
Lumberyard
C++ API Reference (Version 1.10)

EBus.h File Reference

Open 3D Engine (O3DE), the successor to Lumberyard, is now available in Developer Preview. Download O3DE or visit the AWS Game Tech blog to learn more.

Header file for event bus (EBus), a general-purpose communication system that Lumberyard uses to dispatch notifications and receive requests. More...

Classes

struct AZ::EBusTraits
EBusTraits are properties that you use to configure an EBus . More...
class AZ::EBus< Interface, BusTraits >
Event buses (EBuses) are a general-purpose communication system that Lumberyard uses to dispatch notifications and receive requests. More...

Namespaces

AZStd
AZ

Macros

#define EBUS_EVENT_PTR (_BusPtr, _EBUS, ...)
Dispatches an event to handlers at a cached address. More...
#define EBUS_EVENT_PTR_RESULT (_Result, _BusPtr, _EBUS, ...)
Dispatches an event to handlers at a cached address and receives results. More...
#define EBUS_EVENT_ID (_BusId, _EBUS, ...)
Dispatches an event to handlers at a specific address. More...
#define EBUS_EVENT_ID_RESULT (_Result, _BusId, _EBUS, ...)
Dispatches an event to handlers at a specific address and receives results. More...
#define EBUS_EVENT (_EBUS, ...)
Dispatches an event to all handlers. More...
#define EBUS_EVENT_RESULT (_Result, _EBUS, ...)
Dispatches an event to all handlers and receives results. More...
#define EBUS_EVENT_PTR_REVERSE (_BusPtr, _EBUS, ...)
Dispatches an event to handlers at a cached address in reverse order. More...
#define EBUS_EVENT_PTR_RESULT_REVERSE (_Result, _BusPtr, _EBUS, ...)
Dispatches an event to handlers at a cached address in reverse order and receives results. More...
#define EBUS_EVENT_ID_REVERSE (_BusId, _EBUS, ...)
Dispatches an event to handlers at a specific address in reverse order. More...
#define EBUS_EVENT_ID_RESULT_REVERSE (_Result, _BusId, _EBUS, ...)
Dispatches an event to handlers at a specific address in reverse order and receives results. More...
#define EBUS_EVENT_REVERSE (_EBUS, ...)
Dispatches an event to all handlers in reverse order. More...
#define EBUS_EVENT_RESULT_REVERSE (_Result, _EBUS, ...)
Dispatches an event to all handlers in reverse order and receives results. More...
#define EBUS_QUEUE_EVENT (_EBUS, ...)
Enqueues an asynchronous event to dispatch to all handlers. More...
#define EBUS_QUEUE_EVENT_PTR (_BusPtr, _EBUS, ...)
Enqueues an asynchronous event to dispatch to handlers at a cached address. More...
#define EBUS_QUEUE_EVENT_ID (_BusId, _EBUS, ...)
Enqueues an asynchronous event to dispatch to handlers at a specific address. More...
#define EBUS_QUEUE_EVENT_REVERSE (_EBUS, ...)
Enqueues an asynchronous event to dispatch to all handlers in reverse order. More...
#define EBUS_QUEUE_EVENT_PTR_REVERSE (_BusPtr, _EBUS, ...)
Enqueues an asynchronous event to dispatch to handlers at a cached address in reverse order. More...
#define EBUS_QUEUE_EVENT_ID_REVERSE (_BusId, _EBUS, ...)
Enqueues an asynchronous event to dispatch to handlers at a specific address in reverse order. More...
#define EBUS_QUEUE_FUNCTION (_EBUS, ...)
Enqueues an arbitrary callable function to be executed asynchronously. More...
#define EBUS_DBG_EVENT_PTR (_BusPtr, _EBUS, ...)
Dispatches an event to handlers at a cached address. More...
#define EBUS_DBG_EVENT_PTR_RESULT (_Result, _BusPtr, _EBUS, ...)
Dispatches an event to handlers at a cached address and receives results. More...
#define EBUS_DBG_EVENT_ID (_BusId, _EBUS, ...)
Dispatches an event to handlers at a specific address. More...
#define EBUS_DBG_EVENT_ID_RESULT (_Result, _BusId, _EBUS, ...)
Dispatches an event to handlers at a specific address and receives results. More...
#define EBUS_DBG_EVENT (_EBUS, ...)
Dispatches an event to all handlers. More...
#define EBUS_DBG_EVENT_RESULT (_Result, _EBUS, ...)
Dispatches an event to all handlers and receives results. More...
#define EBUS_DBG_EVENT_PTR_REVERSE (_BusPtr, _EBUS, ...)
Dispatches an event to handlers at a cached address in reverse order. More...
#define EBUS_DBG_EVENT_PTR_RESULT_REVERSE (_Result, _BusPtr, _EBUS, ...)
Dispatches an event to handlers at a cached address in reverse order and receives results. More...
#define EBUS_DBG_EVENT_ID_REVERSE (_BusId, _EBUS, ...)
Dispatches an event to handlers at a specific address in reverse order. More...
#define EBUS_DBG_EVENT_ID_RESULT_REVERSE (_Result, _BusId, _EBUS, ...)
Dispatches an event to handlers at a specific address in reverse order and receives results. More...
#define EBUS_DBG_EVENT_REVERSE (_EBUS, ...)
Dispatches an event to all handlers in reverse order. More...
#define EBUS_DBG_EVENT_RESULT_REVERSE (_Result, _EBUS, ...)
Dispatches an event to all handlers in reverse order and receives results. More...
#define EBUS_DBG_QUEUE_EVENT (_EBUS, ...)
Enqueues an asynchronous event to dispatch to all handlers. More...
#define EBUS_DBG_QUEUE_EVENT_PTR (_BusPtr, _EBUS, ...)
Enqueues an asynchronous event to dispatch to handlers at a cached address. More...
#define EBUS_DBG_QUEUE_EVENT_ID (_BusId, _EBUS, ...)
Enqueues an asynchronous event to dispatch to handlers at a specific address. More...
#define EBUS_DBG_QUEUE_EVENT_REVERSE (_EBUS, ...)
Enqueues an asynchronous event to dispatch to all handlers in reverse order. More...
#define EBUS_DBG_QUEUE_EVENT_PTR_REVERSE (_BusPtr, _EBUS, ...)
Enqueues an asynchronous event to dispatch to handlers at a cached address in reverse order. More...
#define EBUS_DBG_QUEUE_EVENT_ID_REVERSE (_BusId, _EBUS, ...)
Enqueues an asynchronous event to dispatch to handlers at a specific address in reverse order. More...
#define EBUS_DBG_QUEUE_FUNCTION (_EBUS, ...)
Enqueues an arbitrary callable function to be executed asynchronously. More...

Detailed Description

Header file for event bus (EBus), a general-purpose communication system that Lumberyard uses to dispatch notifications and receive requests.

EBuses are configurable and support many different use cases. For more information about EBuses, see AZ::EBus in this guide and Working with the Event Bus (EBus) System in the Lumberyard User Guide .

Macro Definition Documentation

EBUS_DBG_EVENT

#define EBUS_DBG_EVENT ( _EBUS,
...
)

Dispatches an event to all handlers.

EBUS_DBG_EVENT_ID

#define EBUS_DBG_EVENT_ID ( _BusId,
_EBUS,
...
)

Dispatches an event to handlers at a specific address.

EBUS_DBG_EVENT_ID_RESULT

#define EBUS_DBG_EVENT_ID_RESULT ( _Result,
_BusId,
_EBUS,
...
)

Dispatches an event to handlers at a specific address and receives results.

EBUS_DBG_EVENT_ID_RESULT_REVERSE

#define EBUS_DBG_EVENT_ID_RESULT_REVERSE ( _Result,
_BusId,
_EBUS,
...
)

Dispatches an event to handlers at a specific address in reverse order and receives results.

EBUS_DBG_EVENT_ID_REVERSE

#define EBUS_DBG_EVENT_ID_REVERSE ( _BusId,
_EBUS,
...
)

Dispatches an event to handlers at a specific address in reverse order.

EBUS_DBG_EVENT_PTR

#define EBUS_DBG_EVENT_PTR ( _BusPtr,
_EBUS,
...
)

Dispatches an event to handlers at a cached address.

EBUS_DBG_EVENT_PTR_RESULT

#define EBUS_DBG_EVENT_PTR_RESULT ( _Result,
_BusPtr,
_EBUS,
...
)

Dispatches an event to handlers at a cached address and receives results.

EBUS_DBG_EVENT_PTR_RESULT_REVERSE

#define EBUS_DBG_EVENT_PTR_RESULT_REVERSE ( _Result,
_BusPtr,
_EBUS,
...
)

Dispatches an event to handlers at a cached address in reverse order and receives results.

EBUS_DBG_EVENT_PTR_REVERSE

#define EBUS_DBG_EVENT_PTR_REVERSE ( _BusPtr,
_EBUS,
...
)

Dispatches an event to handlers at a cached address in reverse order.

EBUS_DBG_EVENT_RESULT

#define EBUS_DBG_EVENT_RESULT ( _Result,
_EBUS,
...
)

Dispatches an event to all handlers and receives results.

EBUS_DBG_EVENT_RESULT_REVERSE

#define EBUS_DBG_EVENT_RESULT_REVERSE ( _Result,
_EBUS,
...
)

Dispatches an event to all handlers in reverse order and receives results.

EBUS_DBG_EVENT_REVERSE

#define EBUS_DBG_EVENT_REVERSE ( _EBUS,
...
)

Dispatches an event to all handlers in reverse order.

EBUS_DBG_QUEUE_EVENT

#define EBUS_DBG_QUEUE_EVENT ( _EBUS,
...
)

Enqueues an asynchronous event to dispatch to all handlers.

EBUS_DBG_QUEUE_EVENT_ID

#define EBUS_DBG_QUEUE_EVENT_ID ( _BusId,
_EBUS,
...
)

Enqueues an asynchronous event to dispatch to handlers at a specific address.

EBUS_DBG_QUEUE_EVENT_ID_REVERSE

#define EBUS_DBG_QUEUE_EVENT_ID_REVERSE ( _BusId,
_EBUS,
...
)

Enqueues an asynchronous event to dispatch to handlers at a specific address in reverse order.

EBUS_DBG_QUEUE_EVENT_PTR

#define EBUS_DBG_QUEUE_EVENT_PTR ( _BusPtr,
_EBUS,
...
)

Enqueues an asynchronous event to dispatch to handlers at a cached address.

EBUS_DBG_QUEUE_EVENT_PTR_REVERSE

#define EBUS_DBG_QUEUE_EVENT_PTR_REVERSE ( _BusPtr,
_EBUS,
...
)

Enqueues an asynchronous event to dispatch to handlers at a cached address in reverse order.

EBUS_DBG_QUEUE_EVENT_REVERSE

#define EBUS_DBG_QUEUE_EVENT_REVERSE ( _EBUS,
...
)

Enqueues an asynchronous event to dispatch to all handlers in reverse order.

EBUS_DBG_QUEUE_FUNCTION

#define EBUS_DBG_QUEUE_FUNCTION ( _EBUS,
...
)

Enqueues an arbitrary callable function to be executed asynchronously.

EBUS_EVENT

#define EBUS_EVENT ( _EBUS,
...
)

Dispatches an event to all handlers.

EBUS_EVENT_ID

#define EBUS_EVENT_ID ( _BusId,
_EBUS,
...
)

Dispatches an event to handlers at a specific address.

EBUS_EVENT_ID_RESULT

#define EBUS_EVENT_ID_RESULT ( _Result,
_BusId,
_EBUS,
...
)

Dispatches an event to handlers at a specific address and receives results.

EBUS_EVENT_ID_RESULT_REVERSE

#define EBUS_EVENT_ID_RESULT_REVERSE ( _Result,
_BusId,
_EBUS,
...
)

Dispatches an event to handlers at a specific address in reverse order and receives results.

EBUS_EVENT_ID_REVERSE

#define EBUS_EVENT_ID_REVERSE ( _BusId,
_EBUS,
...
)

Dispatches an event to handlers at a specific address in reverse order.

EBUS_EVENT_PTR

#define EBUS_EVENT_PTR ( _BusPtr,
_EBUS,
...
)

Dispatches an event to handlers at a cached address.

EBUS_EVENT_PTR_RESULT

#define EBUS_EVENT_PTR_RESULT ( _Result,
_BusPtr,
_EBUS,
...
)

Dispatches an event to handlers at a cached address and receives results.

EBUS_EVENT_PTR_RESULT_REVERSE

#define EBUS_EVENT_PTR_RESULT_REVERSE ( _Result,
_BusPtr,
_EBUS,
...
)

Dispatches an event to handlers at a cached address in reverse order and receives results.

EBUS_EVENT_PTR_REVERSE

#define EBUS_EVENT_PTR_REVERSE ( _BusPtr,
_EBUS,
...
)

Dispatches an event to handlers at a cached address in reverse order.

EBUS_EVENT_RESULT

#define EBUS_EVENT_RESULT ( _Result,
_EBUS,
...
)

Dispatches an event to all handlers and receives results.

EBUS_EVENT_RESULT_REVERSE

#define EBUS_EVENT_RESULT_REVERSE ( _Result,
_EBUS,
...
)

Dispatches an event to all handlers in reverse order and receives results.

EBUS_EVENT_REVERSE

#define EBUS_EVENT_REVERSE ( _EBUS,
...
)

Dispatches an event to all handlers in reverse order.

EBUS_QUEUE_EVENT

#define EBUS_QUEUE_EVENT ( _EBUS,
...
)

Enqueues an asynchronous event to dispatch to all handlers.

EBUS_QUEUE_EVENT_ID

#define EBUS_QUEUE_EVENT_ID ( _BusId,
_EBUS,
...
)

Enqueues an asynchronous event to dispatch to handlers at a specific address.

EBUS_QUEUE_EVENT_ID_REVERSE

#define EBUS_QUEUE_EVENT_ID_REVERSE ( _BusId,
_EBUS,
...
)

Enqueues an asynchronous event to dispatch to handlers at a specific address in reverse order.

EBUS_QUEUE_EVENT_PTR

#define EBUS_QUEUE_EVENT_PTR ( _BusPtr,
_EBUS,
...
)

Enqueues an asynchronous event to dispatch to handlers at a cached address.

EBUS_QUEUE_EVENT_PTR_REVERSE

#define EBUS_QUEUE_EVENT_PTR_REVERSE ( _BusPtr,
_EBUS,
...
)

Enqueues an asynchronous event to dispatch to handlers at a cached address in reverse order.

EBUS_QUEUE_EVENT_REVERSE

#define EBUS_QUEUE_EVENT_REVERSE ( _EBUS,
...
)

Enqueues an asynchronous event to dispatch to all handlers in reverse order.

EBUS_QUEUE_FUNCTION

#define EBUS_QUEUE_FUNCTION ( _EBUS,
...
)

Enqueues an arbitrary callable function to be executed asynchronously.