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

#pragma once

#include "ISCW_UK2Node_StructMemberGet.h"
#include "SCW_UK2Node_StructOperation.h"

class UK2Node_StructMemberGet;

namespace Sourcify
{
	class SCW_UK2Node_StructMemberGet : public SCW_UK2Node_StructOperation, public virtual ISCW_UK2Node_StructMemberGet
	{
	public:
		SCW_UK2Node_StructMemberGet(UK2Node_StructMemberGet* InK2Node_StructMemberGet);

		vector<shared_ptr<ISCW_FOptionalPinFromProperty>> GetShowPinForProperties() override;

		void SetShowPinForProperties(const vector<shared_ptr<ISCW_FOptionalPinFromProperty>>& InShowPinForProperties) override;

		UK2Node_StructMemberGet* ToUK2Node_StructMemberGet() const;

		ISCW_UK2Node_StructMemberGetPtr ToUK2Node_StructMemberGetPtr() override;
		ISCW_UK2Node_StructMemberGetConstPtr ToUK2Node_StructMemberGetPtr() const override;

	protected:
		UK2Node_StructMemberGet* K2Node_StructMemberGet;
	};
} // namespace Sourcify