Blender
V3.3
|
#include <stdio.h>
#include "CLG_log.h"
#include "MEM_guardedalloc.h"
#include "DNA_ID.h"
#include "BLI_ghash.h"
#include "BLI_listbase.h"
#include "BLI_utildefines.h"
#include "WM_message.h"
#include "WM_types.h"
#include "message_bus/intern/wm_message_bus_intern.h"
#include "RNA_access.h"
#include "RNA_path.h"
Go to the source code of this file.
Functions | |
Internal Utilities | |
BLI_INLINE uint | void_hash_uint (const void *key) |
static uint | wm_msg_rna_gset_hash (const void *key_p) |
static bool | wm_msg_rna_gset_cmp (const void *key_a_p, const void *key_b_p) |
static void | wm_msg_rna_gset_key_free (void *key_p) |
static void | wm_msg_rna_repr (FILE *stream, const wmMsgSubscribeKey *msg_key) |
static void | wm_msg_rna_update_by_id (struct wmMsgBus *mbus, ID *id_src, ID *id_dst) |
static void | wm_msg_rna_remove_by_id (struct wmMsgBus *mbus, const ID *id) |
void | WM_msgtypeinfo_init_rna (wmMsgTypeInfo *msgtype_info) |
RNA API | |
wmMsgSubscribeKey_RNA * | WM_msg_lookup_rna (struct wmMsgBus *mbus, const wmMsgParams_RNA *msg_key_params) |
void | WM_msg_publish_rna_params (struct wmMsgBus *mbus, const wmMsgParams_RNA *msg_key_params) |
void | WM_msg_publish_rna (struct wmMsgBus *mbus, PointerRNA *ptr, PropertyRNA *prop) |
void | WM_msg_subscribe_rna_params (struct wmMsgBus *mbus, const wmMsgParams_RNA *msg_key_params, const wmMsgSubscribeValue *msg_val_params, const char *id_repr) |
void | WM_msg_subscribe_rna (struct wmMsgBus *mbus, PointerRNA *ptr, const PropertyRNA *prop, const wmMsgSubscribeValue *msg_val_params, const char *id_repr) |
ID variants of RNA API | |
| |
void | WM_msg_subscribe_ID (struct wmMsgBus *mbus, ID *id, const wmMsgSubscribeValue *msg_val_params, const char *id_repr) |
void | WM_msg_publish_ID (struct wmMsgBus *mbus, ID *id) |
BLI_INLINE uint void_hash_uint | ( | const void * | key | ) |
Definition at line 29 of file wm_message_bus_rna.c.
References y.
Referenced by wm_msg_rna_gset_hash().
wmMsgSubscribeKey_RNA* WM_msg_lookup_rna | ( | struct wmMsgBus * | mbus, |
const wmMsgParams_RNA * | msg_key_params | ||
) |
Definition at line 206 of file wm_message_bus_rna.c.
References BLI_gset_lookup(), wmMsgBus::messages_gset, wmMsgSubscribeKey_RNA::msg, wmMsg_RNA::params, and WM_MSG_TYPE_RNA.
Referenced by WM_msg_publish_rna_params().
Definition at line 340 of file wm_message_bus_rna.c.
References NULL, wmMsgParams_RNA::ptr, RNA_id_pointer_create(), and WM_msg_publish_rna_params().
void WM_msg_publish_rna | ( | struct wmMsgBus * | mbus, |
PointerRNA * | ptr, | ||
PropertyRNA * | prop | ||
) |
Definition at line 262 of file wm_message_bus_rna.c.
References ptr, and WM_msg_publish_rna_params().
Referenced by rna_property_update().
void WM_msg_publish_rna_params | ( | struct wmMsgBus * | mbus, |
const wmMsgParams_RNA * | msg_key_params | ||
) |
Definition at line 214 of file wm_message_bus_rna.c.
References CLOG_INFO, PointerRNA::data, wmMsgSubscribeKey_RNA::head, ID::name, none(), NULL, PointerRNA::owner_id, wmMsgParams_RNA::prop, wmMsgParams_RNA::ptr, RNA_property_identifier(), RNA_struct_identifier(), PointerRNA::type, WM_LOG_MSGBUS_PUB, WM_msg_lookup_rna(), and WM_msg_publish_with_key().
Referenced by bpy_msgbus_publish_rna(), ED_view3d_cursor3d_update(), saveTransform(), WM_msg_publish_ID(), and WM_msg_publish_rna().
Definition at line 46 of file wm_message_bus_rna.c.
References PointerRNA::data, PointerRNA::owner_id, wmMsgParams_RNA::prop, wmMsgParams_RNA::ptr, and PointerRNA::type.
Referenced by WM_msgtypeinfo_init_rna().
Definition at line 35 of file wm_message_bus_rna.c.
References wmMsgSubscribeKey_RNA::msg, params, wmMsg_RNA::params, and void_hash_uint().
Referenced by WM_msgtypeinfo_init_rna().
Definition at line 54 of file wm_message_bus_rna.c.
References wmMsgParams_RNA::data_path, ListBase::first, wmMsgSubscribeKey_RNA::head, MEM_freeN, wmMsgSubscribeKey_RNA::msg, wmMsgSubscribeValueLink::next, NULL, wmMsg_RNA::params, wmMsgSubscribeKey::values, and wm_msg_subscribe_value_free().
Referenced by wm_msg_rna_remove_by_id(), wm_msg_rna_update_by_id(), and WM_msgtypeinfo_init_rna().
Definition at line 161 of file wm_message_bus_rna.c.
References BLI_gset_remove(), BLI_gsetIterator_done(), BLI_gsetIterator_getKey(), BLI_gsetIterator_init(), BLI_gsetIterator_step(), BLI_remlink(), ListBase::first, wmMsgSubscribeKey_RNA::head, wmMsgBus::messages, wmMsgBus::messages_gset, wmMsgBus::messages_tag_count, wmMsgSubscribeKey_RNA::msg, NULL, PointerRNA::owner_id, wmMsg_RNA::params, wmMsgParams_RNA::ptr, wmMsgSubscribeKey::values, wm_msg_rna_gset_key_free(), wm_msg_subscribe_value_free(), and WM_MSG_TYPE_RNA.
Referenced by WM_msgtypeinfo_init_rna().
|
static |
Definition at line 69 of file wm_message_bus_rna.c.
References BLI_listbase_count(), wmMsg_RNA::head, wmMsgSubscribeKey_RNA::head, wmMsg::id, wmMsgSubscribeKey_RNA::msg, none(), wmMsg_RNA::params, wmMsgParams_RNA::prop, wmMsgParams_RNA::ptr, RNA_property_identifier(), RNA_struct_identifier(), PointerRNA::type, and wmMsgSubscribeKey::values.
Referenced by WM_msgtypeinfo_init_rna().
Definition at line 84 of file wm_message_bus_rna.c.
References BLI_assert, BLI_gset_add(), BLI_gset_haskey(), BLI_gset_remove(), BLI_gsetIterator_done(), BLI_gsetIterator_getKey(), BLI_gsetIterator_init(), BLI_gsetIterator_step(), BLI_listbase_is_empty(), BLI_remlink(), PointerRNA::data, wmMsgParams_RNA::data_path, ListBase::first, wmMsgSubscribeKey_RNA::head, wmMsgBus::messages, wmMsgBus::messages_gset, wmMsgBus::messages_tag_count, wmMsgSubscribeKey_RNA::msg, NULL, PointerRNA::owner_id, wmMsg_RNA::params, wmMsgParams_RNA::prop, ptr, wmMsgParams_RNA::ptr, blender::bke::attribute_accessor_functions::remove(), RNA_id_pointer_create(), RNA_path_resolve(), wmMsgSubscribeKey::values, wm_msg_rna_gset_key_free(), wm_msg_subscribe_value_free(), and WM_MSG_TYPE_RNA.
Referenced by WM_msgtypeinfo_init_rna().
void WM_msg_subscribe_ID | ( | struct wmMsgBus * | mbus, |
ID * | id, | ||
const wmMsgSubscribeValue * | msg_val_params, | ||
const char * | id_repr | ||
) |
Definition at line 330 of file wm_message_bus_rna.c.
References NULL, wmMsgParams_RNA::ptr, RNA_id_pointer_create(), and WM_msg_subscribe_rna_params().
void WM_msg_subscribe_rna | ( | struct wmMsgBus * | mbus, |
PointerRNA * | ptr, | ||
const PropertyRNA * | prop, | ||
const wmMsgSubscribeValue * | msg_val_params, | ||
const char * | id_repr | ||
) |
Definition at line 307 of file wm_message_bus_rna.c.
References ptr, and WM_msg_subscribe_rna_params().
Referenced by ED_region_do_draw(), file_main_region_message_subscribe(), gizmo2d_pivot_point_message_subscribe(), gizmo_mesh_extrude_message_subscribe(), gizmo_mesh_spin_init_message_subscribe(), gizmo_xform_message_subscribe(), graph_region_message_subscribe(), nla_main_region_message_subscribe(), saction_main_region_message_subscribe(), sequencer_main_region_message_subscribe(), ui_block_message_subscribe(), WIDGETGROUP_camera_message_subscribe(), WIDGETGROUP_gizmo_message_subscribe(), and WM_gizmo_target_property_subscribe_all().
void WM_msg_subscribe_rna_params | ( | struct wmMsgBus * | mbus, |
const wmMsgParams_RNA * | msg_key_params, | ||
const wmMsgSubscribeValue * | msg_val_params, | ||
const char * | id_repr | ||
) |
Definition at line 271 of file wm_message_bus_rna.c.
References CLOG_INFO, PointerRNA::data, wmMsgParams_RNA::data_path, wmMsg_RNA::head, wmMsgSubscribeKey_RNA::head, wmMsg::id, wmMsgSubscribeValue::is_persistent, wmMsgSubscribeKey_RNA::msg, ID::name, none(), NULL, PointerRNA::owner_id, wmMsg_RNA::params, wmMsgParams_RNA::prop, wmMsgParams_RNA::ptr, RNA_path_from_ID_to_struct(), RNA_property_identifier(), RNA_struct_identifier(), PointerRNA::type, wmMsg::type, WM_LOG_MSGBUS_SUB, WM_msg_subscribe_with_key(), and WM_MSG_TYPE_RNA.
Referenced by bpy_msgbus_subscribe_rna(), gizmo_mesh_extrude_message_subscribe(), gizmo_mesh_spin_init_message_subscribe(), graph_region_message_subscribe(), nla_channel_region_message_subscribe(), saction_channel_region_message_subscribe(), sequencer_main_region_message_subscribe(), view3d_header_region_message_subscribe(), view3d_main_region_message_subscribe(), WM_msg_subscribe_ID(), and WM_msg_subscribe_rna().
void WM_msgtypeinfo_init_rna | ( | wmMsgTypeInfo * | msgtype_info | ) |
Definition at line 187 of file wm_message_bus_rna.c.
References wmMsgTypeInfo::cmp_fn, wmMsgTypeInfo::gset, wmMsgTypeInfo::hash_fn, wmMsgTypeInfo::key_free_fn, wmMsgTypeInfo::msg_key_size, wmMsgTypeInfo::remove_by_id, wmMsgTypeInfo::repr, wmMsgTypeInfo::update_by_id, wm_msg_rna_gset_cmp(), wm_msg_rna_gset_hash(), wm_msg_rna_gset_key_free(), wm_msg_rna_remove_by_id(), wm_msg_rna_repr(), and wm_msg_rna_update_by_id().