coeng

annotate src/comp.h @ 3:66d1762eb203

foo
author John Tsiombikas <nuclear@member.fsf.org>
date Thu, 05 Feb 2015 23:20:20 +0200
parents b0d8d454c546
children 2f872a179914
rev   line source
nuclear@0 1 #ifndef COMP_H_
nuclear@0 2 #define COMP_H_
nuclear@0 3
nuclear@1 4 #include <string>
nuclear@0 5
nuclear@1 6 class GameObject;
nuclear@1 7
nuclear@0 8 class Component {
nuclear@1 9 protected:
nuclear@2 10 const char *name;
nuclear@2 11 GameObject *gobj;
nuclear@1 12 int upd_prio; // update priority (0: normal)
nuclear@1 13
nuclear@0 14 public:
nuclear@2 15 Component();
nuclear@2 16 virtual ~Component();
nuclear@1 17
nuclear@1 18 const char *get_name() const;
nuclear@1 19
nuclear@1 20 virtual void update();
nuclear@1 21
nuclear@1 22 bool operator <(const Component &c) const; // for sorting based on priority
nuclear@2 23
nuclear@2 24 friend class GameObject;
nuclear@1 25 };
nuclear@1 26
nuclear@2 27 void register_component(const char *name, Component *(*cons_func)());
nuclear@2 28 Component *create_component(const char *name);
nuclear@0 29
nuclear@0 30 #endif // COMP_H_