IBR-DTNSuite  0.8
daemon/src/core/GlobalEvent.h
Go to the documentation of this file.
00001 /*
00002  * GlobalEvent.h
00003  *
00004  *  Created on: 30.10.2009
00005  *      Author: morgenro
00006  */
00007 
00008 #ifndef GLOBALEVENT_H_
00009 #define GLOBALEVENT_H_
00010 
00011 #include "core/Event.h"
00012 
00013 namespace dtn
00014 {
00015         namespace core
00016         {
00017                 class GlobalEvent : public Event
00018                 {
00019                 public:
00020                         enum Action
00021                         {
00022                                 GLOBAL_SHUTDOWN = 0,
00023                                 GLOBAL_RELOAD = 1,
00024                                 GLOBAL_IDLE = 2,
00025                                 GLOBAL_BUSY = 3,
00026                                 GLOBAL_SUSPEND = 4,
00027                                 GLOBAL_POWERSAVE = 5,
00028                                 GLOBAL_WAKEUP = 6
00029                         };
00030 
00031                         virtual ~GlobalEvent();
00032 
00033                         const std::string getName() const;
00034 
00035                         Action getAction() const;
00036 
00037                         static void raise(const Action a);
00038 
00039                         std::string toString() const;
00040 
00041                         static const std::string className;
00042 
00043                 private:
00044                         GlobalEvent(const Action a);
00045                         Action _action;
00046                 };
00047         }
00048 }
00049 
00050 #endif /* GLOBALEVENT_H_ */