Blender V4.3
BKE_pbvh.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2023 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
5#pragma once
6
11#include "BLI_utildefines.h"
12
13struct BMesh;
14
15namespace blender::bke::pbvh {
16
17class Node;
18class Tree;
19
20enum class Type {
21 Mesh,
22 Grids,
23 BMesh,
24};
25
26} // namespace blender::bke::pbvh
27
28/* #PBVHNodeFlags is needed by `DRW_render.hh` and `draw_cache.cc`. */
30 PBVH_Leaf = 1 << 0,
31
33
37
40 PBVH_TexLeaf = 1 << 16,
43};
45
47 void (*draw_fn)(blender::bke::pbvh::Node *node,
48 void *user_data,
49 const float bmin[3],
50 const float bmax[3],
52 void *user_data);
void BKE_pbvh_draw_debug_cb(blender::bke::pbvh::Tree &pbvh, void(*draw_fn)(blender::bke::pbvh::Node *node, void *user_data, const float bmin[3], const float bmax[3], PBVHNodeFlags flag), void *user_data)
Definition pbvh.cc:2368
PBVHNodeFlags
Definition BKE_pbvh.hh:29
@ PBVH_RebuildPixels
Definition BKE_pbvh.hh:39
@ PBVH_FullyMasked
Definition BKE_pbvh.hh:35
@ PBVH_TopologyUpdated
Definition BKE_pbvh.hh:42
@ PBVH_TexLeaf
Definition BKE_pbvh.hh:40
@ PBVH_UpdateTopology
Definition BKE_pbvh.hh:38
@ PBVH_FullyHidden
Definition BKE_pbvh.hh:34
@ PBVH_Leaf
Definition BKE_pbvh.hh:30
@ PBVH_UpdateRedraw
Definition BKE_pbvh.hh:32
@ PBVH_FullyUnmasked
Definition BKE_pbvh.hh:36
#define ENUM_OPERATORS(_type, _max)
uint8_t flag
Definition wm_window.cc:138