00001 #ifndef OSDL_ENGINE_COMMON_H_
00002 #define OSDL_ENGINE_COMMON_H_
00003
00004
00005
00006 #include "OSDLException.h"
00007
00008 #include <string>
00009 #include <list>
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 namespace OSDL
00022 {
00023
00024
00025 namespace Engine
00026 {
00027
00028
00029
00030
00031 class ActiveObject ;
00032
00033
00035 class OSDL_DLL EngineException : public OSDL::Exception
00036 {
00037 public:
00038
00039 explicit EngineException( const std::string & reason ) throw() ;
00040 virtual ~EngineException() throw() ;
00041
00042 } ;
00043
00044
00045
00047 class OSDL_DLL SchedulingException : public EngineException
00048 {
00049 public:
00050
00051 explicit SchedulingException( const std::string & reason )
00052 throw() ;
00053 virtual ~SchedulingException() throw() ;
00054
00055 } ;
00056
00057
00066 typedef std::list<ActiveObject *> ListOfActiveObjects ;
00067
00068
00069
00078 typedef Ceylan::Uint16 Weight ;
00079
00080
00096 enum ObjectSchedulingPolicy { relaxed, strict } ;
00097
00098
00099
00100 }
00101
00102 }
00103
00104
00105 #endif // OSDL_ENGINE_COMMON_H_
00106