00001 #ifndef _Runnable_
00002 #define _Runnable_
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #include <boost/function.hpp>
00025 #include "qpid/CommonImportExport.h"
00026
00027 namespace qpid {
00028 namespace sys {
00029
00033 class Runnable
00034 {
00035 public:
00037 typedef boost::function0<void> Functor;
00038
00039 QPID_COMMON_EXTERN virtual ~Runnable();
00040
00042 virtual void run() = 0;
00043
00045 Functor functor();
00046 };
00047
00048 }}
00049
00050
00051 #endif