template class Poco::FIFOEvent

#include <FIFOEvent.h>

template <
    class TArgs,
    class TMutex = FastMutex
    >
class FIFOEvent: public Poco::AbstractEvent
{
};

Inherited Members

public:
    // typedefs

    typedef TDelegate* DelegateHandle;
    typedef TArgs Args;

    // structs

    struct NotifyAsyncParams;

    // methods

    void
    operator+=(const TDelegate& aDelegate);

    void
    operator-=(const TDelegate& aDelegate);

    DelegateHandle
    add(const TDelegate& aDelegate);

    void
    remove(DelegateHandle delegateHandle);

    void
    operator()(
        const void* pSender,
        TArgs& args
        );

    void
    operator()(TArgs& args);

    void
    notify(
        const void* pSender,
        TArgs& args
        );

    bool
    hasDelegates() const;

    ActiveResult<TArgs>
    notifyAsync(
        const void* pSender,
        const TArgs& args
        );

    void
    enable();

    void
    disable();

    bool
    isEnabled() const;

    void
    clear();

    bool
    empty() const;

protected:
    // fields

    ActiveMethod<TArgs, NotifyAsyncParams, AbstractEvent> _executeAsync;
    TStrategy _strategy;
    bool _enabled;
    TMutex _mutex;

    // methods

    TArgs
    executeAsyncImpl(const NotifyAsyncParams& par);