Blender  V3.3
Public Member Functions | Static Public Member Functions | Protected Attributes | Friends | List of all members
Pass Class Reference

#include <pass.h>

Inheritance diagram for Pass:
Node

Public Member Functions

NODE_DECLARE Pass ()
 
PassInfo get_info () const
 
bool is_written () const
 
- Public Member Functions inherited from Node
 Node (const NodeType *type, ustring name=ustring())
 
virtual ~Node ()=0
 
void set (const SocketType &input, bool value)
 
void set (const SocketType &input, int value)
 
void set (const SocketType &input, uint value)
 
void set (const SocketType &input, float value)
 
void set (const SocketType &input, float2 value)
 
void set (const SocketType &input, float3 value)
 
void set (const SocketType &input, const char *value)
 
void set (const SocketType &input, ustring value)
 
void set (const SocketType &input, const Transform &value)
 
void set (const SocketType &input, Node *value)
 
template<class ValueType , typename std::enable_if_t< std::is_enum_v< ValueType >> * = nullptr>
void set (const SocketType &input, const ValueType &value)
 
void set (const SocketType &input, array< bool > &value)
 
void set (const SocketType &input, array< int > &value)
 
void set (const SocketType &input, array< float > &value)
 
void set (const SocketType &input, array< float2 > &value)
 
void set (const SocketType &input, array< float3 > &value)
 
void set (const SocketType &input, array< ustring > &value)
 
void set (const SocketType &input, array< Transform > &value)
 
void set (const SocketType &input, array< Node * > &value)
 
bool get_bool (const SocketType &input) const
 
int get_int (const SocketType &input) const
 
uint get_uint (const SocketType &input) const
 
float get_float (const SocketType &input) const
 
float2 get_float2 (const SocketType &input) const
 
float3 get_float3 (const SocketType &input) const
 
ustring get_string (const SocketType &input) const
 
Transform get_transform (const SocketType &input) const
 
Nodeget_node (const SocketType &input) const
 
const array< bool > & get_bool_array (const SocketType &input) const
 
const array< int > & get_int_array (const SocketType &input) const
 
const array< float > & get_float_array (const SocketType &input) const
 
const array< float2 > & get_float2_array (const SocketType &input) const
 
const array< float3 > & get_float3_array (const SocketType &input) const
 
const array< ustring > & get_string_array (const SocketType &input) const
 
const array< Transform > & get_transform_array (const SocketType &input) const
 
const array< Node * > & get_node_array (const SocketType &input) const
 
bool has_default_value (const SocketType &input) const
 
void set_default_value (const SocketType &input)
 
bool equals_value (const Node &other, const SocketType &input) const
 
void copy_value (const SocketType &input, const Node &other, const SocketType &other_input)
 
void set_value (const SocketType &input, const Node &other, const SocketType &other_input)
 
bool equals (const Node &other) const
 
void hash (MD5Hash &md5)
 
size_t get_total_size_in_bytes () const
 
bool is_a (const NodeType *type)
 
bool socket_is_modified (const SocketType &input) const
 
bool is_modified () const
 
void tag_modified ()
 
void clear_modified ()
 
void print_modified_sockets () const
 
const NodeOwnerget_owner () const
 
void set_owner (const NodeOwner *owner_)
 
int reference_count () const
 
void reference ()
 
void dereference ()
 
void clear_reference_count ()
 

Static Public Member Functions

static const NodeEnumget_type_enum ()
 
static const NodeEnumget_mode_enum ()
 
static PassInfo get_info (PassType type, const bool include_albedo=false, const bool is_lightgroup=false)
 
static bool contains (const vector< Pass * > &passes, PassType type)
 
static const Passfind (const vector< Pass * > &passes, const string &name)
 
static const Passfind (const vector< Pass * > &passes, PassType type, PassMode mode=PassMode::NOISY, const ustring &lightgroup=ustring())
 
static int get_offset (const vector< Pass * > &passes, const Pass *pass)
 

Protected Attributes

bool is_auto_
 
- Protected Attributes inherited from Node
const NodeOwnerowner
 
int ref_count {0}
 
SocketModifiedFlags socket_modified
 

Friends

class Film
 

Additional Inherited Members

- Public Attributes inherited from Node
ustring name
 
const NodeTypetype
 
InternalNode internal
 
LeafNode leaf
 
- Protected Member Functions inherited from Node
template<typename T >
void set_if_different (const SocketType &input, T value)
 
void set_if_different (const SocketType &input, Node *value)
 
template<typename T >
void set_if_different (const SocketType &input, array< T > &value)
 
void set_if_different (const SocketType &input, array< Node * > &value)
 
void dereference_all_used_nodes ()
 
- Static Protected Member Functions inherited from Node
template<typename T >
static Tget_socket_value (const Node *node, const SocketType &socket)
 

Detailed Description

Definition at line 48 of file pass.h.

Constructor & Destructor Documentation

◆ Pass()

Pass::Pass ( )

Definition at line 132 of file pass.cpp.

Member Function Documentation

◆ contains()

bool Pass::contains ( const vector< Pass * > &  passes,
PassType  type 
)
static

Definition at line 349 of file pass.cpp.

References Node::type.

Referenced by Scene::need_global_attribute(), Scene::need_motion(), and Film::update_passes().

◆ find() [1/2]

const Pass * Pass::find ( const vector< Pass * > &  passes,
const string &  name 
)
static

Definition at line 362 of file pass.cpp.

References Node::name.

Referenced by BlenderSession::draw().

◆ find() [2/2]

const Pass * Pass::find ( const vector< Pass * > &  passes,
PassType  type,
PassMode  mode = PassMode::NOISY,
const ustring &  lightgroup = ustring() 
)
static

Definition at line 373 of file pass.cpp.

References Node::type.

◆ get_info() [1/2]

PassInfo Pass::get_info ( ) const

◆ get_info() [2/2]

PassInfo Pass::get_info ( PassType  type,
const bool  include_albedo = false,
const bool  is_lightgroup = false 
)
static

◆ get_mode_enum()

const NodeEnum * Pass::get_mode_enum ( )
static

Definition at line 104 of file pass.cpp.

References DENOISED, NodeEnum::empty(), NodeEnum::insert(), and NOISY.

Referenced by NODE_DEFINE().

◆ get_offset()

int Pass::get_offset ( const vector< Pass * > &  passes,
const Pass pass 
)
static

Definition at line 389 of file pass.cpp.

References PASS_UNUSED.

◆ get_type_enum()

const NodeEnum * Pass::get_type_enum ( )
static

◆ is_written()

bool Pass::is_written ( ) const

Definition at line 141 of file pass.cpp.

References get_info(), and PassInfo::is_written.

Referenced by Film::get_kernel_features(), and operator<<().

Friends And Related Function Documentation

◆ Film

friend class Film
friend

Definition at line 92 of file pass.h.

Member Data Documentation

◆ is_auto_

bool Pass::is_auto_
protected

Definition at line 70 of file pass.h.


The documentation for this class was generated from the following files: