Blender V4.3
PropertyRNAOrID Struct Reference

#include <rna_internal_types.hh>

Public Attributes

PointerRNA ptr
 
PropertyRNArawprop
 
PropertyRNArnaprop
 
IDPropertyidprop
 
const char * identifier
 
bool is_idprop
 
bool is_rna_storage_idprop
 
bool is_set
 
bool is_array
 
uint array_len
 

Detailed Description

Structure storing all needed data to process all three kinds of RNA properties.

Definition at line 129 of file rna_internal_types.hh.

Member Data Documentation

◆ array_len

uint PropertyRNAOrID::array_len

◆ identifier

const char* PropertyRNAOrID::identifier

The name of the property.

Definition at line 155 of file rna_internal_types.hh.

Referenced by rna_property_override_diff(), rna_property_rna_or_id_get(), and RNA_struct_override_matches().

◆ idprop

IDProperty* PropertyRNAOrID::idprop

The IDProperty storing the data of this property, may be NULL:

  • Static RNA: Always NULL.
  • Runtime RNA: The IDProperty storing the data of that property, may be NULL if never set yet.
  • IDProperty: The IDProperty, never NULL.

Definition at line 153 of file rna_internal_types.hh.

Referenced by rna_idproperty_check(), rna_property_override_diff(), rna_property_rna_or_id_get(), and RNA_struct_override_matches().

◆ is_array

bool PropertyRNAOrID::is_array

◆ is_idprop

bool PropertyRNAOrID::is_idprop

Whether this property is a 'pure' IDProperty or not.

Note
Mutually exclusive with is_rna_storage_idprop.

Definition at line 162 of file rna_internal_types.hh.

Referenced by rna_property_override_diff(), rna_property_rna_or_id_get(), and RNA_struct_override_matches().

◆ is_rna_storage_idprop

bool PropertyRNAOrID::is_rna_storage_idprop

Whether this property is defined as a RNA one, but uses an IDProperty to store its value (aka Python-defined runtime RNA properties).

Note
In that case, the IDProperty itself may very well not exist (yet), when it has never been set.
Mutually exclusive with is_idprop.

Definition at line 172 of file rna_internal_types.hh.

Referenced by rna_property_rna_or_id_get().

◆ is_set

bool PropertyRNAOrID::is_set

For runtime RNA properties (i.e. when is_rna_storage_idprop is true), whether it is set, defined, or not.

Warning
This DOES take into account the IDP_FLAG_GHOST flag, i.e. it matches result of RNA_property_is_set.

Definition at line 180 of file rna_internal_types.hh.

Referenced by rna_property_override_diff(), and rna_property_rna_or_id_get().

◆ ptr

◆ rawprop

PropertyRNA* PropertyRNAOrID::rawprop

The PropertyRNA passed as parameter, used to generate that structure's content:

  • Static RNA: The RNA property (same as rnaprop), never NULL.
  • Runtime RNA: The RNA property (same as rnaprop), never NULL.
  • IDProperty: The IDProperty, never NULL.

Definition at line 138 of file rna_internal_types.hh.

Referenced by rna_property_override_diff(), and rna_property_rna_or_id_get().

◆ rnaprop

PropertyRNA* PropertyRNAOrID::rnaprop

The real RNA property of this property, never NULL:

  • Static RNA: The rna property, also gives direct access to the data (from any matching PointerRNA).
  • Runtime RNA: The rna property, does not directly gives access to the data.
  • IDProperty: The generic PropertyRNA matching its type.

Definition at line 146 of file rna_internal_types.hh.

Referenced by rna_idproperty_check(), rna_property_override_diff(), rna_property_rna_or_id_get(), and RNA_struct_override_matches().


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