You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
o3de/Gems/EMotionFX/Code/Tests/Mocks/AnimGraph.h

101 lines
6.4 KiB
C++

/*
* Copyright (c) Contributors to the Open 3D Engine Project.
* For complete copyright and license terms please see the LICENSE at the root of this distribution.
*
* SPDX-License-Identifier: Apache-2.0 OR MIT
*
*/
namespace EMotionFX
{
class AnimGraph
{
public:
//void RecursiveReinit();
//bool InitAfterLoading();
//void UpdateUniqueData();
MOCK_CONST_METHOD0(GetFileName, const char*());
//const AZStd::string& GetFileNameString() const;
//void SetFileName(const char* fileName);
//AnimGraphStateMachine* GetRootStateMachine() const;
//void SetRootStateMachine(AnimGraphStateMachine* stateMachine);
//AnimGraphNode* RecursiveFindNodeByName(const char* nodeName) const;
//bool IsNodeNameUnique(const AZStd::string& newNameCandidate, const AnimGraphNode* forNode) const;
MOCK_CONST_METHOD1(RecursiveFindNodeById, AnimGraphNode*(AnimGraphNodeId));
MOCK_CONST_METHOD1(RecursiveFindTransitionById, AnimGraphStateTransition*(AnimGraphConnectionId));
MOCK_CONST_METHOD2(RecursiveCollectNodesOfType, void(const AZ::TypeId& nodeType, AZStd::vector<AnimGraphNode*>* outNodes));
MOCK_CONST_METHOD2(RecursiveCollectTransitionConditionsOfType, void(const AZ::TypeId& conditionType, AZStd::vector<AnimGraphTransitionCondition*>* outConditions));
MOCK_METHOD2(RecursiveCollectObjectsOfType, void(const AZ::TypeId& objectType, AZStd::vector<AnimGraphObject*>& outObjects));
MOCK_METHOD2(RecursiveCollectObjectsAffectedBy, void(AnimGraph* animGraph, AZStd::vector<AnimGraphObject*>& outObjects));
//uint32 RecursiveCalcNumNodes() const;
//void RecursiveCalcStatistics(Statistics& outStatistics) const;
//uint32 RecursiveCalcNumNodeConnections() const;
//void DecreaseInternalAttributeIndices(size_t decreaseEverythingHigherThan);
//AZStd::string GenerateNodeName(const AZStd::unordered_set<AZStd::string>& nameReserveList, const char* prefix = "Node") const;
MOCK_CONST_METHOD0(GetNumParameters, size_t());
MOCK_CONST_METHOD0(GetNumValueParameters, size_t());
MOCK_CONST_METHOD1(FindParameter, const Parameter*(size_t index));
MOCK_CONST_METHOD1(FindValueParameter, const ValueParameter*(size_t index));
MOCK_CONST_METHOD0(RecursivelyGetGroupParameters, GroupParameterVector());
MOCK_CONST_METHOD0(RecursivelyGetValueParameters, const ValueParameterVector&());
MOCK_CONST_METHOD0(GetChildParameters, const ParameterVector&());
MOCK_CONST_METHOD0(GetChildValueParameters, ValueParameterVector());
MOCK_CONST_METHOD1(FindParameterByName, const Parameter*(const AZStd::string& paramName));
MOCK_CONST_METHOD1(FindValueParameterByName, const ValueParameter*(const AZStd::string& paramName));
MOCK_CONST_METHOD1(FindGroupParameterByName, const GroupParameter*(const AZStd::string& groupName));
MOCK_CONST_METHOD1(FindParentGroupParameter, const GroupParameter*(const Parameter* parameter));
MOCK_CONST_METHOD1(FindParameterIndexByName, AZ::Outcome<size_t>(const AZStd::string& paramName));
MOCK_CONST_METHOD1(FindValueParameterIndexByName, AZ::Outcome<size_t>(const AZStd::string& paramName));
//MOCK_CONST_METHOD1(FindParameterIndex, AZ::Outcome<size_t>(const Parameter* parameter));
MOCK_CONST_METHOD1(FindParameterIndex, AZ::Outcome<size_t>(Parameter* parameter));
MOCK_CONST_METHOD1(FindValueParameterIndex, AZ::Outcome<size_t>(const ValueParameter* parameter));
MOCK_CONST_METHOD1(FindRelativeParameterIndex, AZ::Outcome<size_t>(const Parameter* parameter));
MOCK_METHOD2(AddParameter, bool(Parameter* parameter, const GroupParameter* parent));
MOCK_METHOD3(InsertParameter, bool(size_t index, Parameter* parameter, const GroupParameter* parent));
MOCK_METHOD2(RenameParameter, bool(Parameter* parameter, const AZStd::string& newName));
MOCK_METHOD1(RemoveParameter, bool(Parameter* parameter));
MOCK_METHOD1(TakeParameterFromParent, bool(const Parameter* parameter));
MOCK_CONST_METHOD0(GetID, uint32());
MOCK_METHOD1(SetID, void(uint32 id));
MOCK_METHOD1(SetDirtyFlag, void(bool dirty));
MOCK_CONST_METHOD0(GetDirtyFlag, bool());
//void SetAutoUnregister(bool enabled);
//bool GetAutoUnregister() const;
//void SetIsOwnedByRuntime(bool isOwnedByRuntime);
//bool GetIsOwnedByRuntime() const;
//void SetIsOwnedByAsset(bool isOwnedByAsset);
//bool GetIsOwnedByAsset() const;
//uint32 GetNumNodeGroups() const;
//AnimGraphNodeGroup* GetNodeGroup(uint32 index) const;
//AnimGraphNodeGroup* FindNodeGroupByName(const char* groupName) const;
//uint32 FindNodeGroupIndexByName(const char* groupName) const;
//void AddNodeGroup(AnimGraphNodeGroup* nodeGroup);
//void RemoveNodeGroup(uint32 index, bool delFromMem = true);
//void RemoveAllNodeGroups(bool delFromMem = true);
//AnimGraphNodeGroup* FindNodeGroupForNode(AnimGraphNode* animGraphNode) const;
//void FindAndRemoveCycles(AZStd::string* outRemovedConnectionsMessage = nullptr);
//AnimGraphGameControllerSettings& GetGameControllerSettings();
//bool GetRetargetingEnabled() const;
//void SetRetargetingEnabled(bool enabled);
//void RemoveAllObjectData(AnimGraphObject* object, bool delFromMem);
//void AddObject(AnimGraphObject* object);
//void RemoveObject(AnimGraphObject* object);
//uint32 GetNumObjects() const;
//AnimGraphObject* GetObject(uint32 index) const;
//void ReserveNumObjects(uint32 numObjects);
//uint32 GetNumNodes() const;
//AnimGraphNode* GetNode(uint32 index) const;
//void ReserveNumNodes(uint32 numNodes);
//uint32 CalcNumMotionNodes() const;
MOCK_CONST_METHOD0(GetNumAnimGraphInstances, size_t());
MOCK_CONST_METHOD1(GetAnimGraphInstance, AnimGraphInstance*(size_t index));
MOCK_METHOD1(ReserveNumAnimGraphInstances, void(size_t numInstances));
MOCK_METHOD1(AddAnimGraphInstance, void(AnimGraphInstance* animGraphInstance));
MOCK_METHOD1(RemoveAnimGraphInstance, void(AnimGraphInstance* animGraphInstance));
//void Lock();
//void Unlock();
//bool SaveToFile(const AZStd::string& filename, AZ::SerializeContext* context) const;
//void RemoveInvalidConnections(bool logWarnings=false);
};
} // namespace EMotionFX