Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members  

wvcallback.h File Reference

Go to the source code of this file.

Compounds

class  WvCallback0
class  WvCallback0_bound
class  WvCallback1
class  WvCallback1_bound
class  WvCallback2
class  WvCallback2_bound
class  WvCallback3
class  WvCallback3_bound
class  WvCallback4
class  WvCallback4_bound
class  WvCallback5
class  WvCallback5_bound
class  WvCallback6
class  WvCallback6_bound
class  WvCallbackBase
struct  Fake

Defines

#define __MakeWvCallback(n, decls, parms)
#define __MakeWvBoundCallback(n, decls, basetype...)
#define DeclareWvCallback(n, ret, type, parms...)
#define wvcallback(cbname, instance, func)   cbname##_bound<typeof(instance)>(instance, &func)

Functions

 DeclareWvCallback (0, void, VoidCallback)


Define Documentation

#define __MakeWvBoundCallback n,
decls,
basetype...   
 

Value:

class WvCallback##n##_bound : public basetype \
    { \
    public: \
        typedef RET (T::*BoundFunc) decls; \
        WvCallback##n##_bound(T &_obj, BoundFunc _func) \
            : basetype((Fake *)&_obj, reinterpret_cast<Func>(_func)) { } \
    }

Definition at line 89 of file utils/wvcallback.h.

#define __MakeWvCallback n,
decls,
parms   
 

Value:

class WvCallback##n : public WvCallbackBase<RET> \
    { \
    protected: \
    public: \
        typedef RET (Fake::*Func) decls; \
        typedef RET (*GlobalFunc) decls; \
        WvCallback##n(Fake *_obj, Func _func) \
            : WvCallbackBase<RET>(_obj, (FakeFunc)_func) { } \
        WvCallback##n(GlobalFunc _func) \
            : WvCallbackBase<RET>((FakeGlobalFunc)_func) { } \
    public: \
        RET operator() decls  \
            { \
              if (obj) \
                return ((*obj).*(Func)func) parms; \
              else \
                return ((GlobalFunc)globalfunc) parms; \
            } \
    }

Definition at line 61 of file utils/wvcallback.h.

#define DeclareWvCallback n,
ret,
type,
parms...   
 

Value:

typedef WvCallback##n<ret , ## parms> type; \
    \
    template <class T> \
        class type##_bound : public WvCallback##n##_bound<ret,T , ## parms> \
        { \
        public: \
            type##_bound(T &_obj, BoundFunc _func) \
                : WvCallback##n##_bound<ret,T , ## parms>(_obj, _func) {} \
        }

Definition at line 163 of file utils/wvcallback.h.

#define wvcallback cbname,
instance,
func       cbname##_bound<typeof(instance)>(instance, &func)
 

Definition at line 185 of file utils/wvcallback.h.


Function Documentation

DeclareWvCallback  ,
void   ,
VoidCallback   
 


Generated on Fri Apr 5 15:16:53 2002 for WvStreams by doxygen1.2.15