Changeset View
Changeset View
Standalone View
Standalone View
source/blender/makesdna/DNA_layer_types.h
| Show All 25 Lines | |||||
| #ifndef __DNA_LAYER_TYPES_H__ | #ifndef __DNA_LAYER_TYPES_H__ | ||||
| #define __DNA_LAYER_TYPES_H__ | #define __DNA_LAYER_TYPES_H__ | ||||
| #ifdef __cplusplus | #ifdef __cplusplus | ||||
| extern "C" { | extern "C" { | ||||
| #endif | #endif | ||||
| #include "DNA_freestyle_types.h" | |||||
| #include "DNA_listBase.h" | #include "DNA_listBase.h" | ||||
| typedef struct Base { | typedef struct Base { | ||||
| struct Base *next, *prev; | struct Base *next, *prev; | ||||
| short flag; | short flag; | ||||
| short refcount; | short refcount; | ||||
| short sx, sy; | short sx, sy; | ||||
| struct Object *object; | struct Object *object; | ||||
| Show All 37 Lines | typedef struct SceneLayer { | ||||
| short pad[2]; | short pad[2]; | ||||
| ListBase object_bases; /* ObjectBase */ | ListBase object_bases; /* ObjectBase */ | ||||
| struct SceneStats *stats; /* default allocated now */ | struct SceneStats *stats; /* default allocated now */ | ||||
| struct Base *basact; | struct Base *basact; | ||||
| ListBase layer_collections; /* LayerCollection */ | ListBase layer_collections; /* LayerCollection */ | ||||
| struct IDProperty *properties; /* overrides */ | struct IDProperty *properties; /* overrides */ | ||||
| struct IDProperty *properties_evaluated; | struct IDProperty *properties_evaluated; | ||||
| /* Old SceneRenderLayer data. */ | |||||
| int layflag; | |||||
| int passflag; /* pass_xor has to be after passflag */ | |||||
| int pass_xor; | |||||
| float pass_alpha_threshold; | |||||
| struct IDProperty *id_properties; /* Equivalent to datablocks ID properties. */ | |||||
| struct FreestyleConfig freestyle_config; | |||||
campbellbarton: What is the purpose of these values moving forward `layflag` for eg, doesn't seem to be used. | |||||
Not Done Inline ActionsTechnically layflag was used here: rl->layflag = scene_layer->layflag;in render_result_new(). I will bring it back now. But this seems all legacy features from before the custom passes patch. dfelinto: Technically `layflag` was used here: `rl->layflag = scene_layer->layflag;`in `render_result_new… | |||||
Not Done Inline Actionspicky - prefer snake case, already used all over. campbellbarton: picky - prefer snake case, already used all over. | |||||
| /* Runtime data */ | /* Runtime data */ | ||||
| ListBase drawdata; /* SceneLayerEngineData */ | ListBase drawdata; /* SceneLayerEngineData */ | ||||
| } SceneLayer; | } SceneLayer; | ||||
| typedef struct SceneCollection { | typedef struct SceneCollection { | ||||
| struct SceneCollection *next, *prev; | struct SceneCollection *next, *prev; | ||||
| char name[64]; /* MAX_NAME */ | char name[64]; /* MAX_NAME */ | ||||
| char filter[64]; /* MAX_NAME */ | char filter[64]; /* MAX_NAME */ | ||||
| Show All 20 Lines | enum { | ||||
| COLLECTION_SELECTABLE = (1 << 1), | COLLECTION_SELECTABLE = (1 << 1), | ||||
| COLLECTION_DISABLED = (1 << 2), | COLLECTION_DISABLED = (1 << 2), | ||||
| }; | }; | ||||
| /* SceneLayer->flag */ | /* SceneLayer->flag */ | ||||
| enum { | enum { | ||||
| SCENE_LAYER_RENDER = (1 << 0), | SCENE_LAYER_RENDER = (1 << 0), | ||||
| SCENE_LAYER_ENGINE_DIRTY = (1 << 1), | SCENE_LAYER_ENGINE_DIRTY = (1 << 1), | ||||
| SCENE_LAYER_FREESTYLE = (1 << 2), | |||||
| }; | }; | ||||
| /* *************************************************************** */ | /* *************************************************************** */ | ||||
| /* Engine Settings */ | /* Engine Settings */ | ||||
| /* CollectionEngineSettings->type */ | /* CollectionEngineSettings->type */ | ||||
| typedef enum CollectionEngineSettingsType { | typedef enum CollectionEngineSettingsType { | ||||
| Show All 16 Lines | |||||
What is the purpose of these values moving forward layflag for eg, doesn't seem to be used.
Is this just for versioning so they can be used later?
If this is only for loading old file data. All old values could be moved into a sub-struct legacy_data or similar, so we know whats for versioning and whats meant to be used for new code.