Blender V4.5
py_capi_rna.hh File Reference
#include <Python.h>

Go to the source code of this file.

Classes

struct  BPy_EnumProperty_Parse

Functions

char * pyrna_enum_repr (const EnumPropertyItem *item)
int pyrna_enum_value_from_id (const EnumPropertyItem *item, const char *identifier, int *r_value, const char *error_prefix)
unsigned int * pyrna_enum_bitmap_from_set (const EnumPropertyItem *items, PyObject *value, int type_size, bool type_convert_sign, int bitmap_size, const char *error_prefix)
int pyrna_enum_bitfield_from_set (const EnumPropertyItem *items, PyObject *value, int *r_value, const char *error_prefix)
PyObject * pyrna_enum_bitfield_as_set (const EnumPropertyItem *items, int value)
int pyrna_enum_value_parse_string (PyObject *o, void *p)
int pyrna_enum_bitfield_parse_set (PyObject *o, void *p)

Function Documentation

◆ pyrna_enum_bitfield_as_set()

PyObject * pyrna_enum_bitfield_as_set ( const EnumPropertyItem * items,
int value )

◆ pyrna_enum_bitfield_from_set()

int pyrna_enum_bitfield_from_set ( const EnumPropertyItem * items,
PyObject * value,
int * r_value,
const char * error_prefix )

◆ pyrna_enum_bitfield_parse_set()

◆ pyrna_enum_bitmap_from_set()

unsigned int * pyrna_enum_bitmap_from_set ( const EnumPropertyItem * items,
PyObject * value,
int type_size,
bool type_convert_sign,
int bitmap_size,
const char * error_prefix )

Takes a set of strings and map it to and array of booleans.

Useful when the values aren't flags.

Parameters
type_convert_signMaps signed to unsigned range, needed when we want to use the full range of a signed short/char.

Definition at line 71 of file py_capi_rna.cc.

References BLI_assert, BLI_assert_unreachable, BLI_BITMAP_ENABLE, BLI_BITMAP_NEW, MEM_freeN(), pyrna_enum_bitmap_from_set(), pyrna_enum_value_from_id(), and ret.

Referenced by bpy_file_path_map(), bpy_user_map(), and pyrna_enum_bitmap_from_set().

◆ pyrna_enum_repr()

char * pyrna_enum_repr ( const EnumPropertyItem * item)

Convert all items into a single comma separated string. Use for creating useful error messages.

Definition at line 31 of file py_capi_rna.cc.

References BLI_dynstr_appendf(), BLI_dynstr_free(), BLI_dynstr_get_cstring(), BLI_dynstr_new(), EnumPropertyItem::identifier, and pyrna_enum_repr().

Referenced by pyop_call(), pyop_poll(), pyrna_enum_as_string(), pyrna_enum_repr(), and pyrna_enum_value_from_id().

◆ pyrna_enum_value_from_id()

int pyrna_enum_value_from_id ( const EnumPropertyItem * item,
const char * identifier,
int * r_value,
const char * error_prefix )

◆ pyrna_enum_value_parse_string()