[Bf-blender-cvs] [9b3fda03573] master: Refactor: use new api for direct linking armature, action, nodetree and brush
Jacques Lucke
noreply at git.blender.org
Sat Jun 6 14:35:07 CEST 2020
Commit: 9b3fda035734cce6f3118f201c2081cbac59ae98
Author: Jacques Lucke
Date: Sat Jun 6 14:34:57 2020 +0200
Branches: master
https://developer.blender.org/rB9b3fda035734cce6f3118f201c2081cbac59ae98
Refactor: use new api for direct linking armature, action, nodetree and brush
===================================================================
M source/blender/blenloader/intern/readfile.c
===================================================================
diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c
index ca75590a9e1..13f4aeaf986 100644
--- a/source/blender/blenloader/intern/readfile.c
+++ b/source/blender/blenloader/intern/readfile.c
@@ -2796,7 +2796,7 @@ static void direct_link_id_override_property_cb(FileData *fd, void *data)
static void direct_link_id_common(
FileData *fd, Library *current_library, ID *id, ID *id_old, const int tag);
-static void direct_link_nodetree(FileData *fd, bNodeTree *ntree);
+static void direct_link_nodetree(BlendDataReader *reader, bNodeTree *ntree);
static void direct_link_collection(BlendDataReader *reader, Collection *collection);
static void direct_link_id_embedded_id(FileData *fd, Library *current_library, ID *id, ID *id_old)
@@ -2812,7 +2812,7 @@ static void direct_link_id_embedded_id(FileData *fd, Library *current_library, I
(ID *)*nodetree,
id_old != NULL ? (ID *)ntreeFromID(id_old) : NULL,
0);
- direct_link_nodetree(fd, *nodetree);
+ direct_link_nodetree(&reader, *nodetree);
}
if (GS(id->name) == ID_SCE) {
@@ -3020,78 +3020,70 @@ static void lib_link_brush(FileData *fd, Main *UNUSED(bmain), Brush *brush)
}
}
-static void direct_link_brush(FileData *fd, Brush *brush)
+static void direct_link_brush(BlendDataReader *reader, Brush *brush)
{
/* brush itself has been read */
/* fallof curve */
- brush->curve = newdataadr(fd, brush->curve);
+ BLO_read_data_address(reader, &brush->curve);
- brush->gradient = newdataadr(fd, brush->gradient);
+ BLO_read_data_address(reader, &brush->gradient);
if (brush->curve) {
- direct_link_curvemapping(fd, brush->curve);
+ direct_link_curvemapping(reader->fd, brush->curve);
}
else {
BKE_brush_curve_preset(brush, CURVE_PRESET_SHARP);
}
/* grease pencil */
- brush->gpencil_settings = newdataadr(fd, brush->gpencil_settings);
+ BLO_read_data_address(reader, &brush->gpencil_settings);
if (brush->gpencil_settings != NULL) {
- brush->gpencil_settings->curve_sensitivity = newdataadr(
- fd, brush->gpencil_settings->curve_sensitivity);
- brush->gpencil_settings->curve_strength = newdataadr(fd,
- brush->gpencil_settings->curve_strength);
- brush->gpencil_settings->curve_jitter = newdataadr(fd, brush->gpencil_settings->curve_jitter);
-
- brush->gpencil_settings->curve_rand_pressure = newdataadr(
- fd, brush->gpencil_settings->curve_rand_pressure);
- brush->gpencil_settings->curve_rand_strength = newdataadr(
- fd, brush->gpencil_settings->curve_rand_strength);
- brush->gpencil_settings->curve_rand_uv = newdataadr(fd,
- brush->gpencil_settings->curve_rand_uv);
- brush->gpencil_settings->curve_rand_hue = newdataadr(fd,
- brush->gpencil_settings->curve_rand_hue);
- brush->gpencil_settings->curve_rand_saturation = newdataadr(
- fd, brush->gpencil_settings->curve_rand_saturation);
- brush->gpencil_settings->curve_rand_value = newdataadr(
- fd, brush->gpencil_settings->curve_rand_value);
+ BLO_read_data_address(reader, &brush->gpencil_settings->curve_sensitivity);
+ BLO_read_data_address(reader, &brush->gpencil_settings->curve_strength);
+ BLO_read_data_address(reader, &brush->gpencil_settings->curve_jitter);
+
+ BLO_read_data_address(reader, &brush->gpencil_settings->curve_rand_pressure);
+ BLO_read_data_address(reader, &brush->gpencil_settings->curve_rand_strength);
+ BLO_read_data_address(reader, &brush->gpencil_settings->curve_rand_uv);
+ BLO_read_data_address(reader, &brush->gpencil_settings->curve_rand_hue);
+ BLO_read_data_address(reader, &brush->gpencil_settings->curve_rand_saturation);
+ BLO_read_data_address(reader, &brush->gpencil_settings->curve_rand_value);
if (brush->gpencil_settings->curve_sensitivity) {
- direct_link_curvemapping(fd, brush->gpencil_settings->curve_sensitivity);
+ direct_link_curvemapping(reader->fd, brush->gpencil_settings->curve_sensitivity);
}
if (brush->gpencil_settings->curve_strength) {
- direct_link_curvemapping(fd, brush->gpencil_settings->curve_strength);
+ direct_link_curvemapping(reader->fd, brush->gpencil_settings->curve_strength);
}
if (brush->gpencil_settings->curve_jitter) {
- direct_link_curvemapping(fd, brush->gpencil_settings->curve_jitter);
+ direct_link_curvemapping(reader->fd, brush->gpencil_settings->curve_jitter);
}
if (brush->gpencil_settings->curve_rand_pressure) {
- direct_link_curvemapping(fd, brush->gpencil_settings->curve_rand_pressure);
+ direct_link_curvemapping(reader->fd, brush->gpencil_settings->curve_rand_pressure);
}
if (brush->gpencil_settings->curve_rand_strength) {
- direct_link_curvemapping(fd, brush->gpencil_settings->curve_rand_strength);
+ direct_link_curvemapping(reader->fd, brush->gpencil_settings->curve_rand_strength);
}
if (brush->gpencil_settings->curve_rand_uv) {
- direct_link_curvemapping(fd, brush->gpencil_settings->curve_rand_uv);
+ direct_link_curvemapping(reader->fd, brush->gpencil_settings->curve_rand_uv);
}
if (brush->gpencil_settings->curve_rand_hue) {
- direct_link_curvemapping(fd, brush->gpencil_settings->curve_rand_hue);
+ direct_link_curvemapping(reader->fd, brush->gpencil_settings->curve_rand_hue);
}
if (brush->gpencil_settings->curve_rand_saturation) {
- direct_link_curvemapping(fd, brush->gpencil_settings->curve_rand_saturation);
+ direct_link_curvemapping(reader->fd, brush->gpencil_settings->curve_rand_saturation);
}
if (brush->gpencil_settings->curve_rand_value) {
- direct_link_curvemapping(fd, brush->gpencil_settings->curve_rand_value);
+ direct_link_curvemapping(reader->fd, brush->gpencil_settings->curve_rand_value);
}
}
@@ -3393,29 +3385,29 @@ static void lib_link_action(FileData *fd, Main *UNUSED(bmain), bAction *act)
}
}
-static void direct_link_action(FileData *fd, bAction *act)
+static void direct_link_action(BlendDataReader *reader, bAction *act)
{
bActionChannel *achan; // XXX deprecated - old animation system
bActionGroup *agrp;
- link_list(fd, &act->curves);
- link_list(fd, &act->chanbase); // XXX deprecated - old animation system
- link_list(fd, &act->groups);
- link_list(fd, &act->markers);
+ BLO_read_list(reader, &act->curves);
+ BLO_read_list(reader, &act->chanbase); // XXX deprecated - old animation system
+ BLO_read_list(reader, &act->groups);
+ BLO_read_list(reader, &act->markers);
// XXX deprecated - old animation system <<<
for (achan = act->chanbase.first; achan; achan = achan->next) {
- achan->grp = newdataadr(fd, achan->grp);
+ BLO_read_data_address(reader, &achan->grp);
- link_list(fd, &achan->constraintChannels);
+ BLO_read_list(reader, &achan->constraintChannels);
}
// >>> XXX deprecated - old animation system
- direct_link_fcurves(fd, &act->curves);
+ direct_link_fcurves(reader->fd, &act->curves);
for (agrp = act->groups.first; agrp; agrp = agrp->next) {
- agrp->channels.first = newdataadr(fd, agrp->channels.first);
- agrp->channels.last = newdataadr(fd, agrp->channels.last);
+ BLO_read_data_address(reader, &agrp->channels.first);
+ BLO_read_data_address(reader, &agrp->channels.last);
}
}
@@ -3756,7 +3748,7 @@ static void direct_link_node_socket(FileData *fd, bNodeSocket *sock)
}
/* ntree itself has been read! */
-static void direct_link_nodetree(FileData *fd, bNodeTree *ntree)
+static void direct_link_nodetree(BlendDataReader *reader, bNodeTree *ntree)
{
/* note: writing and reading goes in sync, for speed */
bNode *node;
@@ -3771,32 +3763,33 @@ static void direct_link_nodetree(FileData *fd, bNodeTree *ntree)
ntree->progress = NULL;
ntree->execdata = NULL;
- ntree->adt = newdataadr(fd, ntree->adt);
- direct_link_animdata(fd, ntree->adt);
+ BLO_read_data_address(reader, &ntree->adt);
+ direct_link_animdata(reader->fd, ntree->adt);
- link_list(fd, &ntree->nodes);
+ BLO_read_list(reader, &ntree->nodes);
for (node = ntree->nodes.first; node; node = node->next) {
node->typeinfo = NULL;
- link_list(fd, &node->inputs);
- link_list(fd, &node->outputs);
+ BLO_read_list(reader, &node->inputs);
+ BLO_read_list(reader, &node->outputs);
- node->prop = newdataadr(fd, node->prop);
- IDP_DirectLinkGroup_OrFree(&node->prop, (fd->flags & FD_FLAGS_SWITCH_ENDIAN), fd);
+ BLO_read_data_address(reader, &node->prop);
+ IDP_DirectLinkGroup_OrFree(
+ &node->prop, (reader->fd->flags & FD_FLAGS_SWITCH_ENDIAN), reader->fd);
- link_list(fd, &node->internal_links);
+ BLO_read_list(reader, &node->internal_links);
for (link = node->internal_links.first; link; link = link->next) {
- link->fromnode = newdataadr(fd, link->fromnode);
- link->fromsock = newdataadr(fd, link->fromsock);
- link->tonode = newdataadr(fd, link->tonode);
- link->tosock = newdataadr(fd, link->tosock);
+ BLO_read_data_address(reader, &link->fromnode);
+ BLO_read_data_address(reader, &link->fromsock);
+ BLO_read_data_address(reader, &link->tonode);
+ BLO_read_data_address(reader, &link->tosock);
}
if (node->type == CMP_NODE_MOVIEDISTORTION) {
- node->storage = newmclipadr(fd, node->storage);
+ node->storage = newmclipadr(reader->fd, node->storage);
}
else {
- node->storage = newdataadr(fd, node->storage);
+ BLO_read_data_address(reader, &node->storage);
}
if (node->storage) {
@@ -3810,12 +3803,12 @@ static void direct_link_nodetree(FileData *fd, bNodeTree *ntree)
case CMP_NODE_HUECORRECT:
case TEX_NODE_CURVE_RGB:
case TEX_NODE_CURVE_TIME: {
- direct_link_curvemapping(fd, node->storage);
+ direct_link_curvemapping(reader->fd, node->storage);
break;
}
case SH_NODE_SCRIPT: {
NodeShaderScr
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list