diff --git a/inc/hgl/type/TickObject.h b/inc/hgl/type/TickObject.h new file mode 100644 index 0000000..7e981d5 --- /dev/null +++ b/inc/hgl/type/TickObject.h @@ -0,0 +1,25 @@ +#pragma once + +#include + +namespace hgl +{ + class TickObject:public _Object + { + private: + + bool EnableTick=false; + + public: + + const bool &IsEnabledTick()const{return EnableTick;} + void SetEnableTick(bool et){EnableTick=et;} + + public: + + TickObject()=default; + virtual ~TickObject()=default; + + virtual void Tick()=0; + };//class TickObject:public _Object +}//namespace hgl diff --git a/inc/hgl/type/_Object.h b/inc/hgl/type/_Object.h index 99ae565..cbe810b 100644 --- a/inc/hgl/type/_Object.h +++ b/inc/hgl/type/_Object.h @@ -5,11 +5,18 @@ namespace hgl { + //对象属性位定义 + #define HGL_OBJECT_ATTRIBUTE_BIT_TICK 0x00000001 + /** * 最终基类 */ class _Object ///最终基类 { + private: + + unsigned int object_attribute_bits=0; ///<对象属性位集合 + public: virtual ~_Object()=default; ///<本类析构函数 diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index a87dd1b..1858080 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -48,6 +48,10 @@ SET(SYSTEM_INFO_SOURCE ${CORE_PLATFORM_INCLUDE_PATH}/SystemInfo.h SET(MATH_INCLUDE_PATH ${CMCORE_ROOT_INCLUDE_PATH}/hgl/math) +SET(BASE_OBJECT_SOURCE_FILES Object/TickObject.cpp) + +SOURCE_GROUP("DataType\\Object" FILES ${BASE_OBJECT_SOURCE_FILES}) + ##Math-------------------------------------------------------- SET(MATH_HEADER_FILES ${MATH_INCLUDE_PATH}/bvec.h ${MATH_INCLUDE_PATH}/FastTriangle.h @@ -233,6 +237,8 @@ SOURCE_GROUP("Log\\Source Files" FILES ${BASE_LOG_SOURCE}) add_cm_library(CMCore "CM" ${CORE_PLATFORM_HEADER_FILES} #${SYSTEM_INFO_SOURCE} + ${BASE_OBJECT_SOURCE_FILES} + ${COLOR_HEADER_FILES} ${COLOR_SOURCE_FILES} diff --git a/src/Object/TickObject.cpp b/src/Object/TickObject.cpp new file mode 100644 index 0000000..05e1715 --- /dev/null +++ b/src/Object/TickObject.cpp @@ -0,0 +1,5 @@ +#include + +namespace hgl +{ +}//namespace hgl