WvDelayedCallback< Functor > Class Template Reference

#include <wvdelayedcallback.h>

List of all members.


Detailed Description

template<class Functor>
class WvDelayedCallback< Functor >

A WvCallback wrapper that delays until the next tick of the WvIStreamList main loop.

There are restrictions on the type of the wrapped callback though: 1. The return type must be void 2. All parameter types must be copy-constructible value types

Example: setcallback(wv::delayed(mycallback));

FIXME: Because operator() makes a copy of the inner callback and thaw() destroys the copy, nesting WvDelayedCallback doesn't work as you might expect. That is, don't do: wv::delayed(wv::delayed(mycallback)). It creates a copy of the inner WvDelayedCallback, but that copy gets frozen, then destroyed before it has a chance to thaw! Anyway, it's a stupid thing to do anyway, so don't.

Definition at line 30 of file wvdelayedcallback.h.


Public Member Functions

 WvDelayedCallback (const Functor &_func)
 WvDelayedCallback (const WvDelayedCallback &other)
void operator() ()
template<typename P1>
void operator() (P1 &p1)
template<typename P1, typename P2>
void operator() (P1 &p1, P2 &p2)
template<typename P1, typename P2, typename P3>
void operator() (P1 &p1, P2 &p2, P3 &p3)
template<typename P1, typename P2, typename P3, typename P4>
void operator() (P1 &p1, P2 &p2, P3 &p3, P4 &p4)
template<typename P1, typename P2, typename P3, typename P4, typename P5>
void operator() (P1 &p1, P2 &p2, P3 &p3, P4 &p4, P5 &p5)
template<typename P1, typename P2, typename P3, typename P4, typename P5, typename P6>
void operator() (P1 &p1, P2 &p2, P3 &p3, P4 &p4, P5 &p5, P6 &p6)
template<typename P1, typename P2, typename P3, typename P4, typename P5, typename P6, typename P7>
void operator() (P1 &p1, P2 &p2, P3 &p3, P4 &p4, P5 &p5, P6 &p6, P7 &p7)
template<typename P1, typename P2, typename P3, typename P4, typename P5, typename P6, typename P7, typename P8>
void operator() (P1 &p1, P2 &p2, P3 &p3, P4 &p4, P5 &p5, P6 &p6, P7 &p7, P8 &p8)

The documentation for this class was generated from the following file:

Generated on Wed May 13 02:03:09 2009 for WvStreams by  doxygen 1.5.5