Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/blender/blenkernel/intern/depsgraph.c')
-rw-r--r--source/blender/blenkernel/intern/depsgraph.c120
1 files changed, 60 insertions, 60 deletions
diff --git a/source/blender/blenkernel/intern/depsgraph.c b/source/blender/blenkernel/intern/depsgraph.c
index 20b029371f1..950a0ca3d60 100644
--- a/source/blender/blenkernel/intern/depsgraph.c
+++ b/source/blender/blenkernel/intern/depsgraph.c
@@ -150,8 +150,8 @@ void queue_delete(DagNodeQueue *queue)
MEM_freeN(temp);
}
- MEM_freeN(queue->freenodes);
- MEM_freeN(queue);
+ MEM_freeN(queue->freenodes);
+ MEM_freeN(queue);
}
/* insert in queue, remove in front */
@@ -190,8 +190,8 @@ void push_queue(DagNodeQueue *queue, DagNode *node)
}
queue->freenodes->count = DAGQUEUEALLOC;
- elem = queue->freenodes->first;
- queue->freenodes->first = elem->next;
+ elem = queue->freenodes->first;
+ queue->freenodes->first = elem->next;
}
elem->next = NULL;
elem->node = node;
@@ -211,7 +211,7 @@ void push_stack(DagNodeQueue *queue, DagNode *node)
DagNodeQueueElem *elem;
int i;
- elem = queue->freenodes->first;
+ elem = queue->freenodes->first;
if (elem != NULL) {
queue->freenodes->first = elem->next;
if (queue->freenodes->last == elem) {
@@ -235,8 +235,8 @@ void push_stack(DagNodeQueue *queue, DagNode *node)
}
queue->freenodes->count = DAGQUEUEALLOC;
- elem = queue->freenodes->first;
- queue->freenodes->first = elem->next;
+ elem = queue->freenodes->first;
+ queue->freenodes->first = elem->next;
}
elem->next = queue->first;
elem->node = node;
@@ -302,7 +302,7 @@ DagForest *dag_init(void)
}
/* isdata = object data... */
-// XXX this needs to be extended to be more flexible (so that not only objects are evaluated via depsgraph)...
+/* 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;
@@ -412,7 +412,7 @@ static void dag_add_collision_field_relation(DagForest *dag, Scene *scene, Objec
if ((ob1->pd->deflect || ob1->pd->forcefield) && (ob1 != ob)) {
if (skip_forcefield && ob1->pd->forcefield == skip_forcefield)
continue;
- node2 = dag_get_node(dag, ob1);
+ node2 = dag_get_node(dag, ob1);
dag_add_relation(dag, node2, node, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, "Field Collision");
}
}
@@ -464,7 +464,7 @@ static void build_dag_object(DagForest *dag, DagNode *scenenode, Scene *scene, O
if (ct->tar->type == OB_MESH)
node3->customdata_mask |= CD_MASK_MDEFORMVERT;
}
- else if (ELEM3(con->type, CONSTRAINT_TYPE_FOLLOWPATH, CONSTRAINT_TYPE_CLAMPTO, CONSTRAINT_TYPE_SPLINEIK))
+ else if (ELEM3(con->type, CONSTRAINT_TYPE_FOLLOWPATH, CONSTRAINT_TYPE_CLAMPTO, CONSTRAINT_TYPE_SPLINEIK))
dag_add_relation(dag, node3, node, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, cti->name);
else
dag_add_relation(dag, node3, node, DAG_RL_OB_DATA, cti->name);
@@ -606,7 +606,7 @@ static void build_dag_object(DagForest *dag, DagNode *scenenode, Scene *scene, O
if (mom != ob) {
node2 = dag_get_node(dag, mom);
- dag_add_relation(dag, node, node2, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, "Metaball"); // mom depends on children!
+ dag_add_relation(dag, node, node2, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, "Metaball"); /* mom depends on children! */
}
}
break;
@@ -818,7 +818,7 @@ DagForest *build_dag(Main *bmain, Scene *sce, short mask)
tag_main_idcode(bmain, ID_MA, FALSE);
/* add base node for scene. scene is always the first node in DAG */
- scenenode = dag_add_node(dag, sce);
+ scenenode = dag_add_node(dag, sce);
/* add current scene objects */
for (base = sce->base.first; base; base = base->next) {
@@ -872,7 +872,7 @@ DagForest *build_dag(Main *bmain, Scene *sce, short mask)
}
/* cycle detection and solving */
- // solve_cycles(dag);
+ // solve_cycles(dag);
return dag;
}
@@ -881,23 +881,23 @@ DagForest *build_dag(Main *bmain, Scene *sce, short mask)
void free_forest(DagForest *Dag)
{ /* remove all nodes and deps */
DagNode *tempN;
- DagAdjList *tempA;
+ DagAdjList *tempA;
DagAdjList *itA;
DagNode *itN = Dag->DagNode.first;
while (itN) {
- itA = itN->child;
+ itA = itN->child;
while (itA) {
tempA = itA;
itA = itA->next;
- MEM_freeN(tempA);
+ MEM_freeN(tempA);
}
- itA = itN->parent;
+ itA = itN->parent;
while (itA) {
tempA = itA;
itA = itA->next;
- MEM_freeN(tempA);
+ MEM_freeN(tempA);
}
tempN = itN;
@@ -921,8 +921,8 @@ DagNode *dag_find_node(DagForest *forest, void *fob)
return NULL;
}
-static int ugly_hack_sorry = 1; // prevent type check
-static int dag_print_dependencies = 0; // debugging
+static int ugly_hack_sorry = 1; /* prevent type check */
+static int dag_print_dependencies = 0; /* debugging */
/* no checking of existence, use dag_find_node first or dag_get_node */
DagNode *dag_add_node(DagForest *forest, void *fob)
@@ -934,7 +934,7 @@ DagNode *dag_add_node(DagForest *forest, void *fob)
node->ob = fob;
node->color = DAG_WHITE;
- if (ugly_hack_sorry) node->type = GS(((ID *) fob)->name); // sorry, done for pose sorting
+ if (ugly_hack_sorry) node->type = GS(((ID *) fob)->name); /* sorry, done for pose sorting */
if (forest->numNodes) {
((DagNode *) forest->DagNode.last)->next = node;
forest->DagNode.last = node;
@@ -1153,7 +1153,7 @@ static void dag_check_cycle(DagForest *dag)
for (node = dag->DagNode.first; node; node = node->next) {
while (node->parent) {
itA = node->parent->next;
- MEM_freeN(node->parent);
+ MEM_freeN(node->parent);
node->parent = itA;
}
}
@@ -1242,7 +1242,7 @@ void graph_bfs(void)
itA = itA->next;
}
if (pos[node->BFS_dist] > node->k) {
- pos[node->BFS_dist] += 1;
+ pos[node->BFS_dist] += 1;
node->k = (float) pos[node->BFS_dist];
}
else {
@@ -1303,7 +1303,7 @@ int pre_and_post_source_BFS(DagForest *dag, short mask, DagNode *source, graph_a
pre_func(node->ob, data);
}
- else { // back or cross edge
+ else { /* back or cross edge */
retval = 1;
}
itA = itA->next;
@@ -1334,7 +1334,7 @@ DagNodeQueue *graph_dfs(void)
/* int is_cycle = 0; */ /* UNUSED */
/*
*fprintf(stderr, "starting DFS\n ------------\n");
- */
+ */
nqueue = queue_create(DAGQUEUEALLOC);
retqueue = queue_create(MainDag->numNodes);
for (i = 0; i < 50; i++)
@@ -1386,7 +1386,7 @@ DagNodeQueue *graph_dfs(void)
break;
}
else {
- if (itA->node->color == DAG_GRAY) { // back edge
+ if (itA->node->color == DAG_GRAY) { /* back edge */
fprintf(stderr, "dfs back edge :%15s %15s\n", ((ID *) node->ob)->name, ((ID *) itA->node->ob)->name);
/* is_cycle = 1; */ /* UNUSED */
}
@@ -1464,7 +1464,7 @@ int pre_and_post_source_DFS(DagForest *dag, short mask, DagNode *source, graph_a
int retval = 0;
/*
* fprintf(stderr, "starting DFS\n ------------\n");
- */
+ */
nqueue = queue_create(DAGQUEUEALLOC);
/* Init
@@ -1518,7 +1518,7 @@ int pre_and_post_source_DFS(DagForest *dag, short mask, DagNode *source, graph_a
// }
}
itA = itA->next;
- }
+ }
if (!skip) {
node = pop_queue(nqueue);
@@ -1537,7 +1537,7 @@ int pre_and_post_source_DFS(DagForest *dag, short mask, DagNode *source, graph_a
}
-// used to get the obs owning a datablock
+/* used to get the obs owning a datablock */
DagNodeQueue *get_obparents(struct DagForest *dag, void *ob)
{
DagNode *node, *node1;
@@ -1548,7 +1548,7 @@ DagNodeQueue *get_obparents(struct DagForest *dag, void *ob)
if (node == NULL) {
return NULL;
}
- else if (node->ancestor_count == 1) { // simple case
+ else if (node->ancestor_count == 1) { /* simple case */
nqueue = queue_create(1);
push_queue(nqueue, node);
}
@@ -1557,7 +1557,7 @@ DagNodeQueue *get_obparents(struct DagForest *dag, void *ob)
node1 = dag->DagNode.first;
do {
- if (node1->DFS_fntm > node->DFS_fntm) { // a parent is finished after child. must check adj list
+ if (node1->DFS_fntm > node->DFS_fntm) { /* a parent is finished after child. must check adj list */
itA = node->child;
while (itA != NULL) {
if ((itA->node == node) && (itA->type == DAG_RL_DATA)) {
@@ -1585,7 +1585,7 @@ DagNodeQueue *get_first_ancestors(struct DagForest *dag, void *ob)
node1 = dag->DagNode.first;
do {
- if (node1->DFS_fntm > node->DFS_fntm) {
+ if (node1->DFS_fntm > node->DFS_fntm) {
itA = node->child;
while (itA != NULL) {
if (itA->node == node) {
@@ -1597,10 +1597,10 @@ DagNodeQueue *get_first_ancestors(struct DagForest *dag, void *ob)
node1 = node1->next;
} while (node1);
- return nqueue;
+ return nqueue;
}
-// standard DFS list
+/* standard DFS list */
DagNodeQueue *get_all_childs(struct DagForest *dag, void *ob)
{
DagNode *node;
@@ -1611,7 +1611,7 @@ DagNodeQueue *get_all_childs(struct DagForest *dag, void *ob)
int skip = 0;
nqueue = queue_create(DAGQUEUEALLOC);
- retqueue = queue_create(dag->numNodes); // was MainDag... why? (ton)
+ retqueue = queue_create(dag->numNodes); /* was MainDag... why? (ton) */
node = dag->DagNode.first;
while (node) {
@@ -1621,8 +1621,8 @@ DagNodeQueue *get_all_childs(struct DagForest *dag, void *ob)
time = 1;
- node = dag_find_node(dag, ob); // could be done in loop above (ton)
- if (node) { // can be null for newly added objects
+ node = dag_find_node(dag, ob); /* could be done in loop above (ton) */
+ if (node) { /* can be null for newly added objects */
node->color = DAG_GRAY;
time++;
@@ -1643,9 +1643,9 @@ DagNodeQueue *get_all_childs(struct DagForest *dag, void *ob)
push_stack(nqueue, itA->node);
skip = 1;
break;
- }
+ }
itA = itA->next;
- }
+ }
if (!skip) {
node = pop_queue(nqueue);
@@ -1673,7 +1673,7 @@ short are_obs_related(struct DagForest *dag, void *ob1, void *ob2)
while (itA != NULL) {
if (itA->node->ob == ob2) {
return itA->node->type;
- }
+ }
itA = itA->next;
}
return DAG_NO_RELATION;
@@ -1701,7 +1701,7 @@ void graph_print_queue(DagNodeQueue *nqueue)
queueElem = nqueue->first;
while (queueElem) {
fprintf(stderr, "** %s %i %i-%i ", ((ID *) queueElem->node->ob)->name, queueElem->node->color, queueElem->node->DFS_dvtm, queueElem->node->DFS_fntm);
- queueElem = queueElem->next;
+ queueElem = queueElem->next;
}
fprintf(stderr, "\n");
}
@@ -1721,7 +1721,7 @@ void graph_print_queue_dist(DagNodeQueue *nqueue)
fputc('|', stderr);
fputc('\n', stderr);
count = 0;
- queueElem = queueElem->next;
+ queueElem = queueElem->next;
}
fprintf(stderr, "\n");
}
@@ -1859,14 +1859,14 @@ void DAG_scene_sort(Main *bmain, Scene *sce)
push_stack(nqueue, itA->node);
skip = 1;
break;
- }
+ }
itA = itA->next;
- }
+ }
if (!skip) {
if (node) {
node = pop_queue(nqueue);
- if (node->ob == sce) // we are done
+ if (node->ob == sce) /* we are done */
break;
node->color = DAG_BLACK;
@@ -1878,7 +1878,7 @@ void DAG_scene_sort(Main *bmain, Scene *sce)
BLI_remlink(&sce->base, base);
BLI_addhead(&tempbase, base);
}
- }
+ }
}
}
@@ -2023,7 +2023,7 @@ static unsigned int flush_layer_node(Scene *sce, DagNode *node, int curtime)
for (itA = node->child; itA; itA = itA->next) {
if (itA->node->type == ID_OB) {
if (itA->node->lasttime != curtime) {
- itA->lay = flush_layer_node(sce, itA->node, curtime); // lay is only set once for each relation
+ itA->lay = flush_layer_node(sce, itA->node, curtime); /* lay is only set once for each relation */
}
else itA->lay = itA->node->lay;
@@ -2071,12 +2071,12 @@ static void dag_scene_flush_layers(Scene *sce, int lay)
Base *base;
int lasttime;
- firstnode = sce->theDag->DagNode.first; // always scene node
+ firstnode = sce->theDag->DagNode.first; /* always scene node */
for (itA = firstnode->child; itA; itA = itA->next)
itA->lay = 0;
- sce->theDag->time++; // so we know which nodes were accessed
+ sce->theDag->time++; /* so we know which nodes were accessed */
lasttime = sce->theDag->time;
/* update layer flags in nodes */
@@ -2148,13 +2148,13 @@ void DAG_scene_flush_update(Main *bmain, Scene *sce, unsigned int lay, const sho
DAG_scene_sort(bmain, sce);
}
- firstnode = sce->theDag->DagNode.first; // always scene node
+ firstnode = sce->theDag->DagNode.first; /* always scene node */
/* first we flush the layer flags */
dag_scene_flush_layers(sce, lay);
/* then we use the relationships + layer info to flush update events */
- sce->theDag->time++; // so we know which nodes were accessed
+ sce->theDag->time++; /* so we know which nodes were accessed */
lasttime = sce->theDag->time;
for (itA = firstnode->child; itA; itA = itA->next)
if (itA->node->lasttime != lasttime && itA->node->type == ID_OB)
@@ -2162,7 +2162,7 @@ void DAG_scene_flush_update(Main *bmain, Scene *sce, unsigned int lay, const sho
/* if update is not due to time change, do pointcache clears */
if (!time) {
- sce->theDag->time++; // so we know which nodes were accessed
+ sce->theDag->time++; /* so we know which nodes were accessed */
lasttime = sce->theDag->time;
for (itA = firstnode->child; itA; itA = itA->next) {
if (itA->node->lasttime != lasttime && itA->node->type == ID_OB) {
@@ -2380,7 +2380,7 @@ static void dag_object_time_update_flags(Object *ob)
}
}
}
- }
+ }
if (ob->recalc & OB_RECALC_OB)
lib_id_recalc_tag(G.main, &ob->id);
@@ -2930,9 +2930,9 @@ void DAG_pose_sort(Object *ob)
int skip = 0;
dag = dag_init();
- ugly_hack_sorry = 0; // no ID structs
+ ugly_hack_sorry = 0; /* no ID structs */
- rootnode = dag_add_node(dag, NULL); // node->ob becomes NULL
+ rootnode = dag_add_node(dag, NULL); /* node->ob becomes NULL */
/* we add the hierarchy and the constraints */
for (pchan = pose->chanbase.first; pchan; pchan = pchan->next) {
@@ -2977,7 +2977,7 @@ void DAG_pose_sort(Object *ob)
dag_add_relation(dag, node2, node3, 0, "IK Constraint");
segcount++;
- if (segcount == data->rootbone || segcount > 255) break; // 255 is weak
+ if (segcount == data->rootbone || segcount > 255) break; /* 255 is weak */
parchan = parchan->parent;
}
}
@@ -3020,21 +3020,21 @@ void DAG_pose_sort(Object *ob)
push_stack(nqueue, itA->node);
skip = 1;
break;
- }
+ }
itA = itA->next;
- }
+ }
if (!skip) {
if (node) {
node = pop_queue(nqueue);
- if (node->ob == NULL) // we are done
+ if (node->ob == NULL) /* we are done */
break;
node->color = DAG_BLACK;
/* put node in new list */
BLI_remlink(&pose->chanbase, node->ob);
BLI_addhead(&tempbase, node->ob);
- }
+ }
}
}