78 sockets_by_dsocket_.
add(dsocket, &socket);
83 sockets_by_dsocket_.
add(dsocket, &socket);
90 sockets_by_dsocket_.
add(dsocket, &socket);
143 int used_sockets = 0;
144 for (
const SocketRef *dsocket : dsockets) {
145 if (!dsocket->is_available()) {
159 return sockets_by_dsocket_.
lookup(dsocket)[0]->as_output();
185 return !sockets_by_dsocket_.
lookup(dsocket).is_empty();
240 T *fn =
new (
buffer)
T(std::forward<Args>(args)...);
282 this->construct_generator_fn<fn::CustomMF_Constant<T>>(std::move(value));
287 this->construct_generator_fn<fn::CustomMF_GenericConstant>(
type, value);
292 const fn::MultiFunction &fn = this->construct_fn<T>(std::forward<Args>(args)...);
310 built_socket_ = &socket;
315 return built_socket_;
339 T &
function = this->construct_fn<T>(std::forward<Args>(args)...);
371 return *dnode_->
bnode();
384 const DerivedNodeTree &
tree,
#define BLI_STATIC_ASSERT(a, msg)
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum type
void * allocate(const int64_t size, const int64_t alignment)
Span< Value > lookup(const Key &key) const
void add(const Key &key, const Value &value)
LinearAllocator & linear_allocator()
T * add(std::unique_ptr< T > resource, const char *name)
constexpr int64_t size() const
constexpr Span< NewT > cast() const
constexpr IndexRange index_range() const
MFFunctionNode & add_function(const MultiFunction &function)
MFOutputSocket & output(int index)
const DTreeContext * context() const
T & construct_fn(Args &&... args)
MFNetworkTreeMap & network_map()
ResourceScope & resource_scope()
MFNetworkBuilderBase(CommonMFNetworkBuilderData &common)
CommonMFNetworkBuilderData & common_
fn::MFNetwork & network()
void add(const DSocket &dsocket, fn::MFSocket &socket)
void add_try_match(const DTreeContext &context, Span< const OutputSocketRef * > dsockets, Span< fn::MFOutputSocket * > sockets)
bool is_mapped(const DSocket &dsocket) const
fn::MFNetwork & network()
const fn::MFNetwork & network() const
MFNetworkTreeMap(const DerivedNodeTree &tree, fn::MFNetwork &network)
fn::MFOutputSocket & lookup_dummy(const DOutputSocket &dsocket)
fn::MFOutputSocket & lookup(const DOutputSocket &dsocket)
void add(const DTreeContext &context, Span< const OutputSocketRef * > dsockets, Span< fn::MFOutputSocket * > sockets)
void add(const DTreeContext &context, Span< const InputSocketRef * > dsockets, Span< fn::MFInputSocket * > sockets)
void add_try_match(const DTreeContext &context, Span< const SocketRef * > dsockets, Span< fn::MFSocket * > sockets)
fn::MFInputSocket & lookup_dummy(const DInputSocket &dsocket)
const DerivedNodeTree & tree() const
void add(const DInputSocket &dsocket, fn::MFInputSocket &socket)
Span< fn::MFInputSocket * > lookup(const DInputSocket &dsocket)
void add_try_match(const DTreeContext &context, Span< const InputSocketRef * > dsockets, Span< fn::MFInputSocket * > sockets)
void add_try_match(const DNode &dnode, fn::MFNode &node)
void add(const DOutputSocket &dsocket, fn::MFOutputSocket &socket)
NodeMFNetworkBuilder(CommonMFNetworkBuilderData &common, DNode dnode)
const void set_not_implemented()
const fn::MultiFunction & get_default_fn(StringRef name)
const DNode & dnode() const
const fn::MultiFunction & get_not_implemented_fn()
void set_matching_fn(const fn::MultiFunction &function)
T & construct_and_set_matching_fn(Args &&... args)
Span< const InputSocketRef * > inputs() const
Span< const OutputSocketRef * > outputs() const
StringRefNull name() const
fn::MFOutputSocket * built_socket()
void construct_generator_fn(Args &&... args)
void set_socket(fn::MFOutputSocket &socket)
void set_constant_value(const CPPType &type, const void *value)
void set_generator_fn(const fn::MultiFunction &fn)
void set_constant_value(T value)
T * socket_default_value()
SocketMFNetworkBuilder(CommonMFNetworkBuilderData &common, const DSocket &dsocket)
__kernel void ccl_constant KernelData ccl_global void ccl_global char ccl_global int ccl_global char ccl_global unsigned int ccl_global float * buffer
bool socket_is_mf_data_socket(const bNodeSocketType &stype)
MultiFunctionByNode get_multi_function_per_node(const DerivedNodeTree &tree, ResourceScope &scope)
MFNetworkTreeMap insert_node_tree_into_mf_network(fn::MFNetwork &network, const DerivedNodeTree &tree, ResourceScope &scope)
constexpr void assert_same_size(const T1 &v1, const T2 &v2)
std::unique_ptr< T, DestructValueAtAddress< T > > destruct_ptr
struct SELECTID_Context context
const DerivedNodeTree & tree
MFNetworkTreeMap & network_map