Files @ 8b67a70070ef
Branch filter:

Location: DistRen/TODO

LordOfWar
Fixed a syntax error, changing curvy brackets to parenthesis

added a frameset structure

adjusted the job_builder and frame_finder functions to use the new structure

prepared to start a function called status_report_generator, this function will scan all the jobs and figure out how done they are

preparing to:
add code to the frame_finder function to scan all the jobs and then run the job of highest priority. Then I will add code to the status_report_generate to change the priority of the job to something the frame_finder won't look it if the job is completed.
1. Create a CLI interface for distren
	X command: distren
	X args: -i infile.tar.bz2 -o outfile.tar.bz2 
	action: submits and blocks and retreives result of rendering the contents of infile.tar.bz2. Should currently just call stub functions.
	
2. Design of stubs in distren library:
   	X Stub for submitting file to server
	WIP Write configuration loader
	Stub for submitting file to a server (using a stream)
	Stub for waiting for server -> Maybe the client can just poll? I've got to decide this.
	Stub for retrieving result (using another stream)

3. Design of stubs in distrend:
	Stub for getting info from the tarball/validifying the tarball. Read distren-job.xml, a file in the tarball, to find out 1. which rendering system to use (that system, e.g. blender/povray, can read more specifics, such as name of file to pass to blender and frames. Options common between different systems will be handled in common as best as possible)
	Storage of data + metadata: Stubs for unpacking tarball, assigning the submission an ID, and retrieving the file by the submission ID.
	Actual rendering: Stub for calling subsystem's action that does the rendering. The subsystem should accept an XML fragment (a libxml subtree) that is specific to the subsystem. Ideally, subsystems will be both pluggable at both the dlopen() and link-time levels. dlopen may actually be easier than link-time pluggables...
	Stub for submission of new jobs to be distributed (a subsystem rendering a file with multiples frames should generate a subjob for each frame)
	Stub for publishing file and constructing job description so that the job can be shared