Blender V5.0
dna_utils.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
8
9#pragma once
10
11#include "BLI_sys_types.h"
12
13#ifdef __cplusplus
14extern "C" {
15#endif
16
17struct GHash;
18struct MemArena;
19
27
33int DNA_member_array_num(const char *str);
34
36uint DNA_member_id_offset_start(const char *member_full);
44uint DNA_member_id_offset_end(const char *member_full_trimmed);
50uint DNA_member_id_strip_copy(char *member_id_dst, const char *member_full_src);
54uint DNA_member_id_strip(char *member);
61bool DNA_member_id_match(const char *member_id,
62 int member_id_len,
63 const char *member_full,
64 uint *r_member_full_offset);
74 const char *member_id_src,
75 int member_id_src_len,
76 const char *member_id_dst,
77 int member_id_dst_len,
78 const char *member_full_src,
79 int member_full_src_len,
80 uint member_full_src_offset_len);
81
93void DNA_alias_maps(enum eDNA_RenameDir version_dir,
94 struct GHash **r_type_map,
95 struct GHash **r_member_map);
96
102
103#ifdef __cplusplus
104}
105#endif
unsigned int uint
const char * DNA_struct_rename_legacy_hack_static_from_alias(const char *name)
Definition dna_utils.cc:292
const char * DNA_struct_rename_legacy_hack_alias_from_static(const char *name)
Definition dna_utils.cc:308
uint DNA_member_id_offset_end(const char *member_full_trimmed)
Definition dna_utils.cc:87
int DNA_member_array_num(const char *str)
Definition dna_utils.cc:29
bool DNA_member_id_match(const char *member_id, int member_id_len, const char *member_full, uint *r_member_full_offset)
Definition dna_utils.cc:116
uint DNA_member_id_offset_start(const char *member_full)
Definition dna_utils.cc:74
eDNA_RenameDir
Definition dna_utils.h:89
@ DNA_RENAME_ALIAS_FROM_STATIC
Definition dna_utils.h:91
@ DNA_RENAME_STATIC_FROM_ALIAS
Definition dna_utils.h:90
char * DNA_member_id_rename(struct MemArena *mem_arena, const char *member_id_src, int member_id_src_len, const char *member_id_dst, int member_id_dst_len, const char *member_full_src, int member_full_src_len, uint member_full_src_offset_len)
Definition dna_utils.cc:134
uint DNA_member_id_strip(char *member)
Definition dna_utils.cc:106
void DNA_alias_maps(enum eDNA_RenameDir version_dir, struct GHash **r_type_map, struct GHash **r_member_map)
uint DNA_member_id_strip_copy(char *member_id_dst, const char *member_full_src)
Definition dna_utils.cc:96
#define str(s)
static MemArena * mem_arena
Definition makesdna.cc:62
const char * name