Menu
Lumberyard
C++ API Reference (Version 1.10)

AZ::EBusConnectionPolicy< Bus > Struct Template Reference

Defines the default connection policy that is used when AZ::EBusTraits::ConnectionPolicy is left unspecified. More...

Public Types

typedef  BusPtr
 A pointer to a specific address on the EBus. More...
 
typedef  BusIdType
 The type of ID that is used to address the EBus. More...
 
typedef  HandlerNode
 A handler connected to the EBus. More...
 
typedef  Context
 Global data for the EBus. More...
 

Static Public Member Functions

static void Bind (BusPtr &ptr, Context &context, const BusIdType &id=0)
 Binds a pointer to an EBus address. More...
 
static void Connect (BusPtr &ptr, Context &context, HandlerNode &handler, const BusIdType &id=0)
 Connects a handler to an EBus address. More...
 
static void Disconnect (Context &context, HandlerNode &handler, BusPtr &ptr)
 Disconnects a handler from an EBus address. More...
 
static void DisconnectId (Context &context, HandlerNode &handler, const BusIdType &id)
 Disconnects a handler from an EBus address, referencing the address by its ID. More...
 

Detailed Description

template<class Bus>
struct AZ::EBusConnectionPolicy< Bus >

Defines the default connection policy that is used when AZ::EBusTraits::ConnectionPolicy is left unspecified.

Use this as a template for custom connection policies.

Template Parameters
BusA class that defines an EBus.

Member Typedef Documentation

◆ BusIdType

template<class Bus >
typedef Bus::BusIdType AZ::EBusConnectionPolicy< Bus >::BusIdType

The type of ID that is used to address the EBus.

This type is used when the address policy is EBusAddressPolicy::ById or EBusAddressPolicy::ByIdAndOrdered only.

◆ BusPtr

template<class Bus >
typedef Bus::BusPtr AZ::EBusConnectionPolicy< Bus >::BusPtr

A pointer to a specific address on the EBus.

◆ Context

template<class Bus >
typedef Bus::Context AZ::EBusConnectionPolicy< Bus >::Context

Global data for the EBus.

There is only one context for each EBus type.

◆ HandlerNode

template<class Bus >
typedef Bus::HandlerNode AZ::EBusConnectionPolicy< Bus >::HandlerNode

A handler connected to the EBus.

Member Function Documentation

◆ Bind()

template<class Bus >
void AZ::EBusConnectionPolicy< Bus >::Bind ( BusPtr ptr,
Context context,
const BusIdType id = 0 
)
static

Binds a pointer to an EBus address.

Parameters
ptr[out]A pointer that will be bound to the appropriate address on the EBus.
contextGlobal data for the EBus.
idThe ID of the EBus address that the pointer will be bound to.

◆ Connect()

template<class Bus >
void AZ::EBusConnectionPolicy< Bus >::Connect ( BusPtr ptr,
Context context,
HandlerNode handler,
const BusIdType id = 0 
)
static

Connects a handler to an EBus address.

Parameters
ptr[out]A pointer that will be bound to the EBus address that the handler will be connected to.
contextGlobal data for the EBus.
handlerThe handler to connect to the EBus address.
idThe ID of the EBus address that the handler will be connected to.

◆ Disconnect()

template<class Bus >
void AZ::EBusConnectionPolicy< Bus >::Disconnect ( Context context,
HandlerNode handler,
BusPtr ptr 
)
static

Disconnects a handler from an EBus address.

Parameters
contextGlobal data for the EBus.
handlerThe handler to disconnect from the EBus address.
ptrA pointer to a specific address on the EBus.

◆ DisconnectId()

template<class Bus >
void AZ::EBusConnectionPolicy< Bus >::DisconnectId ( Context context,
HandlerNode handler,
const BusIdType id 
)
static

Disconnects a handler from an EBus address, referencing the address by its ID.

Parameters
contextGlobal data for the EBus.
handlerThe handler to disconnect from the EBus address.
idThe ID of the EBus address to disconnect the handler from.

The documentation for this struct was generated from the following file:
  • C:/lumberyard-root/dev/Code/Framework/AzCore/AzCore/EBus/Policies.h