opynsim
Unofficial C++ Documentation
Loading...
Searching...
No Matches
overlay_decoration_option_flags.h
Go to the documentation of this file.
1#pragma once
2
5
6#include <cstddef>
7#include <cstdint>
8#include <span>
9#include <utility>
10
11namespace opyn
12{
13 enum class OverlayDecorationOptionFlags : uint32_t {
14 None = 0,
15 DrawXZGrid = 1<<0,
16 DrawXYGrid = 1<<1,
17 DrawYZGrid = 1<<2,
18 DrawAxisLines = 1<<3,
19 DrawAABBs = 1<<4,
20 DrawBVH = 1<<5,
21 NUM_FLAGS = 6,
22
23 Default = None,
24 };
25
27 {
28 return (std::to_underlying(lhs) & std::to_underlying(rhs)) != 0;
29 }
30
32 {
33 if (v)
34 {
35 flags = static_cast<OverlayDecorationOptionFlags>(std::to_underlying(flags) | std::to_underlying(flag));
36 }
37 else
38 {
39 flags = static_cast<OverlayDecorationOptionFlags>(std::to_underlying(flags) & ~std::to_underlying(flag));
40 }
41 }
42
44 {
45 i = i < osc::num_flags<OverlayDecorationOptionFlags>() ? i : 0;
46 return static_cast<OverlayDecorationOptionFlags>(1<<i);
47 }
48
54
62 std::span<const OverlayDecorationOptionFlagsMetadata> GetAllOverlayDecorationOptionFlagsMetadata();
63}
Definition c_string_view.h:12
Definition component_registry.h:14
constexpr void SetOption(CustomRenderingOptionFlags &flags, CustomRenderingOptionFlags flag, bool v)
Definition custom_rendering_option_flags.h:29
OverlayDecorationOptionFlags
Definition overlay_decoration_option_flags.h:13
constexpr bool operator&(LandmarkCSVFlags lhs, LandmarkCSVFlags rhs)
Definition landmark_csv_flags.h:18
osc::CStringView getLabel(OverlayDecorationOptionGroup)
OverlayDecorationOptionGroup
Definition overlay_decoration_option_flags.h:49
constexpr OverlayDecorationOptionFlags IthOption(size_t i)
Definition overlay_decoration_option_flags.h:43
std::span< const OverlayDecorationOptionFlagsMetadata > GetAllOverlayDecorationOptionFlagsMetadata()
Definition overlay_decoration_option_flags.h:55
OverlayDecorationOptionFlags value
Definition overlay_decoration_option_flags.h:59
OverlayDecorationOptionGroup group
Definition overlay_decoration_option_flags.h:58
osc::CStringView label
Definition overlay_decoration_option_flags.h:57
osc::CStringView id
Definition overlay_decoration_option_flags.h:56