ActorFixture.h 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. /*
  2. * Copyright (c) Contributors to the Open 3D Engine Project.
  3. * For complete copyright and license terms please see the LICENSE at the root of this distribution.
  4. *
  5. * SPDX-License-Identifier: Apache-2.0 OR MIT
  6. *
  7. */
  8. #pragma once
  9. #include "SystemComponentFixture.h"
  10. #include <Integration/Assets/ActorAsset.h>
  11. namespace EMotionFX
  12. {
  13. class Actor;
  14. class ActorInstance;
  15. class SimulatedObjectSetup;
  16. class ActorFixture
  17. : public SystemComponentFixture
  18. {
  19. public:
  20. void SetUp() override;
  21. void TearDown() override;
  22. AZStd::string SerializePhysicsSetup(const Actor* actor) const;
  23. AZStd::string SerializeSimulatedObjectSetup(const Actor* actor) const;
  24. SimulatedObjectSetup* DeserializeSimulatedObjectSetup(const AZStd::string& data) const;
  25. AZStd::vector<AZStd::string> GetTestJointNames() const;
  26. protected:
  27. Actor* GetActor() const;
  28. AZ::Data::Asset<Integration::ActorAsset> m_actorAsset;
  29. ActorInstance* m_actorInstance = nullptr;
  30. };
  31. } // namespace EMotionFX