signalfwd.h

Go to the documentation of this file.
00001 
00002 #if !defined(INCLUDED_SIGNALFWD_H)
00003 #define INCLUDED_SIGNALFWD_H
00004 
00005 class SignalHandler;
00006 template<typename FirstArgument>
00007 class SignalHandler1;
00008 template<typename FirstArgument, typename SecondArgument>
00009 class SignalHandler2;
00010 template<typename FirstArgument, typename SecondArgument, typename ThirdArgument>
00011 class SignalHandler3;
00012 
00013 template<typename Context>
00014 class Opaque;
00015 
00018 template<typename Type>
00019 class Handle {
00020     Type* p;
00021 public:
00022     Handle() : p(0) {
00023     }
00024     explicit Handle(Type* p) : p(p) {
00025     }
00026     Type* get() const {
00027         return p;
00028     }
00029     bool isNull() const {
00030         return p == 0;
00031     }
00032 };
00033 
00034 template<typename Handler>
00035 class SignalFwd {
00036 public:
00037     typedef Handle< Opaque<Handler> > handler_id_type;
00038 };
00039 
00040 typedef SignalFwd<SignalHandler>::handler_id_type SignalHandlerId;
00041 
00042 #endif

Generated by  doxygen 1.6.2