Blender
V4.3
source
blender
depsgraph
intern
node
deg_node_factory.cc
Go to the documentation of this file.
1
/* SPDX-FileCopyrightText: 2019 Blender Authors
2
*
3
* SPDX-License-Identifier: GPL-2.0-or-later */
4
9
#include "
intern/node/deg_node_factory.hh
"
10
11
namespace
blender::deg
{
12
13
/* Global type registry */
14
static
DepsNodeFactory
*
node_typeinfo_registry
[
int
(
NodeType::NUM_TYPES
)] = {
nullptr
};
15
16
void
register_node_typeinfo
(
DepsNodeFactory
*factory)
17
{
18
BLI_assert
(factory !=
nullptr
);
19
const
int
type_as_int =
int
(factory->
type
());
20
node_typeinfo_registry
[type_as_int] = factory;
21
}
22
23
DepsNodeFactory
*
type_get_factory
(
const
NodeType
type)
24
{
25
/* Look up type - at worst, it doesn't exist in table yet, and we fail. */
26
const
int
type_as_int =
int
(type);
27
return
node_typeinfo_registry
[type_as_int];
28
}
29
30
}
// namespace blender::deg
BLI_assert
#define BLI_assert(a)
Definition
BLI_assert.h:50
deg_node_factory.hh
int
draw_view push_constant(Type::INT, "radiance_src") .push_constant(Type capture_info_buf storage_buf(1, Qualifier::READ, "ObjectBounds", "bounds_buf[]") .push_constant(Type draw_view int
Definition
eevee_lightprobe_volume_info.hh:143
blender::deg
Definition
DEG_depsgraph_light_linking.hh:18
blender::deg::register_node_typeinfo
void register_node_typeinfo(DepsNodeFactory *factory)
Definition
deg_node_factory.cc:16
blender::deg::NodeType::NUM_TYPES
@ NUM_TYPES
blender::deg::type_get_factory
DepsNodeFactory * type_get_factory(const NodeType type)
Definition
deg_node_factory.cc:23
blender::deg::node_typeinfo_registry
static DepsNodeFactory * node_typeinfo_registry[int(NodeType::NUM_TYPES)]
Definition
deg_node_factory.cc:14
NodeType
Definition
node_type.h:100
blender::deg::DepsNodeFactory
Definition
deg_node_factory.hh:19
blender::deg::DepsNodeFactory::type
virtual NodeType type() const =0
Generated on Thu Feb 6 2025 07:36:39 for Blender by
doxygen
1.11.0