Merge branch 'blender-v2.81-release'
[blender.git] / source / blender / nodes / composite / nodes / node_composite_mapValue.c
1 /*
2  * This program is free software; you can redistribute it and/or
3  * modify it under the terms of the GNU General Public License
4  * as published by the Free Software Foundation; either version 2
5  * of the License, or (at your option) any later version.
6  *
7  * This program is distributed in the hope that it will be useful,
8  * but WITHOUT ANY WARRANTY; without even the implied warranty of
9  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
10  * GNU General Public License for more details.
11  *
12  * You should have received a copy of the GNU General Public License
13  * along with this program; if not, write to the Free Software Foundation,
14  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
15  *
16  * The Original Code is Copyright (C) 2006 Blender Foundation.
17  * All rights reserved.
18  */
19
20 /** \file
21  * \ingroup cmpnodes
22  */
23
24 #include "node_composite_util.h"
25
26 /* **************** MAP VALUE ******************** */
27 static bNodeSocketTemplate cmp_node_map_value_in[] = {
28     {SOCK_FLOAT, 1, N_("Value"), 1.0f, 1.0f, 1.0f, 1.0f, 0.0f, 1.0f, PROP_NONE},
29     {-1, 0, ""},
30 };
31 static bNodeSocketTemplate cmp_node_map_value_out[] = {
32     {SOCK_FLOAT, 0, N_("Value")},
33     {-1, 0, ""},
34 };
35
36 static void node_composit_init_map_value(bNodeTree *UNUSED(ntree), bNode *node)
37 {
38   node->storage = BKE_texture_mapping_add(TEXMAP_TYPE_POINT);
39 }
40
41 void register_node_type_cmp_map_value(void)
42 {
43   static bNodeType ntype;
44
45   cmp_node_type_base(&ntype, CMP_NODE_MAP_VALUE, "Map Value", NODE_CLASS_OP_VECTOR, 0);
46   node_type_socket_templates(&ntype, cmp_node_map_value_in, cmp_node_map_value_out);
47   node_type_init(&ntype, node_composit_init_map_value);
48   node_type_storage(&ntype, "TexMapping", node_free_standard_storage, node_copy_standard_storage);
49
50   nodeRegisterType(&ntype);
51 }