// Copyright Epic Games, Inc. All Rights Reserved. #include "MuT/NodeMeshSwitch.h" #include "Misc/AssertionMacros.h" #include "MuT/NodeLayout.h" #include "MuT/NodeMeshPrivate.h" #include "MuT/NodeMeshSwitchPrivate.h" #include "MuT/NodePrivate.h" #include "MuT/NodeScalar.h" namespace mu { //--------------------------------------------------------------------------------------------- // Static initialisation //--------------------------------------------------------------------------------------------- FNodeType NodeMeshSwitch::Private::s_type = FNodeType(Node::EType::MeshSwitch, NodeMesh::GetStaticType() ); //--------------------------------------------------------------------------------------------- //! //--------------------------------------------------------------------------------------------- MUTABLE_IMPLEMENT_NODE( NodeMeshSwitch ) //--------------------------------------------------------------------------------------------- // Own Interface //--------------------------------------------------------------------------------------------- NodeScalarPtr NodeMeshSwitch::GetParameter() const { return m_pD->m_pParameter.get(); } //--------------------------------------------------------------------------------------------- void NodeMeshSwitch::SetParameter( NodeScalarPtr pNode ) { m_pD->m_pParameter = pNode; } //--------------------------------------------------------------------------------------------- void NodeMeshSwitch::SetOptionCount( int t ) { m_pD->m_options.SetNum(t); } //--------------------------------------------------------------------------------------------- NodeMeshPtr NodeMeshSwitch::GetOption( int t ) const { check( t>=0 && tm_options.Num() ); return m_pD->m_options[t].get(); } //--------------------------------------------------------------------------------------------- void NodeMeshSwitch::SetOption( int t, NodeMeshPtr pNode ) { check( t>=0 && tm_options.Num() ); m_pD->m_options[t] = pNode; } }