58static void rna_ViewLayer_active_layer_collection_set(
PointerRNA *
ptr,
81static void rna_LayerObjects_active_object_set(
PointerRNA *
ptr,
91 if (basact_test !=
nullptr) {
92 view_layer->
basact = basact_test;
97 "ViewLayer '%s' does not contain object '%s'",
103 view_layer->
basact =
nullptr;
109 const size_t rna_path_buffer_size)
111 char name_esc[
sizeof(view_layer->
name) * 2];
114 return BLI_snprintf_rlen(r_rna_path, rna_path_buffer_size,
"view_layers[\"%s\"]", name_esc);
117static std::optional<std::string> rna_ViewLayer_path(
const PointerRNA *
ptr)
120 char rna_path[
sizeof(view_layer->
name) * 3];
152static void rna_ViewLayer_update_render_passes(
ID *
id)
195 ID *
id =
ptr->owner_id;
221static void rna_ViewLayer_update_tagged(
ID *id_ptr,
270static void rna_LayerCollection_name_get(
PointerRNA *
ptr,
char *value)
273 strcpy(value, id->
name + 2);
279 return strlen(id->
name + 2);
282static void rna_LayerCollection_flag_set(
PointerRNA *
ptr,
const bool value,
const int flag)
299static void rna_LayerCollection_exclude_set(
PointerRNA *
ptr,
bool value)
304static void rna_LayerCollection_holdout_set(
PointerRNA *
ptr,
bool value)
309static void rna_LayerCollection_indirect_only_set(
PointerRNA *
ptr,
bool value)
314static void rna_LayerCollection_hide_viewport_set(
PointerRNA *
ptr,
bool value)
367static bool rna_LayerCollection_has_selected_objects(
LayerCollection *lc,
373 if (scene_view_layer == view_layer) {
408static bool rna_LayerCollection_children_lookupstring(
PointerRNA *
ptr,
419 if (
STREQ(child->collection->id.name + 2, key)) {
449 prop,
"Name",
"Name of this layer collection (same as its collection one)");
451 prop,
"rna_LayerCollection_name_get",
"rna_LayerCollection_name_length",
nullptr);
459 "rna_LayerCollection_children_begin",
464 "rna_LayerCollection_children_lookupint",
465 "rna_LayerCollection_children_lookupstring",
493 "Objects in collection only contribute indirectly (through shadows and reflections) "
494 "in the view layer");
505 func =
RNA_def_function(srna,
"visible_get",
"rna_LayerCollection_visible_get");
507 "Whether this collection is visible, take into account the "
508 "collection parent and the viewport");
519 "Whether this collection is visible for the view layer, take into "
520 "account the collection parent");
522 func =
RNA_def_function(srna,
"has_objects",
"rna_LayerCollection_has_objects");
527 srna,
"has_selected_objects",
"rna_LayerCollection_has_selected_objects");
531 func,
"view_layer",
"ViewLayer",
"",
"View layer the layer collection belongs to");
549 "rna_LayerObjects_active_object_get",
550 "rna_LayerObjects_active_object_set",
563 "rna_LayerObjects_selected_begin",
564 "rna_iterator_listbase_next",
565 "rna_iterator_listbase_end",
566 "rna_ViewLayer_objects_get",
584 "An object instance in a View Layer (currently never exposed in Python API)");
622 func =
RNA_def_function(srna,
"update_render_passes",
"rna_ViewLayer_update_render_passes");
624 "Requery the enabled render passes from the render engine");
634 "Root of collections hierarchy of this view layer, "
635 "its 'collection' pointer property is the same as the scene's master collection");
640 "rna_ViewLayer_active_layer_collection_get",
641 "rna_ViewLayer_active_layer_collection_set",
646 prop,
"Active Layer Collection",
"Active layer collection in this view layer's hierarchy");
656 "rna_ViewLayer_objects_get",
675 "Has export collections",
676 "At least one Collection in this View Layer has an exporter");
697 prop,
"Grease Pencil",
"Deliver Grease Pencil render result in a separate pass");
704 func,
"Update data tagged to be updated from previous access to data or operators");
Scene * CTX_data_scene(const bContext *C)
View3D * CTX_wm_view3d(const bContext *C)
ViewLayer * CTX_data_view_layer(const bContext *C)
void BKE_view_layer_synced_ensure(const Scene *scene, ViewLayer *view_layer)
LayerCollection * BKE_view_layer_active_collection_get(ViewLayer *view_layer)
void BKE_view_layer_remove_aov(ViewLayer *view_layer, ViewLayerAOV *aov)
#define FOREACH_OBJECT_END
#define FOREACH_OBJECT_BEGIN(scene, view_layer, _instance)
bool BKE_layer_collection_has_selected_objects(const Scene *scene, ViewLayer *view_layer, LayerCollection *lc)
void BKE_view_layer_verify_aov(RenderEngine *engine, Scene *scene, ViewLayer *view_layer)
Object * BKE_view_layer_active_object_get(const ViewLayer *view_layer)
void BKE_view_layer_need_resync_tag(ViewLayer *view_layer)
Base * BKE_view_layer_base_find(ViewLayer *view_layer, Object *ob)
void BKE_layer_collection_set_flag(LayerCollection *lc, int flag, bool value)
int BKE_layer_collection_findindex(ViewLayer *view_layer, const LayerCollection *lc)
bool BKE_layer_collection_activate(ViewLayer *view_layer, LayerCollection *lc)
ListBase * BKE_view_layer_object_bases_get(ViewLayer *view_layer)
ViewLayer * BKE_view_layer_find_from_collection(const Scene *scene, LayerCollection *lc)
void BKE_reportf(ReportList *reports, eReportType type, const char *format,...) ATTR_PRINTF_FORMAT(3
void BKE_report(ReportList *reports, eReportType type, const char *message)
Depsgraph * BKE_scene_ensure_depsgraph(Main *bmain, Scene *scene, ViewLayer *view_layer)
void BKE_scene_graph_update_tagged(Depsgraph *depsgraph, Main *bmain)
Depsgraph * BKE_scene_get_depsgraph(const Scene *scene, const ViewLayer *view_layer)
int BLI_findindex(const ListBase *listbase, const void *vlink) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1)
void * BLI_findlink(const ListBase *listbase, int number) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1)
#define LISTBASE_FOREACH(type, var, list)
size_t BLI_snprintf_rlen(char *__restrict dst, size_t dst_maxncpy, const char *__restrict format,...) ATTR_NONNULL(1
size_t BLI_str_escape(char *__restrict dst, const char *__restrict src, size_t dst_maxncpy) ATTR_NONNULL(1
#define BPy_BEGIN_ALLOW_THREADS
#define BPy_END_ALLOW_THREADS
void DEG_id_tag_update(ID *id, unsigned int flags)
bool DEG_is_evaluating(const Depsgraph *depsgraph)
void DEG_make_active(Depsgraph *depsgraph)
void DEG_relations_tag_update(Main *bmain)
Object groups, one object can be in many groups at once.
@ LAYER_COLLECTION_EXCLUDE
@ LAYER_COLLECTION_INDIRECT_ONLY
@ LAYER_COLLECTION_HOLDOUT
@ LAYER_COLLECTION_VISIBLE_VIEW_LAYER
@ LAYER_COLLECTION_HIDE_VIEWPORT
@ LAYER_COLLECTION_HAS_OBJECTS
@ GREASE_PENCIL_AS_SEPARATE_PASS
@ VIEW_LAYER_HAS_EXPORT_COLLECTIONS
Object is a sort of wrapper for general info.
#define BASE_SELECTED(v3d, base)
@ PROPOVERRIDE_OVERRIDABLE_LIBRARY
@ PROPOVERRIDE_NO_COMPARISON
#define ND_RENDER_OPTIONS
BPy_StructRNA * depsgraph
RenderEngineType * RE_engines_find(const char *idname)
RenderEngine * RE_engine_create(RenderEngineType *type)
void RE_engine_free(RenderEngine *engine)
void base_select(Base *base, eObjectSelect_Mode mode)
void base_active_refresh(Main *bmain, Scene *scene, ViewLayer *view_layer)
void ntreeCompositUpdateRLayers(bNodeTree *ntree)
const PointerRNA PointerRNA_NULL
void rna_iterator_listbase_begin(CollectionPropertyIterator *iter, PointerRNA *ptr, ListBase *lb, IteratorSkipFunc skip)
void rna_pointer_create_with_ancestors(const PointerRNA &parent, StructRNA *type, void *data, PointerRNA &r_ptr)
PointerRNA RNA_pointer_create_with_parent(const PointerRNA &parent, StructRNA *type, void *data)
PointerRNA RNA_id_pointer_create(ID *id)
void RNA_def_property_boolean_sdna(PropertyRNA *prop, const char *structname, const char *propname, int64_t booleanbit)
void RNA_def_struct_name_property(StructRNA *srna, PropertyRNA *prop)
void RNA_def_property_pointer_sdna(PropertyRNA *prop, const char *structname, const char *propname)
void RNA_def_struct_path_func(StructRNA *srna, const char *path)
void RNA_define_animate_sdna(bool animate)
void RNA_def_struct_system_idprops_func(StructRNA *srna, const char *system_idproperties)
void RNA_def_property_string_funcs(PropertyRNA *prop, const char *get, const char *length, const char *set)
void RNA_def_function_return(FunctionRNA *func, PropertyRNA *ret)
void RNA_def_property_ui_text(PropertyRNA *prop, const char *name, const char *description)
void RNA_def_property_string_sdna(PropertyRNA *prop, const char *structname, const char *propname)
void RNA_def_property_ui_icon(PropertyRNA *prop, int icon, int consecutive)
void RNA_def_property_srna(PropertyRNA *prop, const char *type)
void RNA_def_property_collection_funcs(PropertyRNA *prop, const char *begin, const char *next, const char *end, const char *get, const char *length, const char *lookupint, const char *lookupstring, const char *assignint)
void RNA_def_struct_ui_text(StructRNA *srna, const char *name, const char *description)
void RNA_def_property_boolean_funcs(PropertyRNA *prop, const char *get, const char *set)
void RNA_def_struct_sdna(StructRNA *srna, const char *structname)
FunctionRNA * RNA_def_function(StructRNA *srna, const char *identifier, const char *call)
PropertyRNA * RNA_def_pointer(StructOrFunctionRNA *cont_, const char *identifier, const char *type, const char *ui_name, const char *ui_description)
void RNA_def_property_struct_type(PropertyRNA *prop, const char *type)
void RNA_def_property_collection_sdna(PropertyRNA *prop, const char *structname, const char *propname, const char *lengthpropname)
void RNA_def_function_ui_description(FunctionRNA *func, const char *description)
void RNA_def_property_update(PropertyRNA *prop, int noteflag, const char *func)
PropertyRNA * RNA_def_property(StructOrFunctionRNA *cont_, const char *identifier, int type, int subtype)
StructRNA * RNA_def_struct(BlenderRNA *brna, const char *identifier, const char *from)
void RNA_def_function_flag(FunctionRNA *func, int flag)
void RNA_def_property_clear_flag(PropertyRNA *prop, PropertyFlag flag)
void RNA_def_property_pointer_funcs(PropertyRNA *prop, const char *get, const char *set, const char *type_fn, const char *poll)
void RNA_def_struct_ui_icon(StructRNA *srna, int icon)
void RNA_def_property_flag_hide_from_ui_workaround(PropertyRNA *prop)
PropertyRNA * RNA_def_boolean(StructOrFunctionRNA *cont_, const char *identifier, const bool default_value, const char *ui_name, const char *ui_description)
void RNA_def_struct_idprops_func(StructRNA *srna, const char *idproperties)
void RNA_def_property_flag(PropertyRNA *prop, PropertyFlag flag)
void RNA_def_property_override_flag(PropertyRNA *prop, PropertyOverrideFlag flag)
void RNA_def_parameter_flags(PropertyRNA *prop, PropertyFlag flag_property, ParameterFlag flag_parameter)
void rna_def_freestyle_settings(BlenderRNA *brna)
size_t rna_ViewLayer_path_buffer_get(const ViewLayer *view_layer, char *r_rna_path, const size_t rna_path_buffer_size)
void rna_def_view_layer_common(BlenderRNA *brna, StructRNA *srna, bool scene)
static void rna_def_object_base(BlenderRNA *brna)
static void rna_def_layer_objects(BlenderRNA *brna, PropertyRNA *cprop)
static void rna_def_layer_collection(BlenderRNA *brna)
void RNA_def_view_layer(BlenderRNA *brna)
union CollectionPropertyIterator::@220100362304005352221007113371015217044252346141 internal
ListBaseIterator listbase
ListBase layer_collections
unsigned short local_collections_bits
struct Collection * collection
void(* update_render_passes)(struct RenderEngine *engine, struct Scene *scene, struct ViewLayer *view_layer)
struct bNodeTree * compositing_node_group
unsigned short local_collections_uid
struct IDProperty * id_properties
struct IDProperty * system_properties
void WM_main_add_notifier(uint type, void *reference)
void WM_event_add_notifier(const bContext *C, uint type, void *reference)