Blender
V5.0
source
blender
blenlib
BLI_cpp_types.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
8
9
#pragma once
10
11
#include "
BLI_cpp_type.hh
"
12
13
namespace
blender
{
14
18
class
VectorCPPType
{
19
public
:
21
const
CPPType
&
self
;
23
const
CPPType
&
value
;
24
25
template
<
typename
ValueType>
VectorCPPType
(
TypeTag<ValueType>
/*value_type*/
);
26
30
static
const
VectorCPPType
*
get_from_self
(
const
CPPType
&
self
);
35
static
const
VectorCPPType
*
get_from_value
(
const
CPPType
&
value
);
36
37
template
<
typename
ValueType>
static
const
VectorCPPType
&
get
()
38
{
39
static
const
VectorCPPType
&type =
VectorCPPType::get_impl<std::decay_t<ValueType>
>();
40
return
type;
41
}
42
43
template
<
typename
ValueType>
static
const
VectorCPPType
&
get_impl
();
44
45
private
:
46
void
register_self();
47
};
48
49
}
// namespace blender
BLI_cpp_type.hh
blender::CPPType
Definition
BLI_cpp_type.hh:100
blender::VectorCPPType::self
const CPPType & self
Definition
BLI_cpp_types.hh:21
blender::VectorCPPType::get_impl
static const VectorCPPType & get_impl()
blender::VectorCPPType::get_from_self
static const VectorCPPType * get_from_self(const CPPType &self)
Definition
blenlib/intern/cpp_types.cc:36
blender::VectorCPPType::value
const CPPType & value
Definition
BLI_cpp_types.hh:23
blender::VectorCPPType::get_from_value
static const VectorCPPType * get_from_value(const CPPType &value)
Definition
blenlib/intern/cpp_types.cc:43
blender::VectorCPPType::VectorCPPType
VectorCPPType(TypeTag< ValueType >)
Definition
BLI_cpp_types_make.hh:17
blender::VectorCPPType::get
static const VectorCPPType & get()
Definition
BLI_cpp_types.hh:37
blender
Definition
ANIM_action.hh:36
blender::TypeTag
Definition
BLI_parameter_pack_utils.hh:30
Generated on
for Blender by
doxygen
1.16.1