Files
oak-editor/app/node/block/transition/externaltransition.cpp
T
itsmattkc 7100d00060 nodes: made changes to the node system to allow for context sensitive shader code
Primarily implemented for the math node so a new shader can be generated and
compiled based on what inputs the node is receiving.
2020-03-29 03:11:30 +11:00

65 lines
1.2 KiB
C++

#include "externaltransition.h"
ExternalTransition::ExternalTransition(const QString &xml_meta_filename) :
meta_(xml_meta_filename)
{
foreach (NodeInput* input, meta_.inputs()) {
AddInput(input);
}
}
Node *ExternalTransition::copy() const
{
return new ExternalTransition(meta_.filename());
}
QString ExternalTransition::Name() const
{
return meta_.Name();
}
QString ExternalTransition::id() const
{
return meta_.id();
}
QString ExternalTransition::Category() const
{
return meta_.Category();
}
QString ExternalTransition::Description() const
{
return meta_.Description();
}
void ExternalTransition::Retranslate()
{
meta_.Retranslate();
}
Node::Capabilities ExternalTransition::GetCapabilities(const NodeValueDatabase &) const
{
return kShader;
}
QString ExternalTransition::ShaderVertexCode(const NodeValueDatabase &) const
{
return meta_.vert_code();
}
QString ExternalTransition::ShaderFragmentCode(const NodeValueDatabase&) const
{
return meta_.frag_code();
}
int ExternalTransition::ShaderIterations() const
{
return meta_.iterations();
}
NodeInput *ExternalTransition::ShaderIterativeInput() const
{
return meta_.iteration_input();
}