Changeset - daaf850da941
[Not reviewed]
default
0 1 0
ethanzonca - 16 years ago 2009-07-25 21:57:00

Updated frame_finder references
1 file changed with 7 insertions and 3 deletions:
0 comments (0 inline, 0 general)
src/server/distrend.c
Show inline comments
 
@@ -476,73 +476,77 @@ int main(int argc, char *argv[])
 
	  options_init(argc, argv, &config->mycfg, myopts, "server", &config->options);
 

	
 
	  return 0;
 
	}
 
	int distrend_config_free(struct distrend_config *config)
 
	{
 
	  options_free(config->options);
 
	  free(config);
 

	
 
	  return 0;
 
	}
 
// End non-working framework?
 

	
 

	
 
  struct blendjob *head;
 

	
 
  int cont;
 
  struct distrend_listenset *listenset;
 
  struct distrend_config *config;
 

	
 
  head = NULL;
 
  cont = 1;
 

	
 
  distrend_do_config(argc, argv, config);
 

	
 
  distrend_listen(&listenset, config);
 
  /* This is called the ``main loop'' */
 
  while(cont)
 
    {
 
      struct distren_action *action;
 

	
 
      distrend_accept(&action);
 
      cont = distrend_do(action);
 

	
 

	
 
      /* Somewhat Pseudo-code for basic server operation, should be more event-driven */
 

	
 
      start_data();
 
      status_report_generator(); // TODO: Add correct args
 
      blend_frame_watchdog();	 // TODO: Add correct args
 

	
 

	
 
      struct frameset *frame;
 
      struct blendjob *job;
 

	
 
      /* If the client is idle (meaning a client without the "busy" status connected via ssh) */
 
      	if(clientstatus == "idle")
 
	  {
 
	    framenum / jobnum = frame_finder(&head, job, frame); // give framefinder args, framefinder should return job number and frame number somehow
 
				if(frame_finder returns "didn't get a frame"){
 
      		int returnnum = frame_finder(&head, job, frame); // give framefinder args, framefinder should return job number and frame number somehow
 
				if(returnnum == 1){
 
					fprinf(stderr,"No frames are available to render at this time");
 
					sleep(10);
 
				}
 
				else if(returnnum == 0){
 
					remotio_send_to_client(framenum, jobnum);
 
				}
 
				else(){
 
					remotio_send_to_client(framenum, jobnum);
 
					fprintf(stderr,"Something is terribly wrong!");
 
				}
 
      	}
 
      /* If the client's status changes from running to idle */
 
      	if(clientstatus == DISTREN_REQUEST_DONEFRAME && iteration == 0){
 
      		finish_frame(jobnum, framenumprevious); // make it finish the previous frame or something.
 
      		frame_finder() ==> returns jobnum/framenum that are sent to slave, "render jobnum framenum"
 
      	}
 

	
 
      /* End Somewhat Pseudo-code */
 

	
 

	
 
      distrend_action_free(action);
 
    }
 

	
 
  distrend_unlisten(listenset);
 
  distrend_config_free(config);
 

	
 
  return 0;
 
}
0 comments (0 inline, 0 general)