Blender  V3.3
Macros | Functions | Variables
light.c File Reference
#include <stdlib.h>
#include "MEM_guardedalloc.h"
#include "DNA_anim_types.h"
#include "DNA_defaults.h"
#include "DNA_light_types.h"
#include "DNA_material_types.h"
#include "DNA_node_types.h"
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
#include "DNA_texture_types.h"
#include "BLI_math.h"
#include "BLI_utildefines.h"
#include "BKE_anim_data.h"
#include "BKE_colortools.h"
#include "BKE_icons.h"
#include "BKE_idtype.h"
#include "BKE_lib_id.h"
#include "BKE_lib_query.h"
#include "BKE_light.h"
#include "BKE_main.h"
#include "BKE_node.h"
#include "BLT_translation.h"
#include "DEG_depsgraph.h"
#include "BLO_read_write.h"

Go to the source code of this file.

Macros

#define DNA_DEPRECATED_ALLOW
 

Functions

static void light_init_data (ID *id)
 
static void light_copy_data (Main *bmain, ID *id_dst, const ID *id_src, const int flag)
 
static void light_free_data (ID *id)
 
static void light_foreach_id (ID *id, LibraryForeachIDData *data)
 
static void light_blend_write (BlendWriter *writer, ID *id, const void *id_address)
 
static void light_blend_read_data (BlendDataReader *reader, ID *id)
 
static void light_blend_read_lib (BlendLibReader *reader, ID *id)
 
static void light_blend_read_expand (BlendExpander *expander, ID *id)
 
LightBKE_light_add (Main *bmain, const char *name)
 
void BKE_light_eval (struct Depsgraph *depsgraph, Light *la)
 

Variables

IDTypeInfo IDType_ID_LA
 

Macro Definition Documentation

◆ DNA_DEPRECATED_ALLOW

#define DNA_DEPRECATED_ALLOW

Definition at line 13 of file light.c.

Function Documentation

◆ BKE_light_add()

Light* BKE_light_add ( Main bmain,
const char *  name 
)

◆ BKE_light_eval()

void BKE_light_eval ( struct Depsgraph depsgraph,
Light la 
)

Definition at line 212 of file light.c.

References DEG_debug_print_eval(), depsgraph, Light::id, and ID::name.

◆ light_blend_read_data()

static void light_blend_read_data ( BlendDataReader reader,
ID id 
)
static

◆ light_blend_read_expand()

static void light_blend_read_expand ( BlendExpander expander,
ID id 
)
static

Definition at line 167 of file light.c.

References BLO_expand.

◆ light_blend_read_lib()

static void light_blend_read_lib ( BlendLibReader reader,
ID id 
)
static

Definition at line 161 of file light.c.

References BLO_read_id_address, Light::id, and ID::lib.

◆ light_blend_write()

static void light_blend_write ( BlendWriter writer,
ID id,
const void id_address 
)
static

◆ light_copy_data()

static void light_copy_data ( Main bmain,
ID id_dst,
const ID id_src,
const int  flag 
)
static

Only copy internal data of Light ID from source to already allocated/initialized destination. You probably never want to use that directly, use BKE_id_copy or BKE_id_copy_ex for typical needs.

WARNING! This function will not handle ID user count!

Parameters
flagCopying options (see BKE_lib_id.h's LIB_ID_COPY_... flags for more).

Definition at line 64 of file light.c.

References BKE_curvemapping_copy(), BKE_id_copy_ex(), BKE_previewimg_id_copy(), Light::curfalloff, Light::id, LIB_ID_COPY_NO_PREVIEW, LIB_ID_CREATE_LOCAL, LIB_ID_CREATE_NO_ALLOCATE, Light::nodetree, ntreeLocalize, NULL, and Light::preview.

◆ light_foreach_id()

static void light_foreach_id ( ID id,
LibraryForeachIDData data 
)
static

◆ light_free_data()

static void light_free_data ( ID id)
static

◆ light_init_data()

static void light_init_data ( ID id)
static

Variable Documentation

◆ IDType_ID_LA

IDTypeInfo IDType_ID_LA
Initial value:
= {
.id_code = ID_LA,
.id_filter = FILTER_ID_LA,
.main_listbase_index = INDEX_ID_LA,
.struct_size = sizeof(Light),
.name = "Light",
.name_plural = "lights",
.translation_context = BLT_I18NCONTEXT_ID_LIGHT,
.asset_type_info = NULL,
.copy_data = light_copy_data,
.free_data = light_free_data,
.make_local = NULL,
.foreach_id = light_foreach_id,
.foreach_cache = NULL,
.foreach_path = NULL,
.owner_get = NULL,
.blend_write = light_blend_write,
.blend_read_data = light_blend_read_data,
.blend_read_lib = light_blend_read_lib,
.blend_read_expand = light_blend_read_expand,
.blend_read_undo_preserve = NULL,
.lib_override_apply_post = NULL,
}
@ IDTYPE_FLAGS_APPEND_IS_REUSABLE
Definition: BKE_idtype.h:39
#define BLT_I18NCONTEXT_ID_LIGHT
@ INDEX_ID_LA
Definition: DNA_ID.h:1033
#define FILTER_ID_LA
Definition: DNA_ID.h:907
@ ID_LA
Definition: DNA_ID_enums.h:55
struct Light Light
static void init_data(ModifierData *md)
static void light_blend_read_expand(BlendExpander *expander, ID *id)
Definition: light.c:167
static void light_foreach_id(ID *id, LibraryForeachIDData *data)
Definition: light.c:111
static void light_blend_read_data(BlendDataReader *reader, ID *id)
Definition: light.c:146
static void light_blend_read_lib(BlendLibReader *reader, ID *id)
Definition: light.c:161
static void light_blend_write(BlendWriter *writer, ID *id, const void *id_address)
Definition: light.c:121
static void light_copy_data(Main *bmain, ID *id_dst, const ID *id_src, const int flag)
Definition: light.c:64
static void light_free_data(ID *id)
Definition: light.c:93
static void light_init_data(ID *id)
Definition: light.c:43

Definition at line 173 of file light.c.