Blender V4.5
node_geo_common.cc
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2023 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
5#include "BKE_node.hh"
6
7#include "NOD_geometry.hh"
8
9#include "NOD_common.hh"
10#include "node_common.h"
11#include "node_geometry_util.hh"
12
13#include "RNA_access.hh"
14
15namespace blender::nodes {
16
40
41} // namespace blender::nodes
42
44{
45 /* These methods can be overridden but need a default implementation otherwise. */
46 if (ntype->poll == nullptr) {
48 }
49 if (ntype->insert_link == nullptr) {
51 }
53}
constexpr int GROUP_NODE_MIN_WIDTH
Definition BKE_node.hh:1228
constexpr int GROUP_NODE_DEFAULT_WIDTH
Definition BKE_node.hh:1226
constexpr int GROUP_NODE_MAX_WIDTH
Definition BKE_node.hh:1227
#define NODE_GROUP
Definition BKE_node.hh:796
#define NODE_CLASS_GROUP
Definition BKE_node.hh:438
#define BLI_assert(a)
Definition BLI_assert.h:46
#define NOD_REGISTER_NODE(REGISTER_FUNC)
void node_type_size(bNodeType &ntype, int width, int minwidth, int maxwidth)
Definition node.cc:5573
void node_register_type(bNodeType &ntype)
Definition node.cc:2748
void node_type_base_custom(bNodeType &ntype, StringRefNull idname, StringRefNull name, StringRefNull enum_name, short nclass)
Definition node.cc:5340
static void register_node_type_geo_group()
void node_group_declare(NodeDeclarationBuilder &b)
int node_group_ui_class(const bNode *node)
void node_group_label(const bNodeTree *, const bNode *node, char *label, int label_maxncpy)
bool node_group_poll_instance(const bNode *node, const bNodeTree *nodetree, const char **r_disabled_hint)
std::string node_group_ui_description(const bNode &node)
void register_node_type_geo_custom_group(blender::bke::bNodeType *ntype)
bool geo_node_poll_default(const blender::bke::bNodeType *, const bNodeTree *ntree, const char **r_disabled_hint)
bool node_insert_link_default(bNodeTree *, bNode *, bNodeLink *)
Definition node_util.cc:279
StructRNA * RNA_struct_find(const char *identifier)
void RNA_struct_blender_type_set(StructRNA *srna, void *blender_type)
StructRNA * srna
Definition RNA_types.hh:909
Defines a node type.
Definition BKE_node.hh:226
int(* ui_class)(const bNode *node)
Definition BKE_node.hh:264
bool(* poll_instance)(const bNode *node, const bNodeTree *nodetree, const char **r_disabled_hint)
Definition BKE_node.hh:316
void(* labelfunc)(const bNodeTree *ntree, const bNode *node, char *label, int label_maxncpy)
Definition BKE_node.hh:258
std::string(* ui_description_fn)(const bNode &node)
Definition BKE_node.hh:266
const char * enum_name_legacy
Definition BKE_node.hh:235
bool(* poll)(const bNodeType *ntype, const bNodeTree *nodetree, const char **r_disabled_hint)
Definition BKE_node.hh:309
bool(* insert_link)(bNodeTree *ntree, bNode *node, bNodeLink *link)
Definition BKE_node.hh:321
NodeDeclareFunction declare
Definition BKE_node.hh:355