Blender
V5.0
source
blender
makesdna
DNA_sdna_pointers.hh
Go to the documentation of this file.
1
/* SPDX-FileCopyrightText: 2025 Blender Authors
2
*
3
* SPDX-License-Identifier: GPL-2.0-or-later */
4
5
#pragma once
6
7
#include "
BLI_vector.hh
"
8
9
#include "
DNA_sdna_types.h
"
10
11
namespace
blender::dna::pointers
{
12
14
struct
PointerInfo
{
16
int64_t
offset
;
18
const
char
*
member_type_name
=
nullptr
;
19
const
char
*
name
=
nullptr
;
20
};
21
23
struct
StructInfo
{
25
Vector<PointerInfo>
pointers
;
27
int
size_in_bytes
= 0;
28
};
29
33
class
PointersInDNA
{
34
private
:
36
const
SDNA
&sdna_;
38
Vector<StructInfo>
structs_;
39
40
public
:
41
explicit
PointersInDNA
(
const
SDNA
&sdna);
42
43
const
StructInfo
&
get_for_struct
(
const
int
struct_nr)
const
44
{
45
return
structs_[struct_nr];
46
}
47
48
private
:
49
void
gather_pointer_members_recursive(
const
SDNA_Struct
&sdna_struct,
50
int
initial_offset,
51
StructInfo
&r_struct_info)
const
;
52
};
53
54
}
// namespace blender::dna::pointers
BLI_vector.hh
DNA_sdna_types.h
int64_t
long long int int64_t
Definition
btConvexHullComputer.cpp:31
blender::Vector
Definition
BLI_vector.hh:76
blender::dna::pointers::PointersInDNA::PointersInDNA
PointersInDNA(const SDNA &sdna)
Definition
dna_genfile.cc:1968
blender::dna::pointers::PointersInDNA::get_for_struct
const StructInfo & get_for_struct(const int struct_nr) const
Definition
DNA_sdna_pointers.hh:43
blender::dna::pointers
Definition
DNA_sdna_pointers.hh:11
SDNA_Struct
Definition
DNA_sdna_types.h:27
SDNA
Definition
DNA_sdna_types.h:40
blender::dna::pointers::PointerInfo
Definition
DNA_sdna_pointers.hh:14
blender::dna::pointers::PointerInfo::member_type_name
const char * member_type_name
Definition
DNA_sdna_pointers.hh:18
blender::dna::pointers::PointerInfo::offset
int64_t offset
Definition
DNA_sdna_pointers.hh:16
blender::dna::pointers::PointerInfo::name
const char * name
Definition
DNA_sdna_pointers.hh:19
blender::dna::pointers::StructInfo
Definition
DNA_sdna_pointers.hh:23
blender::dna::pointers::StructInfo::size_in_bytes
int size_in_bytes
Definition
DNA_sdna_pointers.hh:27
blender::dna::pointers::StructInfo::pointers
Vector< PointerInfo > pointers
Definition
DNA_sdna_pointers.hh:25
Generated on
for Blender by
doxygen
1.16.1