From baaf10cb264e530549dca7de2d77142092daa40d Mon Sep 17 00:00:00 2001 From: Sergey Sharybin Date: Tue, 15 Dec 2015 20:04:00 +0500 Subject: Cycles: De-duplicate utility functions in ccl::Graph --- intern/cycles/render/graph.cpp | 31 ++++--------------------------- intern/cycles/render/graph.h | 3 --- intern/cycles/render/nodes.cpp | 12 ++++++------ 3 files changed, 10 insertions(+), 36 deletions(-) (limited to 'intern/cycles') diff --git a/intern/cycles/render/graph.cpp b/intern/cycles/render/graph.cpp index def43876ada..e177cd54c9e 100644 --- a/intern/cycles/render/graph.cpp +++ b/intern/cycles/render/graph.cpp @@ -96,10 +96,11 @@ ShaderNode::~ShaderNode() ShaderInput *ShaderNode::input(const char *name) { - foreach(ShaderInput *socket, inputs) + foreach(ShaderInput *socket, inputs) { if(strcmp(socket->name, name) == 0) return socket; - + } + assert(!"Requested shader input does not exist"); return NULL; } @@ -108,7 +109,7 @@ ShaderOutput *ShaderNode::output(const char *name) foreach(ShaderOutput *socket, outputs) if(strcmp(socket->name, name) == 0) return socket; - + assert(!"Requested shader output does not exist"); return NULL; } @@ -145,30 +146,6 @@ ShaderOutput *ShaderNode::add_output(const char *name, ShaderSocketType type) return output; } -ShaderInput *ShaderNode::get_input(const char *name) -{ - foreach(ShaderInput *input, inputs) { - if(strcmp(input->name, name) == 0) - return input; - } - - /* Should never happen. */ - assert(!"No Shader Input!"); - return NULL; -} - -ShaderOutput *ShaderNode::get_output(const char *name) -{ - foreach(ShaderOutput *output, outputs) { - if(strcmp(output->name, name) == 0) - return output; - } - - /* Should never happen. */ - assert(!"No Shader Output!"); - return NULL; -} - void ShaderNode::attributes(Shader *shader, AttributeRequestSet *attributes) { foreach(ShaderInput *input, inputs) { diff --git a/intern/cycles/render/graph.h b/intern/cycles/render/graph.h index 420648f6425..2f852d6b889 100644 --- a/intern/cycles/render/graph.h +++ b/intern/cycles/render/graph.h @@ -190,9 +190,6 @@ public: ShaderInput *add_input(const char *name, ShaderSocketType type, ShaderInput::DefaultValue value, int usage=ShaderInput::USE_ALL); ShaderOutput *add_output(const char *name, ShaderSocketType type); - ShaderInput *get_input(const char *name); - ShaderOutput *get_output(const char *name); - virtual ShaderNode *clone() const = 0; virtual void attributes(Shader *shader, AttributeRequestSet *attributes); virtual void compile(SVMCompiler& compiler) = 0; diff --git a/intern/cycles/render/nodes.cpp b/intern/cycles/render/nodes.cpp index 22eb3f239e6..2771d35990e 100644 --- a/intern/cycles/render/nodes.cpp +++ b/intern/cycles/render/nodes.cpp @@ -1891,7 +1891,7 @@ void GlossyBsdfNode::simplify_settings(Scene *scene) /* Fallback to Sharp closure for Roughness close to 0. * Note: Keep the epsilon in sync with kernel! */ - ShaderInput *roughness_input = get_input("Roughness"); + ShaderInput *roughness_input = input("Roughness"); if(!roughness_input->link && roughness_input->value.x <= 1e-4f) { distribution = ustring("Sharp"); } @@ -1905,7 +1905,7 @@ void GlossyBsdfNode::simplify_settings(Scene *scene) bool GlossyBsdfNode::has_integrator_dependency() { - ShaderInput *roughness_input = get_input("Roughness"); + ShaderInput *roughness_input = input("Roughness"); return !roughness_input->link && roughness_input->value.x <= 1e-4f; } @@ -1960,7 +1960,7 @@ void GlassBsdfNode::simplify_settings(Scene *scene) /* Fallback to Sharp closure for Roughness close to 0. * Note: Keep the epsilon in sync with kernel! */ - ShaderInput *roughness_input = get_input("Roughness"); + ShaderInput *roughness_input = input("Roughness"); if(!roughness_input->link && roughness_input->value.x <= 1e-4f) { distribution = ustring("Sharp"); } @@ -1974,7 +1974,7 @@ void GlassBsdfNode::simplify_settings(Scene *scene) bool GlassBsdfNode::has_integrator_dependency() { - ShaderInput *roughness_input = get_input("Roughness"); + ShaderInput *roughness_input = input("Roughness"); return !roughness_input->link && roughness_input->value.x <= 1e-4f; } @@ -2029,7 +2029,7 @@ void RefractionBsdfNode::simplify_settings(Scene *scene) /* Fallback to Sharp closure for Roughness close to 0. * Note: Keep the epsilon in sync with kernel! */ - ShaderInput *roughness_input = get_input("Roughness"); + ShaderInput *roughness_input = input("Roughness"); if(!roughness_input->link && roughness_input->value.x <= 1e-4f) { distribution = ustring("Sharp"); } @@ -2043,7 +2043,7 @@ void RefractionBsdfNode::simplify_settings(Scene *scene) bool RefractionBsdfNode::has_integrator_dependency() { - ShaderInput *roughness_input = get_input("Roughness"); + ShaderInput *roughness_input = input("Roughness"); return !roughness_input->link && roughness_input->value.x <= 1e-4f; } -- cgit v1.2.3