diff options
author | Nathan Letwory <nathan@letworyinteractive.com> | 2007-04-04 17:58:12 +0400 |
---|---|---|
committer | Nathan Letwory <nathan@letworyinteractive.com> | 2007-04-04 17:58:12 +0400 |
commit | fb0f61c0b09aedaf536369becdc9e9e77609275f (patch) | |
tree | e48cfe75de05619b5de5cc5c04ffaec7597629e4 /source/blender/nodes/intern/SHD_nodes | |
parent | afdd54fa3720c267f30e48ed45c449d80449bac0 (diff) |
=== Node editor ===
* refactor copying and freeing of node->storage by handlerizing them.
- freestoragefunc
- copystoragefunc
- node_util.c/h have generic handlers for these.
Diffstat (limited to 'source/blender/nodes/intern/SHD_nodes')
15 files changed, 108 insertions, 57 deletions
diff --git a/source/blender/nodes/intern/SHD_nodes/SHD_camera.c b/source/blender/nodes/intern/SHD_nodes/SHD_camera.c index 9c7cab47cb6..63260ff91ed 100644 --- a/source/blender/nodes/intern/SHD_nodes/SHD_camera.c +++ b/source/blender/nodes/intern/SHD_nodes/SHD_camera.c @@ -59,7 +59,10 @@ bNodeType sh_node_camera= { /* output sock */ sh_node_camera_out, /* storage */ "node_camera", /* execfunc */ node_shader_exec_camera, - /* butfunc */ NULL, - /* initfunc */ NULL + /* butfunc */ NULL, + /* initfunc */ NULL, + /* freestoragefunc */ NULL, + /* copystoragefunc */ NULL, + /* id */ NULL }; diff --git a/source/blender/nodes/intern/SHD_nodes/SHD_curves.c b/source/blender/nodes/intern/SHD_nodes/SHD_curves.c index ec2af791001..b6f1f8d52cd 100644 --- a/source/blender/nodes/intern/SHD_nodes/SHD_curves.c +++ b/source/blender/nodes/intern/SHD_nodes/SHD_curves.c @@ -66,8 +66,11 @@ bNodeType sh_node_curve_vec= { /* output sock */ sh_node_curve_vec_out, /* storage */ "CurveMapping", /* execfunc */ node_shader_exec_curve_vec, - /* butfunc */ NULL, - /* initfunc */ node_shader_init_curve_vec + /* butfunc */ NULL, + /* initfunc */ node_shader_init_curve_vec, + /* freestoragefunc */ node_free_curves, + /* copystoragefunc */ node_copy_curves, + /* id */ NULL }; @@ -108,6 +111,9 @@ bNodeType sh_node_curve_rgb= { /* storage */ "CurveMapping", /* execfunc */ node_shader_exec_curve_rgb, /* butfunc */ NULL, - /* initfunc */ node_shader_init_curve_rgb + /* initfunc */ node_shader_init_curve_rgb, + /* freestoragefunc */ node_free_curves, + /* copystoragefunc */ node_copy_curves, + /* id */ NULL }; diff --git a/source/blender/nodes/intern/SHD_nodes/SHD_geom.c b/source/blender/nodes/intern/SHD_nodes/SHD_geom.c index 584ceb0dbbd..3875dead2b0 100644 --- a/source/blender/nodes/intern/SHD_nodes/SHD_geom.c +++ b/source/blender/nodes/intern/SHD_nodes/SHD_geom.c @@ -124,7 +124,10 @@ bNodeType sh_node_geom= { /* output sock */ sh_node_geom_out, /* storage */ "NodeGeometry", /* execfunc */ node_shader_exec_geom, - /* butfunc */ NULL, - /* initfunc */ node_shader_init_geometry + /* butfunc */ NULL, + /* initfunc */ node_shader_init_geometry, + /* freestoragefunc */ node_free_standard_storage, + /* copystoragefunc */ node_copy_standard_storage, + /* id */ NULL }; diff --git a/source/blender/nodes/intern/SHD_nodes/SHD_mapping.c b/source/blender/nodes/intern/SHD_nodes/SHD_mapping.c index a22159dcf16..589954c8f7b 100644 --- a/source/blender/nodes/intern/SHD_nodes/SHD_mapping.c +++ b/source/blender/nodes/intern/SHD_nodes/SHD_mapping.c @@ -79,8 +79,11 @@ bNodeType sh_node_mapping= { /* output sock */ sh_node_mapping_out, /* storage */ "TexMapping", /* execfunc */ node_shader_exec_mapping, - /* butfunc */ NULL, - /* initfunc */ node_shader_init_mapping + /* butfunc */ NULL, + /* initfunc */ node_shader_init_mapping, + /* freestoragefunc */ node_free_standard_storage, + /* copystoragefunc */ node_copy_standard_storage, + /* id */ NULL }; diff --git a/source/blender/nodes/intern/SHD_nodes/SHD_material.c b/source/blender/nodes/intern/SHD_nodes/SHD_material.c index 30452ca36cb..1dc18f97496 100644 --- a/source/blender/nodes/intern/SHD_nodes/SHD_material.c +++ b/source/blender/nodes/intern/SHD_nodes/SHD_material.c @@ -145,8 +145,11 @@ bNodeType sh_node_material= { /* output sock */ sh_node_material_out, /* storage */ "", /* execfunc */ node_shader_exec_material, - /* butfunc */ NULL, - /* initfunc */ node_shader_init_material + /* butfunc */ NULL, + /* initfunc */ node_shader_init_material, + /* freestoragefunc */ NULL, + /* copystoragefunc */ NULL, + /* id */ NULL }; diff --git a/source/blender/nodes/intern/SHD_nodes/SHD_math.c b/source/blender/nodes/intern/SHD_nodes/SHD_math.c index bd2fdb457c0..95162e508d5 100644 --- a/source/blender/nodes/intern/SHD_nodes/SHD_math.c +++ b/source/blender/nodes/intern/SHD_nodes/SHD_math.c @@ -180,15 +180,18 @@ bNodeStack **out) bNodeType sh_node_math= { /* *next,*prev */ NULL, NULL, - /* type code */ SH_NODE_MATH, - /* name */ "Math", - /* width+range */ 120, 110, 160, - /* class+opts */ NODE_CLASS_CONVERTOR, NODE_OPTIONS, - /* input sock */ sh_node_math_in, - /* output sock */ sh_node_math_out, - /* storage */ "node_math", - /* execfunc */ node_shader_exec_math, - /* butfunc */ NULL, - /* initfunc */ NULL + /* type code */ SH_NODE_MATH, + /* name */ "Math", + /* width+range */ 120, 110, 160, + /* class+opts */ NODE_CLASS_CONVERTOR, NODE_OPTIONS, + /* input sock */ sh_node_math_in, + /* output sock */ sh_node_math_out, + /* storage */ "node_math", + /* execfunc */ node_shader_exec_math, + /* butfunc */ NULL, + /* initfunc */ NULL, + /* freestoragefunc */ NULL, + /* copystoragefunc */ NULL, + /* id */ NULL }; diff --git a/source/blender/nodes/intern/SHD_nodes/SHD_mixRgb.c b/source/blender/nodes/intern/SHD_nodes/SHD_mixRgb.c index fb0bf91a508..dba70253fda 100644 --- a/source/blender/nodes/intern/SHD_nodes/SHD_mixRgb.c +++ b/source/blender/nodes/intern/SHD_nodes/SHD_mixRgb.c @@ -70,7 +70,10 @@ bNodeType sh_node_mix_rgb= { /* output sock */ sh_node_mix_rgb_out, /* storage */ "", /* execfunc */ node_shader_exec_mix_rgb, - /* butfunc */ NULL, - /* initfunc */ NULL + /* butfunc */ NULL, + /* initfunc */ NULL, + /* freestoragefunc */ NULL, + /* copystoragefunc */ NULL, + /* id */ NULL }; diff --git a/source/blender/nodes/intern/SHD_nodes/SHD_normal.c b/source/blender/nodes/intern/SHD_nodes/SHD_normal.c index ac9d1707543..f1ffd3446af 100644 --- a/source/blender/nodes/intern/SHD_nodes/SHD_normal.c +++ b/source/blender/nodes/intern/SHD_nodes/SHD_normal.c @@ -67,7 +67,10 @@ bNodeType sh_node_normal= { /* output sock */ sh_node_normal_out, /* storage */ "", /* execfunc */ node_shader_exec_normal, - /* butfunc */ NULL, - /* initfunc */ NULL + /* butfunc */ NULL, + /* initfunc */ NULL, + /* freestoragefunc */ NULL, + /* copystoragefunc */ NULL, + /* id */ NULL }; diff --git a/source/blender/nodes/intern/SHD_nodes/SHD_output.c b/source/blender/nodes/intern/SHD_nodes/SHD_output.c index 4ed507f4774..0a9a30c452b 100644 --- a/source/blender/nodes/intern/SHD_nodes/SHD_output.c +++ b/source/blender/nodes/intern/SHD_nodes/SHD_output.c @@ -72,8 +72,11 @@ bNodeType sh_node_output= { /* output sock */ NULL, /* storage */ "", /* execfunc */ node_shader_exec_output, - /* butfunc */ NULL, - /* initfunc */ NULL + /* butfunc */ NULL, + /* initfunc */ NULL, + /* freestoragefunc */ NULL, + /* copystoragefunc */ NULL, + /* id */ NULL }; diff --git a/source/blender/nodes/intern/SHD_nodes/SHD_rgb.c b/source/blender/nodes/intern/SHD_nodes/SHD_rgb.c index d1c874c151b..4e56e26d3ad 100644 --- a/source/blender/nodes/intern/SHD_nodes/SHD_rgb.c +++ b/source/blender/nodes/intern/SHD_nodes/SHD_rgb.c @@ -52,7 +52,10 @@ bNodeType sh_node_rgb= { /* output sock */ sh_node_rgb_out, /* storage */ "", /* execfunc */ node_shader_exec_rgb, - /* butfunc */ NULL, - /* initfunc */ NULL + /* butfunc */ NULL, + /* initfunc */ NULL, + /* freestoragefunc */ NULL, + /* copystoragefunc */ NULL, + /* id */ NULL }; diff --git a/source/blender/nodes/intern/SHD_nodes/SHD_squeeze.c b/source/blender/nodes/intern/SHD_nodes/SHD_squeeze.c index f0031113b94..30abad666c4 100644 --- a/source/blender/nodes/intern/SHD_nodes/SHD_squeeze.c +++ b/source/blender/nodes/intern/SHD_nodes/SHD_squeeze.c @@ -56,15 +56,18 @@ bNodeStack **out) bNodeType sh_node_squeeze= { /* *next,*prev */ NULL, NULL, - /* type code */ SH_NODE_SQUEEZE, - /* name */ "Squeeze Value", - /* width+range */ 120, 110, 160, - /* class+opts */ NODE_CLASS_CONVERTOR, NODE_OPTIONS, - /* input sock */ sh_node_squeeze_in, - /* output sock */ sh_node_squeeze_out, - /* storage */ "node_squeeze", - /* execfunc */ node_shader_exec_squeeze, - /* butfunc */ NULL, - /* initfunc */ NULL + /* type code */ SH_NODE_SQUEEZE, + /* name */ "Squeeze Value", + /* width+range */ 120, 110, 160, + /* class+opts */ NODE_CLASS_CONVERTOR, NODE_OPTIONS, + /* input sock */ sh_node_squeeze_in, + /* output sock */ sh_node_squeeze_out, + /* storage */ "node_squeeze", + /* execfunc */ node_shader_exec_squeeze, + /* butfunc */ NULL, + /* initfunc */ NULL, + /* freestoragefunc */ NULL, + /* copystoragefunc */ NULL, + /* id */ NULL }; diff --git a/source/blender/nodes/intern/SHD_nodes/SHD_texture.c b/source/blender/nodes/intern/SHD_nodes/SHD_texture.c index 8ba66d56b3c..ace11a20d42 100644 --- a/source/blender/nodes/intern/SHD_nodes/SHD_texture.c +++ b/source/blender/nodes/intern/SHD_nodes/SHD_texture.c @@ -120,8 +120,11 @@ bNodeType sh_node_texture= { /* output sock */ sh_node_texture_out, /* storage */ "", /* execfunc */ node_shader_exec_texture, - /* butfunc */ NULL, - /* initfunc */ NULL + /* butfunc */ NULL, + /* initfunc */ NULL, + /* freestoragefunc */ NULL, + /* copystoragefunc */ NULL, + /* id */ NULL }; diff --git a/source/blender/nodes/intern/SHD_nodes/SHD_valToRgb.c b/source/blender/nodes/intern/SHD_nodes/SHD_valToRgb.c index 90e8cb28fac..cf7e33d9dca 100644 --- a/source/blender/nodes/intern/SHD_nodes/SHD_valToRgb.c +++ b/source/blender/nodes/intern/SHD_nodes/SHD_valToRgb.c @@ -69,8 +69,11 @@ bNodeType sh_node_valtorgb= { /* output sock */ sh_node_valtorgb_out, /* storage */ "ColorBand", /* execfunc */ node_shader_exec_valtorgb, - /* butfunc */ NULL, - /* initfunc */ node_shader_init_valtorgb + /* butfunc */ NULL, + /* initfunc */ node_shader_init_valtorgb, + /* freestoragefunc */ node_free_standard_storage, + /* copystoragefunc */ node_copy_standard_storage, + /* id */ NULL }; @@ -95,16 +98,19 @@ static void node_shader_exec_rgbtobw(void *data, bNode *node, bNodeStack **in, b bNodeType sh_node_rgbtobw= { /* *next,*prev */ NULL, NULL, - /* type code */ SH_NODE_RGBTOBW, - /* name */ "RGB to BW", - /* width+range */ 80, 40, 120, - /* class+opts */ NODE_CLASS_CONVERTOR, 0, - /* input sock */ sh_node_rgbtobw_in, - /* output sock */ sh_node_rgbtobw_out, - /* storage */ "", - /* execfunc */ node_shader_exec_rgbtobw, - /* butfunc */ NULL, - /* initfunc */ NULL + /* type code */ SH_NODE_RGBTOBW, + /* name */ "RGB to BW", + /* width+range */ 80, 40, 120, + /* class+opts */ NODE_CLASS_CONVERTOR, 0, + /* input sock */ sh_node_rgbtobw_in, + /* output sock */ sh_node_rgbtobw_out, + /* storage */ "", + /* execfunc */ node_shader_exec_rgbtobw, + /* butfunc */ NULL, + /* initfunc */ NULL, + /* freestoragefunc */ NULL, + /* copystoragefunc */ NULL, + /* id */ NULL }; diff --git a/source/blender/nodes/intern/SHD_nodes/SHD_value.c b/source/blender/nodes/intern/SHD_nodes/SHD_value.c index 9d6f6a34473..57ef7226066 100644 --- a/source/blender/nodes/intern/SHD_nodes/SHD_value.c +++ b/source/blender/nodes/intern/SHD_nodes/SHD_value.c @@ -54,8 +54,11 @@ bNodeType sh_node_value= { /* output sock */ sh_node_value_out, /* storage */ "", /* execfunc */ node_shader_exec_value, - /* butfunc */ NULL, - /* initfunc */ NULL + /* butfunc */ NULL, + /* initfunc */ NULL, + /* freestoragefunc */ NULL, + /* copystoragefunc */ NULL, + /* id */ NULL }; diff --git a/source/blender/nodes/intern/SHD_nodes/SHD_vectMath.c b/source/blender/nodes/intern/SHD_nodes/SHD_vectMath.c index 22da16b9620..8d0a4b3abe3 100644 --- a/source/blender/nodes/intern/SHD_nodes/SHD_vectMath.c +++ b/source/blender/nodes/intern/SHD_nodes/SHD_vectMath.c @@ -109,7 +109,10 @@ bNodeType sh_node_vect_math= { /* output sock */ sh_node_vect_math_out, /* storage */ "node_vect_math", /* execfunc */ node_shader_exec_vect_math, - /* butfunc */ NULL, - /* initfunc */ NULL + /* butfunc */ NULL, + /* initfunc */ NULL, + /* freestoragefunc */ NULL, + /* copystoragefunc */ NULL, + /* id */ NULL }; |