Blender V4.3
BlenderContext.h
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2023 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
9#pragma once
10
11#include "BKE_context.hh"
12#include "BKE_main.hh"
13#include "BLI_linklist.h"
14#include "BlenderTypes.h"
15#include "DEG_depsgraph.hh"
17#include "DNA_layer_types.h"
18#include "DNA_object_types.h"
19
20#ifdef __cplusplus
21extern "C" {
22#endif
23
26
27bool bc_is_in_Export_set(LinkNode *export_set,
28 Object *ob,
29 const Scene *scene,
30 ViewLayer *view_layer);
31bool bc_is_base_node(LinkNode *export_set, Object *ob, const Scene *scene, ViewLayer *view_layer);
39 Object *ob,
40 const Scene *scene,
41 ViewLayer *view_layer);
42int bc_is_marked(Object *ob);
43void bc_remove_mark(Object *ob);
44void bc_set_mark(Object *ob);
45
46#ifdef __cplusplus
47}
48
49class BlenderContext {
50 private:
51 bContext *context;
52 Depsgraph *depsgraph;
53 Scene *scene;
54 ViewLayer *view_layer;
55 Main *main;
56
57 public:
58 BlenderContext(bContext *C);
59 bContext *get_context();
60 Depsgraph *get_depsgraph();
61 Scene *get_scene();
62 Scene *get_evaluated_scene();
63 Object *get_evaluated_object(Object *ob);
64 ViewLayer *get_view_layer();
65 Main *get_main();
66};
67#endif
static const BC_global_forward_axis BC_DEFAULT_FORWARD
bool bc_is_base_node(LinkNode *export_set, Object *ob, const Scene *scene, ViewLayer *view_layer)
void bc_remove_mark(Object *ob)
Object * bc_get_highest_exported_ancestor_or_self(LinkNode *export_set, Object *ob, const Scene *scene, ViewLayer *view_layer)
bool bc_is_in_Export_set(LinkNode *export_set, Object *ob, const Scene *scene, ViewLayer *view_layer)
int bc_is_marked(Object *ob)
static const BC_global_up_axis BC_DEFAULT_UP
void bc_set_mark(Object *ob)
BC_global_up_axis
@ BC_GLOBAL_UP_Z
BC_global_forward_axis
@ BC_GLOBAL_FORWARD_Y
Object is a sort of wrapper for general info.
const Depsgraph * depsgraph
int main()