Blender V4.5
blender::fn::GFieldBase< NodePtr > Class Template Reference

#include <FN_field.hh>

Public Member Functions

 GFieldBase ()=default
 
 operator bool () const
 
uint64_t hash () const
 
const CPPTypecpp_type () const
 
const FieldNodenode () const
 
int node_output_index () const
 

Protected Member Functions

 GFieldBase (NodePtr node, const int node_output_index)
 

Protected Attributes

NodePtr node_ = nullptr
 
int node_output_index_ = 0
 

Friends

bool operator== (const GFieldBase &a, const GFieldBase &b)
 

Detailed Description

template<typename NodePtr>
class blender::fn::GFieldBase< NodePtr >

Common base class for fields to avoid declaring the same methods for #GField and #GFieldRef.

Definition at line 100 of file FN_field.hh.

Constructor & Destructor Documentation

◆ GFieldBase() [1/2]

template<typename NodePtr >
blender::fn::GFieldBase< NodePtr >::GFieldBase ( NodePtr node,
const int node_output_index )
inlineprotected

Definition at line 105 of file FN_field.hh.

◆ GFieldBase() [2/2]

template<typename NodePtr >
blender::fn::GFieldBase< NodePtr >::GFieldBase ( )
default

Member Function Documentation

◆ cpp_type()

◆ hash()

◆ node()

template<typename NodePtr >
const FieldNode & blender::fn::GFieldBase< NodePtr >::node ( ) const
inline

Definition at line 135 of file FN_field.hh.

References blender::fn::GFieldBase< NodePtr >::node_.

Referenced by blender::fn::build_multi_function_procedure_for_fields(), blender::fn::evaluate_constant_field(), blender::fn::evaluate_fields(), blender::nodes::LazyFunctionForExtractingReferenceSet::execute_impl(), blender::nodes::geo_eval_log::FieldInfoLog::FieldInfoLog(), blender::bke::EvaluateOnDomainInput::for_each_field_input_recursive(), blender::nodes::node_geo_accumulate_field_cc::AccumulateFieldInput::for_each_field_input_recursive(), blender::nodes::node_geo_accumulate_field_cc::TotalFieldInput::for_each_field_input_recursive(), blender::nodes::node_geo_blur_attribute_cc::BlurAttributeFieldInput::for_each_field_input_recursive(), blender::nodes::node_geo_curve_endpoint_selection_cc::EndpointFieldInput::for_each_field_input_recursive(), blender::nodes::node_geo_curve_topology_points_of_curve_cc::PointsOfCurveInput::for_each_field_input_recursive(), blender::nodes::node_geo_edge_paths_to_selection_cc::PathToEdgeSelectionFieldInput::for_each_field_input_recursive(), blender::nodes::node_geo_field_average_cc::FieldAverageInput::for_each_field_input_recursive(), blender::nodes::node_geo_field_min_and_max_cc::FieldMinMaxInput::for_each_field_input_recursive(), blender::nodes::node_geo_field_variance_cc::FieldVarianceInput::for_each_field_input_recursive(), blender::nodes::node_geo_index_of_nearest_cc::HasNeighborFieldInput::for_each_field_input_recursive(), blender::nodes::node_geo_index_of_nearest_cc::IndexOfNearestFieldInput::for_each_field_input_recursive(), blender::nodes::node_geo_input_mesh_face_is_planar_cc::PlanarFieldInput::for_each_field_input_recursive(), blender::nodes::node_geo_input_shortest_edge_paths_cc::ShortestEdgePathsCostFieldInput::for_each_field_input_recursive(), blender::nodes::node_geo_input_shortest_edge_paths_cc::ShortestEdgePathsNextVertFieldInput::for_each_field_input_recursive(), blender::nodes::node_geo_mesh_face_group_boundaries_cc::BoundaryFieldInput::for_each_field_input_recursive(), blender::nodes::node_geo_mesh_topology_corners_of_edge_cc::CornersOfEdgeInput::for_each_field_input_recursive(), blender::nodes::node_geo_mesh_topology_corners_of_face_cc::CornersOfFaceInput::for_each_field_input_recursive(), blender::nodes::node_geo_mesh_topology_corners_of_vertex_cc::CornersOfVertInput::for_each_field_input_recursive(), blender::nodes::node_geo_mesh_topology_edges_of_vertex_cc::EdgesOfVertInput::for_each_field_input_recursive(), blender::nodes::node_geo_mesh_topology_offset_corner_in_face_cc::OffsetCornerInFaceFieldInput::for_each_field_input_recursive(), blender::nodes::node_geo_offset_point_in_curve_cc::ControlPointNeighborFieldInput::for_each_field_input_recursive(), blender::nodes::node_geo_offset_point_in_curve_cc::OffsetValidFieldInput::for_each_field_input_recursive(), blender::nodes::node_geo_uv_pack_islands_cc::PackIslandsFieldInput::for_each_field_input_recursive(), blender::nodes::node_geo_uv_unwrap_cc::UnwrapFieldInput::for_each_field_input_recursive(), blender::nodes::node_geo_tool_set_face_set_cc::is_constant_zero(), blender::bke::SocketValueVariant::is_context_dependent_field(), blender::fn::make_field_constant_if_possible(), blender::fn::preprocess_field_tree(), blender::bke::try_capture_fields_on_geometry(), blender::bke::try_detect_field_domain(), blender::bke::try_get_field_direct_attribute_id(), blender::nodes::node_geo_set_shade_smooth_cc::try_removing_sharp_attribute(), and blender::nodes::node_geo_curve_topology_points_of_curve_cc::use_start_point_special_case().

◆ node_output_index()

template<typename NodePtr >
int blender::fn::GFieldBase< NodePtr >::node_output_index ( ) const
inline

◆ operator bool()

template<typename NodePtr >
blender::fn::GFieldBase< NodePtr >::operator bool ( ) const
inline

Definition at line 113 of file FN_field.hh.

References blender::fn::GFieldBase< NodePtr >::node_.

Friends And Related Symbol Documentation

◆ operator==

template<typename NodePtr >
bool operator== ( const GFieldBase< NodePtr > & a,
const GFieldBase< NodePtr > & b )
friend

Definition at line 118 of file FN_field.hh.

Member Data Documentation

◆ node_

◆ node_output_index_

template<typename NodePtr >
int blender::fn::GFieldBase< NodePtr >::node_output_index_ = 0
protected

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