00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef neo_resource_animation_h
00022 #define neo_resource_animation_h
00023
00029 #include "../core/platform.h"
00030
00031 #if NEO_ENABLE_RESOURCE && NEO_ENABLE_ANIMATION
00032
00033 #include "../core/singleton.h"
00034 #include "../core/hashtable.h"
00035 #include "../animation/animation.h"
00036 #include "manager.h"
00037
00038 namespace neo {
00039 namespace resource {
00040
00042
00045 class AnimationManager : public core::Singleton< AnimationManager >, public Manager< animation::AnimationPtr >
00046 {
00047 protected:
00048
00050 AnimationManager();
00051
00053 virtual ~AnimationManager();
00054
00055 virtual animation::AnimationPtr clone( animation::AnimationPtr p_res );
00056 virtual animation::AnimationPtr toType( core::Resource* p_resource );
00057 virtual core::Resource* fromType( animation::AnimationPtr p_resource );
00058
00059 friend class core::Singleton< AnimationManager >;
00060 };
00061
00062 }
00063 }
00064
00065 #endif
00066
00067 #endif