Incorrect directions error on custom AnimBP node

I’m trying to make a node that returns the component space of a specified bone. So far the node compiles with no problem if I only attach the pose link pins, but when I try to use the Location output pin (a vector) with a break, I get an error saying the directions aren’t compatible.

Take a look at the screenshot:

Here’s the part of my code that I think that matters (if you’d like to see other parts of my code, please ask):


void UAnimGraphNode_GetBoneLocation::CopyNodeDataToPreviewNode(FAnimNode_Base* InPreviewNode)
	FAnimNode_GetBoneLocation* inNode = static_cast<FAnimNode_GetBoneLocation*>(InPreviewNode);

	inNode->Bone = Node.Bone;

void UAnimGraphNode_GetBoneLocation::CopyPinDefaultsToNodeData(UEdGraphPin* InPin)
void UAnimGraphNode_GetBoneLocation::CreateOutputPins()

	CreatePin(EGPD_Output, UAnimationGraphSchema::PC_Struct, FComponentSpacePoseLink::StaticStruct(), TEXT("Pose"));
	CreatePin(EGPD_Output, UAnimationGraphSchema::PC_Struct, TBaseStructure<FVector>::Get(), TEXT("Location"));


	FVector Location;

If someone could explain to me what CopyNodeDataToPreviewNode and CopyPinDefaultsToNodeData do and how to use them, I’d be grateful it.
Also, I do not understand how CreatePin(EGPD_Output, UAnimationGraphSchema::PC_Struct, FComponentSpacePoseLink::StaticStruct(), TEXT("Pose")); knows that this is the pose output pin of my node, since I have no Pose pin anywhere.

There’s too little documentation about these custom AnimBP nodes. Any other information, tips, etc on the subject are appreciated.