| Irrlicht 3D Engine |

ISceneNodeAnimatorFactory.h
Go to the documentation of this file.

    00001 // Copyright (C) 2002-2012 Nikolaus Gebhardt
    00002 // This file is part of the "Irrlicht Engine".
    00003 // For conditions of distribution and use, see copyright notice in irrlicht.h
    00004
    00005 #ifndef __I_SCENE_NODE_ANIMATOR_FACTORY_H_INCLUDED__
    00006 #define __I_SCENE_NODE_ANIMATOR_FACTORY_H_INCLUDED__
    00007
    00008 #include "IReferenceCounted.h"
    00009 #include "ESceneNodeAnimatorTypes.h"
    00010
    00011 namespace irr
    00012 {
    00013 namespace scene
    00014 {
    00015     class ISceneNode;
    00016     class ISceneNodeAnimator;
    00017
    00019
    00027     class ISceneNodeAnimatorFactory : public virtual IReferenceCounted
    00028     {
    00029     public:
    00030
    00032
    00036         virtual ISceneNodeAnimator* createSceneNodeAnimator(ESCENE_NODE_ANIMATOR_TYPE type, ISceneNode* target) = 0;
    00037
    00039
    00043         virtual ISceneNodeAnimator* createSceneNodeAnimator(const c8* typeName, ISceneNode* target) = 0;
    00044
    00046         virtual u32 getCreatableSceneNodeAnimatorTypeCount() const = 0;
    00047
    00049
    00051         virtual ESCENE_NODE_ANIMATOR_TYPE getCreateableSceneNodeAnimatorType(u32 idx) const = 0;
    00052
    00054
    00056         virtual const c8* getCreateableSceneNodeAnimatorTypeName(u32 idx) const = 0;
    00057
    00059
    00061         virtual const c8* getCreateableSceneNodeAnimatorTypeName(ESCENE_NODE_ANIMATOR_TYPE type) const = 0;
    00062     };
    00063
    00064
    00065 } // end namespace scene
    00066 } // end namespace irr
    00067
    00068 #endif
    00069