#pragma once #include "Component.hpp" #include <engine/utility/Priority.hpp> namespace megu::kernel { template <class Ge> class Graphical : public Component<Ge> { public: inline Graphical(Priority l = 0, Priority o = 0) : _layer(l), _object(o) {} inline Priority getLayerPriority() const {return this->_layer;} inline Priority getObjectPriority() const {return this->_object;} inline void setLayerPriority(Priority p) {this->_layer = p;} inline void setLayerObject(Priority p) {this->_object = p;} virtual void update(double) = 0; private: Priority _layer; Priority _object; }; }