Changeset - 7e0bdb762b99
[Not reviewed]
default
0 1 0
ethanzonca - 16 years ago 2009-07-14 20:26:24

Added pseudo-code for main() in both master and slave. ohno/lordofwar should try coding around it / adjusting it.... :D
1 file changed with 64 insertions and 0 deletions:
0 comments (0 inline, 0 general)
src/server/distrend.c
Show inline comments
 
@@ -345,6 +345,24 @@ int main(int argc, char *argv[])
 
//// End getopt sample
 

	
 

	
 
// Just wrote this to try and piece everything together after writing it on paper :D --ethanzonca
 
///////////////////// Semi-pseudo-code for server //////////////////////////////////////////
 
/*
 

	
 
start_data();
 
status_report_generator();
 
blend_frame_watchdog();
 

	
 
	if(client says "i ain't got nuthin to render!"){
 
		frame_finder() ==> returns jobnum/framenum that are sent to slave, "render jobnum framenum"
 
	}
 
	if(client says "done with frame # in job #"){
 
		finish_frame(jobnum, frame);
 
		frame_finder() ==> returns jobnum/framenum that are sent to slave, "render jobnum framenum"
 
	}
 

	
 
*/
 
///////////////////////////////////////////////////////////////////////////////////////
 

	
 

	
 

	
 
@@ -425,6 +443,52 @@ int main(int argc, char *argv[])
 
*/
 

	
 

	
 
///////////////////// Semi-pseudo Slave Code ///////////////////////////
 
/*
 
int slavestatus = 0;
 

	
 
if(no username in config file, no key present){
 
	fprintf(stderr "run distrend -c username] [emailaddr] to register")
 
}
 
if(they use a -c flag according to getopt, with 2 args){
 
	register_user(username, email); which returns a uniquely random url to a key
 
	get(uniquely-random-url-to-key);
 
	fprintf(stderr, "you registered, hopefully successfully. Invoke distrend with no args now.");
 
}
 
if(username is in conf file and key is present){
 
	loginuser(username);
 
}
 

	
 
if(slave recieves "start frame#, job#"){
 
	get(http://distren.protofusion.org/srv/job#.tgz);
 
	tar -xvf job#.tgz /tmp/distren/job#; somehow
 
	exec_blender(job#.blend, job#.frame#.JPG, job#); (check the args, we'll need to adjust for different output formats)... set SLAVESTATUS=1 while rendering, SLAVESTATUS=2 when done
 
}
 
if(SLAVESTATUS==2){
 
	tell the server "done with frame# in job#";
 
	SLAVESTATUS=0
 
}
 
if(SLAVESTATUS==0){
 
	tell the server "i ain't got no frames to render";
 
}
 
while(SLAVESTATUS==1){
 
	tell the server "rendering this friggn frame";
 
	delay(1000);
 
}
 
*/
 
////////////////////////////////////////////////////////////////////////
 

	
 

	
 

	
 

	
 

	
 

	
 

	
 

	
 

	
 

	
 

	
 

	
 
// Registration on server. Needs attention. Prevent account spamming.
 
// Key transfer?
 
// Set up something like: distrend -c username email@example.com
0 comments (0 inline, 0 general)