/***************************************************************************
*                                                                          *
*  Copyright (C) Golaem S.A.  All Rights Reserved.                         *
*                                                                          *
***************************************************************************/

#pragma once

#include "glmCoreAPI.h"
#include "glmRTTI.h"
#include "glmBonePhysicConfiguration.h"

#include <glmGolaemCharacterDeclarations.h> // GolaemCharacter declarations

namespace glm
{
	/**
	* \brief Represent a bone that overrides some physics properties
	*
	* \author dev@golaem.com
	*
	*/
    struct GLM_CORE_API PhysicsOverrideV0
    {
        GLM_RTTI("50759144-5b63-46fa-ae07-e00549e054d6", glm::PhysicsOverrideV0, addAttributes);

    public:
        PhysicsOverrideV0()
            : _name("PhysicsOverride")
            , _skeletonBoneIndex(-1)
        {
        }

        glm::GlmString _name;
        int32_t _skeletonBoneIndex;
        BonePhysicConfigurationV1 _physicsConfiguration;

    private:
        static void addAttributes();
    };
} // namespace glm
