#ifndef SKELETON_HPP
#define SKELETON_HPP

// Détection du système cible...
#include "usgeDetectSystem.h"

// Les types "USpeed Game Engine"
#include "Core/CoreTypes.hpp"


namespace USpeedGameEngine
{

class Skeleton
{
    /****************
    * Les attributs *
    ****************/
    public :
        class Bone;                 //!< La classe décrivant un "os" du squelette
    protected :
    private :
        USGE_Float3 position;       //!< La position du squelette (translation du modèle)
        Skeleton::Bone *rootBone;   //!< L'os racine : le point d'attache de tous les autres os.

    /***************
    * Les méthodes *
    ***************/
    public :
        // Destructeur par défaut
        ~Skeleton();
        // Constructeur par défaut
        Skeleton();

        // Remise à zéro de l'instance de la classe
        void clear();
        // Ajout d'un os au squelette
        bool addBone(Skeleton::Bone *bone);

    protected :
    private :
};

}        // Fin "namespace USpeedGameEngine"

#endif
