// Copyright (c) 2024 Codemongous LLC. All Rights Reserved.

#include "SCW_UK2Node_BaseMCDelegate.h"
#include "SourcifyCoreUEWrapperModule.h"

using namespace Sourcify;

SCW_UK2Node_BaseMCDelegate::SCW_UK2Node_BaseMCDelegate(UK2Node_BaseMCDelegate* InK2Node_BaseMCDelegate) : SCW_UK2Node(InK2Node_BaseMCDelegate), K2Node_BaseMCDelegate(InK2Node_BaseMCDelegate)
{

}

ISCW_FMemberReferencePtr SCW_UK2Node_BaseMCDelegate::GetDelegateReference() const
{
	return FSourcifyCoreUEWrapper::Get().Wrap(K2Node_BaseMCDelegate->DelegateReference);
}

ISCW_UEdGraphPinPtr SCW_UK2Node_BaseMCDelegate::GetDelegatePin() const
{
	return FSourcifyCoreUEWrapper::Get().Wrap(*K2Node_BaseMCDelegate->GetDelegatePin());
}

ISCW_UFunctionPtr SCW_UK2Node_BaseMCDelegate::GetDelegateSignature() const 
{
	return FSourcifyCoreUEWrapper::Get().Wrap(*K2Node_BaseMCDelegate->GetDelegateSignature());
}
	
ISCW_FPropertyPtr SCW_UK2Node_BaseMCDelegate::GetProperty() const
{
	return FSourcifyCoreUEWrapper::Get().Wrap(*K2Node_BaseMCDelegate->GetProperty());
}

UK2Node_BaseMCDelegate* SCW_UK2Node_BaseMCDelegate::ToUK2Node_BaseMCDelegate() const
{
	return K2Node_BaseMCDelegate;
}
