Blender V4.3
light_linking.cc File Reference
#include "BKE_light_linking.h"
#include <string>
#include "MEM_guardedalloc.h"
#include "DNA_ID.h"
#include "DNA_collection_types.h"
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
#include "BLI_assert.h"
#include "BLI_string.h"
#include "BKE_collection.hh"
#include "BKE_layer.hh"
#include "BKE_lib_id.hh"
#include "BKE_report.hh"
#include "BLT_translation.hh"
#include "DEG_depsgraph.hh"
#include "DEG_depsgraph_build.hh"

Go to the source code of this file.

Functions

void BKE_light_linking_free_if_empty (Object *object)
 
CollectionBKE_light_linking_collection_get (const Object *object, const LightLinkingType link_type)
 
static std::string get_default_collection_name (const Object *object, const LightLinkingType link_type)
 
CollectionBKE_light_linking_collection_new (Main *bmain, Object *object, const LightLinkingType link_type)
 
void BKE_light_linking_collection_assign_only (Object *object, Collection *new_collection, const LightLinkingType link_type)
 
void BKE_light_linking_collection_assign (Main *bmain, Object *object, Collection *new_collection, const LightLinkingType link_type)
 
static CollectionObjectfind_collection_object (const Collection *collection, const Object *object)
 
static CollectionChildfind_collection_child (const Collection *collection, const Collection *child)
 
static CollectionLightLinkinglight_linking_collection_add_object (Main *bmain, Collection *collection, Object *object)
 
static CollectionLightLinkinglight_linking_collection_add_collection (Main *bmain, Collection *collection, Collection *child)
 
void BKE_light_linking_add_receiver_to_collection (Main *bmain, Collection *collection, ID *receiver, const eCollectionLightLinkingState link_state)
 
static void order_collection_receiver_before (Collection *collection, Collection *receiver, const ID *before)
 
static void order_collection_receiver_after (Collection *collection, Collection *receiver, const ID *after)
 
static void order_object_receiver_before (Collection *collection, Object *receiver, const ID *before)
 
static void order_object_receiver_after (Collection *collection, Object *receiver, const ID *after)
 
void BKE_light_linking_add_receiver_to_collection_before (Main *bmain, Collection *collection, ID *receiver, const ID *before, const eCollectionLightLinkingState link_state)
 
void BKE_light_linking_add_receiver_to_collection_after (Main *bmain, Collection *collection, ID *receiver, const ID *after, const eCollectionLightLinkingState link_state)
 
bool BKE_light_linking_unlink_id_from_collection (Main *bmain, Collection *collection, ID *id, ReportList *reports)
 
void BKE_light_linking_link_receiver_to_emitter (Main *bmain, Object *emitter, Object *receiver, const LightLinkingType link_type, const eCollectionLightLinkingState link_state)
 
void BKE_light_linking_select_receivers_of_emitter (Scene *scene, ViewLayer *view_layer, Object *emitter, const LightLinkingType link_type)
 

Function Documentation

◆ BKE_light_linking_add_receiver_to_collection()

◆ BKE_light_linking_add_receiver_to_collection_after()

void BKE_light_linking_add_receiver_to_collection_after ( Main * bmain,
Collection * collection,
ID * receiver,
const ID * after,
const eCollectionLightLinkingState link_state )

◆ BKE_light_linking_add_receiver_to_collection_before()

void BKE_light_linking_add_receiver_to_collection_before ( Main * bmain,
Collection * collection,
ID * receiver,
const ID * before,
const eCollectionLightLinkingState link_state )

◆ BKE_light_linking_collection_assign()

void BKE_light_linking_collection_assign ( Main * bmain,
Object * object,
Collection * new_collection,
const LightLinkingType link_type )

◆ BKE_light_linking_collection_assign_only()

void BKE_light_linking_collection_assign_only ( Object * object,
Collection * new_collection,
const LightLinkingType link_type )

◆ BKE_light_linking_collection_get()

◆ BKE_light_linking_collection_new()

◆ BKE_light_linking_free_if_empty()

void BKE_light_linking_free_if_empty ( Object * object)

◆ BKE_light_linking_link_receiver_to_emitter()

void BKE_light_linking_link_receiver_to_emitter ( Main * bmain,
Object * emitter,
Object * receiver,
const LightLinkingType link_type,
const eCollectionLightLinkingState link_state )

◆ BKE_light_linking_select_receivers_of_emitter()

◆ BKE_light_linking_unlink_id_from_collection()

◆ find_collection_child()

static CollectionChild * find_collection_child ( const Collection * collection,
const Collection * child )
static

◆ find_collection_object()

static CollectionObject * find_collection_object ( const Collection * collection,
const Object * object )
static

◆ get_default_collection_name()

static std::string get_default_collection_name ( const Object * object,
const LightLinkingType link_type )
static

◆ light_linking_collection_add_collection()

static CollectionLightLinking * light_linking_collection_add_collection ( Main * bmain,
Collection * collection,
Collection * child )
static

◆ light_linking_collection_add_object()

static CollectionLightLinking * light_linking_collection_add_object ( Main * bmain,
Collection * collection,
Object * object )
static

◆ order_collection_receiver_after()

static void order_collection_receiver_after ( Collection * collection,
Collection * receiver,
const ID * after )
static

◆ order_collection_receiver_before()

static void order_collection_receiver_before ( Collection * collection,
Collection * receiver,
const ID * before )
static

◆ order_object_receiver_after()

static void order_object_receiver_after ( Collection * collection,
Object * receiver,
const ID * after )
static

◆ order_object_receiver_before()

static void order_object_receiver_before ( Collection * collection,
Object * receiver,
const ID * before )
static