Commit: 34d5651a17ef3be26ee66905d53b54e745cf1efc
Author: Sergey Sharybin
Date:   Wed Dec 5 15:34:50 2018 +0100
Branches: blender2.8
https://developer.blender.org/rB34d5651a17ef3be26ee66905d53b54e745cf1efc

Remove old dependency graph

Yes, again.

===================================================================

D       source/blender/blenkernel/intern/depsgraph.c

===================================================================

diff --git a/source/blender/blenkernel/intern/depsgraph.c 
b/source/blender/blenkernel/intern/depsgraph.c
deleted file mode 100644
index 621cd6cf5c8..00000000000
--- a/source/blender/blenkernel/intern/depsgraph.c
+++ /dev/null
@@ -1,3745 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2004 Blender Foundation.
- * All rights reserved.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file blender/blenkernel/intern/depsgraph.c
- *  \ingroup bke
- */
-
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <math.h>
-
-#include "MEM_guardedalloc.h"
-
-#ifdef WIN32
-#  include "BLI_winstuff.h"
-#endif
-
-#include "BLI_utildefines.h"
-#include "BLI_listbase.h"
-#include "BLI_ghash.h"
-#include "BLI_threads.h"
-
-#include "DNA_anim_types.h"
-#include "DNA_camera_types.h"
-#include "DNA_cachefile_types.h"
-#include "DNA_group_types.h"
-#include "DNA_lamp_types.h"
-#include "DNA_lattice_types.h"
-#include "DNA_key_types.h"
-#include "DNA_material_types.h"
-#include "DNA_mesh_types.h"
-#include "DNA_node_types.h"
-#include "DNA_scene_types.h"
-#include "DNA_screen_types.h"
-#include "DNA_windowmanager_types.h"
-#include "DNA_movieclip_types.h"
-#include "DNA_mask_types.h"
-#include "DNA_modifier_types.h"
-#include "DNA_rigidbody_types.h"
-
-#include "BKE_anim.h"
-#include "BKE_animsys.h"
-#include "BKE_action.h"
-#include "BKE_DerivedMesh.h"
-#include "BKE_collision.h"
-#include "BKE_curve.h"
-#include "BKE_effect.h"
-#include "BKE_fcurve.h"
-#include "BKE_global.h"
-#include "BKE_idcode.h"
-#include "BKE_image.h"
-#include "BKE_key.h"
-#include "BKE_library.h"
-#include "BKE_main.h"
-#include "BKE_node.h"
-#include "BKE_material.h"
-#include "BKE_mball.h"
-#include "BKE_modifier.h"
-#include "BKE_object.h"
-#include "BKE_paint.h"
-#include "BKE_particle.h"
-#include "BKE_pointcache.h"
-#include "BKE_scene.h"
-#include "BKE_screen.h"
-#include "BKE_tracking.h"
-
-#include "GPU_buffers.h"
-
-#include "atomic_ops.h"
-
-#include "depsgraph_private.h"
-
-#include "DEG_depsgraph.h"
-#include "DEG_depsgraph_build.h"
-#include "DEG_depsgraph_debug.h"
-#include "DEG_depsgraph_query.h"
-
-#ifdef WITH_LEGACY_DEPSGRAPH
-
-static SpinLock threaded_update_lock;
-
-void DAG_init(void)
-{
-       BLI_spin_init(&threaded_update_lock);
-       DEG_register_node_types();
-}
-
-void DAG_exit(void)
-{
-       BLI_spin_end(&threaded_update_lock);
-       DEG_free_node_types();
-}
-
-/* Queue and stack operations for dag traversal
- *
- * the queue store a list of freenodes to avoid successive alloc/dealloc
- */
-
-DagNodeQueue *queue_create(int slots)
-{
-       DagNodeQueue *queue;
-       DagNodeQueueElem *elem;
-       int i;
-
-       queue = MEM_mallocN(sizeof(DagNodeQueue), "DAG queue");
-       queue->freenodes = MEM_mallocN(sizeof(DagNodeQueue), "DAG queue");
-       queue->count = 0;
-       queue->maxlevel = 0;
-       queue->first = queue->last = NULL;
-       elem = MEM_mallocN(sizeof(DagNodeQueueElem), "DAG queue elem3");
-       elem->node = NULL;
-       elem->next = NULL;
-       queue->freenodes->first = queue->freenodes->last = elem;
-
-       for (i = 1; i < slots; i++) {
-               elem = MEM_mallocN(sizeof(DagNodeQueueElem), "DAG queue elem4");
-               elem->node = NULL;
-               elem->next = NULL;
-               queue->freenodes->last->next = elem;
-               queue->freenodes->last = elem;
-       }
-       queue->freenodes->count = slots;
-       return queue;
-}
-
-void queue_raz(DagNodeQueue *queue)
-{
-       DagNodeQueueElem *elem;
-
-       elem = queue->first;
-       if (queue->freenodes->last)
-               queue->freenodes->last->next = elem;
-       else
-               queue->freenodes->first = queue->freenodes->last = elem;
-
-       elem->node = NULL;
-       queue->freenodes->count++;
-       while (elem->next) {
-               elem = elem->next;
-               elem->node = NULL;
-               queue->freenodes->count++;
-       }
-       queue->freenodes->last = elem;
-       queue->count = 0;
-}
-
-void queue_delete(DagNodeQueue *queue)
-{
-       DagNodeQueueElem *elem;
-       DagNodeQueueElem *temp;
-
-       elem = queue->first;
-       while (elem) {
-               temp = elem;
-               elem = elem->next;
-               MEM_freeN(temp);
-       }
-
-       elem = queue->freenodes->first;
-       while (elem) {
-               temp = elem;
-               elem = elem->next;
-               MEM_freeN(temp);
-       }
-
-       MEM_freeN(queue->freenodes);
-       MEM_freeN(queue);
-}
-
-/* insert in queue, remove in front */
-void push_queue(DagNodeQueue *queue, DagNode *node)
-{
-       DagNodeQueueElem *elem;
-       int i;
-
-       if (node == NULL) {
-               fprintf(stderr, "pushing null node\n");
-               return;
-       }
-       /*fprintf(stderr, "BFS push : %s %d\n", ((ID *) node->ob)->name, 
queue->count);*/
-
-       elem = queue->freenodes->first;
-       if (elem != NULL) {
-               queue->freenodes->first = elem->next;
-               if (queue->freenodes->last == elem) {
-                       queue->freenodes->last = NULL;
-                       queue->freenodes->first = NULL;
-               }
-               queue->freenodes->count--;
-       }
-       else { /* alllocating more */
-               elem = MEM_mallocN(sizeof(DagNodeQueueElem), "DAG queue elem1");
-               elem->node = NULL;
-               elem->next = NULL;
-               queue->freenodes->first = queue->freenodes->last = elem;
-
-               for (i = 1; i < DAGQUEUEALLOC; i++) {
-                       elem = MEM_mallocN(sizeof(DagNodeQueueElem), "DAG queue 
elem2");
-                       elem->node = NULL;
-                       elem->next = NULL;
-                       queue->freenodes->last->next = elem;
-                       queue->freenodes->last = elem;
-               }
-               queue->freenodes->count = DAGQUEUEALLOC;
-
-               elem = queue->freenodes->first;
-               queue->freenodes->first = elem->next;
-       }
-       elem->next = NULL;
-       elem->node = node;
-       if (queue->last != NULL)
-               queue->last->next = elem;
-       queue->last = elem;
-       if (queue->first == NULL) {
-               queue->first = elem;
-       }
-       queue->count++;
-}
-
-
-/* insert in front, remove in front */
-void push_stack(DagNodeQueue *queue, DagNode *node)
-{
-       DagNodeQueueElem *elem;
-       int i;
-
-       elem = queue->freenodes->first;
-       if (elem != NULL) {
-               queue->freenodes->first = elem->next;
-               if (queue->freenodes->last == elem) {
-                       queue->freenodes->last = NULL;
-                       queue->freenodes->first = NULL;
-               }
-               queue->freenodes->count--;
-       }
-       else { /* alllocating more */
-               elem = MEM_mallocN(sizeof(DagNodeQueueElem), "DAG queue elem1");
-               elem->node = NULL;
-               elem->next = NULL;
-               queue->freenodes->first = queue->freenodes->last = elem;
-
-               for (i = 1; i < DAGQUEUEALLOC; i++) {
-                       elem = MEM_mallocN(sizeof(DagNodeQueueElem), "DAG queue 
elem2");
-                       elem->node = NULL;
-                       elem->next = NULL;
-                       queue->freenodes->last->next = elem;
-                       queue->freenodes->last = elem;
-               }
-               queue->freenodes->count = DAGQUEUEALLOC;
-
-               elem = queue->freenodes->first;
-               queue->freenodes->first = elem->next;
-       }
-       elem->next = queue->first;
-       elem->node = node;
-       queue->first = elem;
-       if (queue->last == NULL)
-               queue->last = elem;
-       queue->count++;
-}
-
-
-DagNode *pop_queue(DagNodeQueue *queue)
-{
-       DagNodeQueueElem *elem;
-       DagNode *node;
-
-       elem = queue->first;
-       if (elem) {
-               queue->first = elem->next;
-               if (queue->last == elem) {
-                       queue->last = NULL;
-                       queue->first = NULL;
-               }
-               queue->count--;
-               if (queue->freenodes->last)
-                       queue->freenodes->last->next = elem;
-               queue->freenodes->last = elem;
-               if (queue->freenodes->first == NULL)
-                       queue->freenodes->first = elem;
-               node = elem->node;
-               elem->node = NULL;
-               elem->next = NULL;
-               queue->freenodes->count++;
-               return node;
-       }
-       else {
-               fprintf(stderr, "return null\n");
-               return NULL;
-       }
-}
-
-DagNode *get_top_node_queue(DagNodeQueue *queue)
-{
-       return queue->first->node;
-}
-
-DagForest *dag_init(void)
-{
-       DagForest *forest;
-       /* use callocN to init all zero */
-       forest = MEM_callocN(sizeof(DagForest), "DAG root");
-       forest->ugly_hack_sorry = true;
-       return forest;
-}
-
-/* isdata = object data... */
-/* XXX this needs to be extended to be more flexible (so that not only objects 
are evaluated via depsgraph)... */
-static void dag_add_driver_relation(AnimData *adt, DagForest *dag, DagNode 
*node, int isdata)
-{
-       FCurve *fcu;
-       DagNode *node1;
-
-       for (fcu = adt->drivers.first; fcu; fcu = fcu->next) {
-               ChannelDriver *driver = fcu->driver;
-               DriverVar *dvar;
-               int isdata_fcu = (isdata) || (fcu->rna_path && 
strstr(fcu->rna_path, "modifiers["));
-
-               /* loop over variables to get the target relationships */
-               for (dvar = driver->variables.first; dvar; dvar = dvar->next) {
-                       /* only used targets */
-                       DRIVER_TARGETS_USED_LOOPER_BEGIN(dvar)
-                       {
-                               if (dtar->id) {
-                                       /* FIXME: other data types need to be 
added here so that they can work! */
-                                       if (GS(dtar->id->name) == ID_OB) {
-                                               Object *ob = (Object *)dtar->id;
-
-                                               /* normal 
channel-drives-channel */
-                                               node1 = dag_get_node(dag, 
dtar->id);
-
-                                               /* check if bone... */
-                                               if ((ob->type == OB_ARMATURE) &&
-                                                   ( ((dtar->rna_path) && 
strstr(dtar->rna_path, "pose.bones[")) ||
-                                                     ((dtar->flag & 
DTAR_FLAG_STRUCT_REF) && (dtar->pchan_name[0])) ))
-                                               {
-                                                       dag_add_relation(dag, 
node1, node, isdata_fcu ? DAG_RL_DATA_DATA : DAG_RL_DATA_OB, "Driver");
-                                               }
-                                               /* check if ob data */
-                                               else if (dtar->rna_path && 
strstr(dtar->rna_path, "data."))
-                                                       dag_add_relation(dag, 
node1, node, isdata_fcu ? DAG_RL_DATA_DATA : DAG_RL_DATA_OB, "Driver");
-                                               /* normal */
-                                               else
-                                                       dag_add_relation(dag, 
node1, node, isdata_fcu ? DAG_RL_OB_DATA : DAG_RL_OB_OB, "Driver");
-                                       }
-                               }
-                       }
-                       DRIVER_TARGETS_LOOPER_END;
-               }
-       }
-}
-
-/* XXX: forward def for material driver handling... */
-static void dag_add_material_driver_relations(DagForest *dag, DagNode *node, 
Material *ma);
-
-/* recursive handling for shader nodetree drivers */
-static void dag_add_shader_nodetree_driver_relations(DagForest *dag, DagNode 
*node, bNo

@@ Diff output truncated at 10240 characters. @@

_______________________________________________
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to