Blender  V2.93
Classes | Macros
node.h File Reference
#include "graph/node_type.h"
#include "util/util_array.h"
#include "util/util_map.h"
#include "util/util_param.h"

Go to the source code of this file.

Classes

struct  NodeOwner
 
union  Node
 

Macros

#define NODE_SOCKET_API_BASE_METHODS(type_, name, string_name)
 
#define NODE_SOCKET_API_BASE(type_, name, string_name)
 
#define NODE_SOCKET_API(type_, name)
 
#define NODE_SOCKET_API_ARRAY(type_, name)
 
#define NODE_SOCKET_API_STRUCT_MEMBER(type_, name, member)
 

Macro Definition Documentation

◆ NODE_SOCKET_API

#define NODE_SOCKET_API (   type_,
  name 
)
Value:
NODE_SOCKET_API_BASE(type_, name, #name) \
void set_##name(type_ value) \
{ \
const SocketType *socket = get_##name##_socket(); \
this->set(*socket, value); \
}
#define NODE_SOCKET_API_BASE(type_, name, string_name)
Definition: node.h:56

Definition at line 63 of file node.h.

◆ NODE_SOCKET_API_ARRAY

#define NODE_SOCKET_API_ARRAY (   type_,
  name 
)
Value:
NODE_SOCKET_API_BASE(type_, name, #name) \
void set_##name(type_ &value) \
{ \
const SocketType *socket = get_##name##_socket(); \
this->set(*socket, value); \
} \
type_ &get_##name() \
{ \
const SocketType *socket = get_##name##_socket(); \
return get_socket_value<type_>(this, *socket); \
}

Definition at line 71 of file node.h.

◆ NODE_SOCKET_API_BASE

#define NODE_SOCKET_API_BASE (   type_,
  name,
  string_name 
)
Value:
protected: \
type_ name; \
\
public: \
NODE_SOCKET_API_BASE_METHODS(type_, name, string_name)

Definition at line 56 of file node.h.

◆ NODE_SOCKET_API_BASE_METHODS

#define NODE_SOCKET_API_BASE_METHODS (   type_,
  name,
  string_name 
)
Value:
const SocketType *get_##name##_socket() const \
{ \
static const SocketType *socket = type->find_input(ustring(string_name)); \
return socket; \
} \
bool name##_is_modified() const \
{ \
const SocketType *socket = get_##name##_socket(); \
return socket_is_modified(*socket); \
} \
void tag_##name##_modified() \
{ \
const SocketType *socket = get_##name##_socket(); \
socket_modified |= socket->modified_flag_bit; \
} \
type_ const &get_##name() const \
{ \
const SocketType *socket = get_##name##_socket(); \
return get_socket_value<type_>(this, *socket); \
}
_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

Definition at line 34 of file node.h.

◆ NODE_SOCKET_API_STRUCT_MEMBER

#define NODE_SOCKET_API_STRUCT_MEMBER (   type_,
  name,
  member 
)
Value:
NODE_SOCKET_API_BASE_METHODS(type_, name##_##member, #name "." #member) \
void set_##name##_##member(type_ value) \
{ \
const SocketType *socket = get_##name##_##member##_socket(); \
this->set(*socket, value); \
}
#define NODE_SOCKET_API_BASE_METHODS(type_, name, string_name)
Definition: node.h:34

Definition at line 84 of file node.h.