1 #ifndef RADIX_SYSTEM_HPP 
    2 #define RADIX_SYSTEM_HPP 
   15 template<
typename T> 
struct _SystemTypeId { 
static SystemTypeId id; };
 
   32     static_assert(std::is_base_of<System, T>::value, 
"T must be a System");
 
   33     return _SystemTypeId<typename std::remove_cv<T>::type>::id;
 
   38   virtual const char* 
getName() 
const = 0;
 
virtual bool runsBefore(const System &)
Definition: System.hpp:40
 
virtual void update(TDelta dtime)=0
 
Definition: GameController.hpp:7
 
Definition: System.hpp:21
 
System(World &w)
Definition: System.hpp:36
 
std::size_t SystemTypeId
Definition: System.hpp:10
 
World & world
Definition: System.hpp:23
 
Definition: TimeDelta.hpp:8
 
virtual bool runsAfter(const System &)
Definition: System.hpp:41
 
SystemTypeId getNewSystemTypeId()
Definition: System.hpp:45
 
SystemTypeId TypeId
Definition: System.hpp:26
 
virtual const char * getName() const =0
 
static TypeId getTypeId()
Gets a component's type ID. 
Definition: System.hpp:31