Poco

template < class TArgs, class TDelegate >

class PriorityStrategy

File Information

Library: Foundation
Package: Events
Header: Poco/PriorityStrategy.h

Description

NotificationStrategy for PriorityEvent.

Delegates are kept in a std::vector<>, ordered by their priority.

Inheritance

Direct Base Classes: NotificationStrategy < TArgs, TDelegate >

All Base Classes: NotificationStrategy < TArgs, TDelegate >

Member Summary

Member Functions: add, clear, empty, notify, operator =, remove

Types Aliases

DelegateHandle

using DelegateHandle = TDelegate *;

DelegatePtr

using DelegatePtr = SharedPtr < TDelegate >;

Delegates

using Delegates = std::vector < DelegatePtr >;

Iterator

using Iterator = typename Delegates::iterator;

Constructors

PriorityStrategy inline

PriorityStrategy();

PriorityStrategy inline

PriorityStrategy(
    const PriorityStrategy & s
);

Destructor

~PriorityStrategy inline

~PriorityStrategy();

Member Functions

add inline

DelegateHandle add(
    const TDelegate & delegate
);

clear inline

void clear();

empty inline

bool empty() const;

notify inline

void notify(
    const void * sender,
    TArgs & arguments
);

operator = inline

PriorityStrategy & operator = (
    const PriorityStrategy & s
);

remove inline

void remove(
    const TDelegate & delegate
);

remove inline

void remove(
    DelegateHandle delegateHandle
);

Variables

_delegates protected

Delegates _delegates;