Share via


EventSource Class

Represents an event. EventSource member functions add, remove, and invoke event handlers.

template<
   typename TDelegateInterface
>
class EventSource;

Parameters

  • TDelegateInterface
    The interface to a delegate that represents an event handler.

Members

Public Constructors

Name

Description

EventSource::EventSource Constructor

Initializes a new instance of the EventSource class.

Public Methods

Name

Description

EventSource::Add Method

Appends the event handler represented by the specified delegate interface to the set of event handlers for the current EventSource object.

EventSource::GetSize Method

Retrieves the number of event handlers associated with the current EventSource object

EventSource::InvokeAll Method

Calls each event handler associated with the current EventSource object using the specified argument types and arguments.

EventSource::Remove Method

Deletes the event handler represented by the specified event registration token from the set of event handlers associated with the current EventSource object.

Protected Data Members

Name

Description

EventSource::addRemoveLock_ Data Member

Synchronizes access to the targets_ array when adding, removing, or invoking event handlers.

EventSource::targets_ Data Member

An array of one or more event handlers.

EventSource::targetsPointerLock_ Data Member

Synchronizes access to internal data members even while event handlers for this EventSource are being added, removed, or invoked.

Inheritance Hierarchy

EventSource

Requirements

Header: event.h

Namespace: Microsoft::WRL

See Also

Reference

Microsoft::WRL Namespace