template<class Traits>
eckit::Dispatcher class

Base classes

class Configurable

Public types

using Request = Traits::Request
using Handler = Traits::Handler

Public static functions

static void reconfigureAll()
static void dumpAllResources(std::ostream&)
static void htmlAllResources(std::ostream&, Url&)
static auto size() -> size_t
static void callAll(void(T::*)())
static void callAll(void(T::*)() const)
static void callAll(void(T::*)(P), P)
static void callAll(void(T::*)(P) const, P)
static void callAll(void(T::*)(P1, P2), P1, P2)
static void callAll(void(T::*)(P&) const, P&)
static void callAll(void(T::*)(P&), P&)
static void callAll(void(T::*)(P1&, P2&), P1&, P2&)

Constructors, destructors, conversion operators

Dispatcher(const std::string& name = Traits::name(), int numberOfThreads = 1)
~Dispatcher()

Public functions

void push(Request*)
void push(const std::vector<Request*>&)
auto next(Handler&, std::vector<Request*>&, Mutex&) -> bool
void dequeue(DequeuePicker<Request>&)
void sleep()
void sleep(int)
void awake()
auto size() const -> int
void running(long)
auto running() const -> long
void json(JSON&) const
auto name() const -> std::string virtual

Private functions

auto kind() const -> std::string virtual
void reconfigure() virtual

Friends

auto operator<<(std::ostream& s, const Dispatcher<Traits>& p) -> std::ostream&

Function documentation

template<class Traits>
static void eckit::Dispatcher<Traits>::reconfigureAll()

template<class Traits>
static void eckit::Dispatcher<Traits>::dumpAllResources(std::ostream&)

template<class Traits>
static void eckit::Dispatcher<Traits>::htmlAllResources(std::ostream&, Url&)

template<class Traits>
static size_t eckit::Dispatcher<Traits>::size()

template<class Traits>
static void eckit::Dispatcher<Traits>::callAll(void(T::*)())

template<class Traits>
static void eckit::Dispatcher<Traits>::callAll(void(T::*)() const)

template<class Traits>
static void eckit::Dispatcher<Traits>::callAll(void(T::*)(P), P)

template<class Traits>
static void eckit::Dispatcher<Traits>::callAll(void(T::*)(P) const, P)

template<class Traits>
static void eckit::Dispatcher<Traits>::callAll(void(T::*)(P1, P2), P1, P2)

template<class Traits>
static void eckit::Dispatcher<Traits>::callAll(void(T::*)(P&) const, P&)

template<class Traits>
static void eckit::Dispatcher<Traits>::callAll(void(T::*)(P&), P&)

template<class Traits>
static void eckit::Dispatcher<Traits>::callAll(void(T::*)(P1&, P2&), P1&, P2&)

template<class Traits>
std::string eckit::Dispatcher<Traits>::name() const virtual

Returns the name of the instance

template<class Traits>
std::string eckit::Dispatcher<Traits>::kind() const virtual private

Returns the name of the class