[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [31534] branches/particles-2010/source/ blender: Input batches for singletons were deleted because branch counters were increased .

Lukas Toenne lukas.toenne at googlemail.com
Mon Aug 23 15:23:49 CEST 2010


Revision: 31534
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=31534
Author:   lukastoenne
Date:     2010-08-23 15:23:49 +0200 (Mon, 23 Aug 2010)

Log Message:
-----------
Input batches for singletons were deleted because branch counters were increased.
Adjusted default values for several nodes.

Modified Paths:
--------------
    branches/particles-2010/source/blender/blenkernel/intern/node.c
    branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_debugprint.c
    branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_filter.c
    branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_pass.c
    branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_random.c
    branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_set_object_data.c
    branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_set_vertex_data.c
    branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_vector_compose.c
    branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_vector_decompose.c
    branches/particles-2010/source/blender/nodes/intern/SIM_util.c
    branches/particles-2010/source/blender/nodes/intern/node_tree_simulation.c

Modified: branches/particles-2010/source/blender/blenkernel/intern/node.c
===================================================================
--- branches/particles-2010/source/blender/blenkernel/intern/node.c	2010-08-23 11:46:12 UTC (rev 31533)
+++ branches/particles-2010/source/blender/blenkernel/intern/node.c	2010-08-23 13:23:49 UTC (rev 31534)
@@ -785,6 +785,7 @@
 {
 	bNodeLink *link, *linkn;
 	bNode *node, *nextn;
+	bNodeSocket *sock;
 	bNodeTree *ngroup, *wgroup;
 	int index;
 	
@@ -805,6 +806,12 @@
 		node->locx+= gnode->locx;
 		node->locy+= gnode->locy;
 		node->flag |= NODE_SELECT;
+		
+		/* all nodes are now "internal" */
+		for (sock=node->inputs.first; sock; sock = sock->next)
+			sock->intern = 1;
+		for (sock=node->outputs.first; sock; sock = sock->next)
+			sock->intern = 1;
 	}
 	/* and the internal links */
 	for(link= wgroup->links.first; link; link= linkn) {

Modified: branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_debugprint.c
===================================================================
--- branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_debugprint.c	2010-08-23 11:46:12 UTC (rev 31533)
+++ branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_debugprint.c	2010-08-23 13:23:49 UTC (rev 31534)
@@ -31,7 +31,7 @@
 /* **************** Debug printing ******************** */
   
 static bNodeSocketType inputs[]= { 
-	{ SOCK_ANY, 1, "In", 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1000000.0f },
+	{ SOCK_ANY, 1, "In", 0.0f, 0.0f, 0.0f, 0.0f, -1000.0f, 1000.0f },
 	{ -1, 0, "" }
 };
 

Modified: branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_filter.c
===================================================================
--- branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_filter.c	2010-08-23 11:46:12 UTC (rev 31533)
+++ branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_filter.c	2010-08-23 13:23:49 UTC (rev 31534)
@@ -35,7 +35,7 @@
 
 static bNodeSocketType inputs[]= { 
 	{ SOCK_BOOL, 1, "Filter", 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f },
-	{ SOCK_ANY, 1, "In", 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f },
+	{ SOCK_ANY, 1, "In", 0.0f, 0.0f, 0.0f, 0.0f, -1000.0f, 1000.0f },
 	{ -1, 0, "" }
 };
 

Modified: branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_pass.c
===================================================================
--- branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_pass.c	2010-08-23 11:46:12 UTC (rev 31533)
+++ branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_pass.c	2010-08-23 13:23:49 UTC (rev 31534)
@@ -31,12 +31,12 @@
 /* **************** Pass a value unchanged ******************** */
 
 static bNodeSocketType inputs[]= { 
-	{ SOCK_ANY, 1, "Value", 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1000000.0f },
+	{ SOCK_ANY, 1, "Value", 0.0f, 0.0f, 0.0f, 0.0f, -1000.0f, 1000.0f },
 	{ -1, 0, "" }
 };
 
 static bNodeSocketType outputs[]= { 
-	{ SOCK_ANY, 0, "Value", 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1000000.0f },
+	{ SOCK_ANY, 0, "Value", 0.0f, 0.0f, 0.0f, 0.0f, -1000.0f, 1000.0f },
 	{ -1, 0, "" }
 };
 

Modified: branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_random.c
===================================================================
--- branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_random.c	2010-08-23 11:46:12 UTC (rev 31533)
+++ branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_random.c	2010-08-23 13:23:49 UTC (rev 31534)
@@ -33,7 +33,7 @@
 /* **************** Random number generator  ******************** */
 
 static bNodeSocketType inputs[]= { 
-	{ SOCK_INT, 1, "Seed", 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0 },
+	{ SOCK_INT, 1, "Seed", 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1000.0f, 0 },
 	{ -1, 0, "" }
 };
 

Modified: branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_set_object_data.c
===================================================================
--- branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_set_object_data.c	2010-08-23 11:46:12 UTC (rev 31533)
+++ branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_set_object_data.c	2010-08-23 13:23:49 UTC (rev 31534)
@@ -38,7 +38,7 @@
 /* **************** Set object data ******************** */
 
 static bNodeSocketType inputs[]= { 
-	{ SOCK_VECTOR, 1, "Location", 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0, NDC_SINGLETON },
+	{ SOCK_VECTOR, 1, "Location", 0.0f, 0.0f, 0.0f, 0.0f, -1000.0f, 1000.0f, 0, NDC_SINGLETON },
 	{ -1, 0, "" }
 };
 

Modified: branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_set_vertex_data.c
===================================================================
--- branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_set_vertex_data.c	2010-08-23 11:46:12 UTC (rev 31533)
+++ branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_set_vertex_data.c	2010-08-23 13:23:49 UTC (rev 31534)
@@ -44,7 +44,7 @@
 /* **************** Set vertex data ******************** */
 
 static bNodeSocketType inputs[]= { 
-	{ SOCK_VECTOR, 1, "Location", 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0, NDC_VERTEX },
+	{ SOCK_VECTOR, 1, "Location", 0.0f, 0.0f, 0.0f, 0.0f, -1000.0f, 1000.0f, 0, NDC_VERTEX },
 	{ -1, 0, "" }
 };
 

Modified: branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_vector_compose.c
===================================================================
--- branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_vector_compose.c	2010-08-23 11:46:12 UTC (rev 31533)
+++ branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_vector_compose.c	2010-08-23 13:23:49 UTC (rev 31534)
@@ -31,9 +31,9 @@
 /* **************** Compose a vector from floats ******************** */
 
 static bNodeSocketType inputs[]= { 
-	{ SOCK_FLOAT, 1, "X", 0.0f, 0.0f, 0.0f, 0.0f, -100.0f, 100.0f },
-	{ SOCK_FLOAT, 1, "Y", 0.0f, 0.0f, 0.0f, 0.0f, -100.0f, 100.0f },
-	{ SOCK_FLOAT, 1, "Z", 0.0f, 0.0f, 0.0f, 0.0f, -100.0f, 100.0f },
+	{ SOCK_FLOAT, 1, "X", 0.0f, 0.0f, 0.0f, 0.0f, -1000.0f, 1000.0f },
+	{ SOCK_FLOAT, 1, "Y", 0.0f, 0.0f, 0.0f, 0.0f, -1000.0f, 1000.0f },
+	{ SOCK_FLOAT, 1, "Z", 0.0f, 0.0f, 0.0f, 0.0f, -1000.0f, 1000.0f },
 	{ -1, 0, "" }
 };
 

Modified: branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_vector_decompose.c
===================================================================
--- branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_vector_decompose.c	2010-08-23 11:46:12 UTC (rev 31533)
+++ branches/particles-2010/source/blender/nodes/intern/SIM_nodes/SIM_vector_decompose.c	2010-08-23 13:23:49 UTC (rev 31534)
@@ -31,7 +31,7 @@
 /* **************** Decompose a vector to floats ******************** */
 
 static bNodeSocketType inputs[]= { 
-	{ SOCK_VECTOR, 1, "Vector", 0.0f, 0.0f, 0.0f, 0.0f, -100.0f, 100.0f },
+	{ SOCK_VECTOR, 1, "Vector", 0.0f, 0.0f, 0.0f, 0.0f, -1000.0f, 1000.0f },
 	{ -1, 0, "" }
 };
 

Modified: branches/particles-2010/source/blender/nodes/intern/SIM_util.c
===================================================================
--- branches/particles-2010/source/blender/nodes/intern/SIM_util.c	2010-08-23 11:46:12 UTC (rev 31533)
+++ branches/particles-2010/source/blender/nodes/intern/SIM_util.c	2010-08-23 13:23:49 UTC (rev 31534)
@@ -205,7 +205,7 @@
 	batch->flag = 0;
 	batch->start = start;
 	batch->totdata = totdata;
-	batch->fill = 0;
+	batch->fill = 1;
 }
 
 void sim_init_default_socket_batch(SimNodeBatch *batch, bNodeSocket *sock)
@@ -411,9 +411,9 @@
 	int i, total=stream->total, valid = 1;
 	for (i=0; i < total; ++i, ++stream) {
 		++stream->current;
-		++stream->batch->fill;
 		stream->valid = (stream->valid && stream->current < stream->batch->totdata);
 		if (stream->valid) {
+			++stream->batch->fill;
 			stream->data = (char*)stream->data + stream->datasize;
 			if (stream->filter)
 				++stream->filter;

Modified: branches/particles-2010/source/blender/nodes/intern/node_tree_simulation.c
===================================================================
--- branches/particles-2010/source/blender/nodes/intern/node_tree_simulation.c	2010-08-23 11:46:12 UTC (rev 31533)
+++ branches/particles-2010/source/blender/nodes/intern/node_tree_simulation.c	2010-08-23 13:23:49 UTC (rev 31534)
@@ -327,9 +327,14 @@
 					job->state = SIM_JOB_READY;
 					hasnewjobs = 1;
 				}
+				
+//				printf("updated job %d on %s ->", job->input_start, job->node->node->name);
+//				if (job->state == SIM_JOB_READY) printf("ready!\n");
+//				else printf("preparing ...\n");
 			}
 		}
 		
+//		if (foundjob == 0 && psock->contexttype != NDC_SINGLETON) {
 		if (foundjob == 0) {
 			newjob = MEM_callocN(sizeof(SimNodeJob), "SimNodeJob");
 			newjob->node = node;
@@ -356,6 +361,9 @@
 			newjob->input_totdata = pbatch->fill;
 			newjob->custom = NULL;
 			
+//			printf("creating new job %d on %s -> ", newjob->input_start, newjob->node->node->name);
+//			if (newjob->state == SIM_JOB_READY) printf("ready!\n");
+//			else printf("preparing ...\n");
 			
 			if (job != NULL)
 				BLI_insertlinkbefore(&node->jobs, job, newjob);
@@ -364,6 +372,32 @@
 			
 			hasnewjobs = 1;
 		}
+		
+		{
+			int i;
+			char statestr[64];
+			printf("Node '%s'(%d) jobs:\n", node->node->name, (int)(node - ctx->nodestack));
+			for (job=node->jobs.first; job; job = job->next) {
+				switch (job->state) {
+				case SIM_JOB_PREPARING:		sprintf(statestr, "preparing"); break;
+				case SIM_JOB_READY:			sprintf(statestr, "ready"); break;
+				case SIM_JOB_RUNNING:		sprintf(statestr, "running"); break;
+				case SIM_JOB_SUSPENDED:		sprintf(statestr, "suspended"); break;
+				case SIM_JOB_DONE:			sprintf(statestr, "done"); break;
+				case SIM_JOB_CANCEL:		sprintf(statestr, "cancel"); break;
+				}
+				printf("%d{%d} (%s, %d): ", job->input_start, job->input_totdata, statestr, job->execlevel);
+				for (i=0; i < node->totinputs; ++i) {
+					if (i > 0)
+						printf(" | ");
+					if (job->input[i])
+						printf("%d{%d}, %d/%d", job->input[i]->start, job->input[i]->fill, job->input[i]->branches_done, job->node->inputs[i]->branches);
+					else
+						printf("NULL");
+				}
+				printf("\n");
+			}
+		}
 	}
 	
 //	pthread_mutex_unlock(&ctx->mutex);
@@ -494,9 +528,23 @@
 	int i;
 	/* increase branches_done counters and free data if possible */
 	for (i=0; i < job->node->totinputs; ++i) {
-		++job->input[i]->branches_done;
+		/* exclude singletons and default inputs */

@@ Diff output truncated at 10240 characters. @@




More information about the Bf-blender-cvs mailing list