Files
UnrealEngineUWP/Engine/Source/Runtime/AnimationCore/Private/AnimationDataSource.cpp
ryan durand 0f0464a30e Updating copyright for Engine Runtime.
#rnx
#rb none


#ROBOMERGE-OWNER: ryan.durand
#ROBOMERGE-AUTHOR: ryan.durand
#ROBOMERGE-SOURCE: CL 10869210 via CL 10869511 via CL 10869900
#ROBOMERGE-BOT: (v613-10869866)

[CL 10870549 by ryan durand in Main branch]
2019-12-26 14:45:42 -05:00

41 lines
899 B
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#include "AnimationDataSource.h"
bool UAnimationDataSourceRegistry::RegisterDataSource(const FName& InName, UObject* InDataSource)
{
if (DataSources.Contains(InName))
{
return false;
}
DataSources.Add(InName, InDataSource);
return true;
}
bool UAnimationDataSourceRegistry::UnregisterDataSource(const FName& InName)
{
return DataSources.Remove(InName) > 0;
}
bool UAnimationDataSourceRegistry::ContainsSource(const FName& InName) const
{
return DataSources.Contains(InName);
}
UObject* UAnimationDataSourceRegistry::RequestSource(const FName& InName, UClass* InExpectedClass) const
{
UObject* const* DataSource = DataSources.Find(InName);
if (DataSource == nullptr)
{
return nullptr;
}
if (*DataSource == nullptr)
{
return nullptr;
}
if (!(*DataSource)->IsA(InExpectedClass))
{
return nullptr;
}
return *DataSource;
}