netrender: fix reload

Note: this is tested and work with metaclass registering. If it doesn't work with registering lists (as currently in svn), I can still commit the metaclass method...
This commit is contained in:
Martin Poirier 2010-07-31 19:23:22 +00:00
parent 9d68a27365
commit a5e4fc782a
2 changed files with 163 additions and 151 deletions

@ -18,16 +18,31 @@
# This directory is a Python package. # This directory is a Python package.
from netrender import model # To support reload properly, try to access a package var, if it's there, reload everything
from netrender import operators try:
from netrender import client init_data
from netrender import slave
from netrender import master reload(model)
from netrender import master_html reload(operators)
from netrender import utils reload(client)
from netrender import balancing reload(slave)
from netrender import ui reload(master)
from netrender import repath reload(master_html)
reload(utils)
reload(balancing)
reload(ui)
reload(repath)
except:
from netrender import model
from netrender import operators
from netrender import client
from netrender import slave
from netrender import master
from netrender import master_html
from netrender import utils
from netrender import balancing
from netrender import ui
from netrender import repath
jobs = [] jobs = []
slaves = [] slaves = []
@ -38,14 +53,10 @@ init_data = True
init_address = True init_address = True
def register(): def register():
pass # TODO ui.addProperties()
def unregister(): def unregister():
import bpy import bpy
bpy.types.Scene.RemoveProperty("network_render") bpy.types.Scene.RemoveProperty("network_render")
bpy.types.unregister(ui.NetRenderJob)
bpy.types.unregister(ui.NetRenderSettings)
bpy.types.unregister(ui.NetRenderSlave)

@ -337,117 +337,118 @@ class NetRenderSlave(bpy.types.IDPropertyGroup):
class NetRenderJob(bpy.types.IDPropertyGroup): class NetRenderJob(bpy.types.IDPropertyGroup):
pass pass
bpy.types.Scene.PointerProperty(attr="network_render", type=NetRenderSettings, name="Network Render", description="Network Render Settings") def addProperties():
bpy.types.Scene.PointerProperty(attr="network_render", type=NetRenderSettings, name="Network Render", description="Network Render Settings")
NetRenderSettings.StringProperty( attr="server_address", NetRenderSettings.StringProperty( attr="server_address",
name="Server address", name="Server address",
description="IP or name of the master render server", description="IP or name of the master render server",
maxlen = 128, maxlen = 128,
default = "[default]") default = "[default]")
NetRenderSettings.IntProperty( attr="server_port", NetRenderSettings.IntProperty( attr="server_port",
name="Server port", name="Server port",
description="port of the master render server", description="port of the master render server",
default = 8000, default = 8000,
min=1, min=1,
max=65535) max=65535)
NetRenderSettings.BoolProperty( attr="master_broadcast", NetRenderSettings.BoolProperty( attr="master_broadcast",
name="Broadcast", name="Broadcast",
description="broadcast master server address on local network", description="broadcast master server address on local network",
default = True) default = True)
NetRenderSettings.BoolProperty( attr="slave_clear", NetRenderSettings.BoolProperty( attr="slave_clear",
name="Clear on exit", name="Clear on exit",
description="delete downloaded files on exit", description="delete downloaded files on exit",
default = True) default = True)
NetRenderSettings.BoolProperty( attr="slave_thumb", NetRenderSettings.BoolProperty( attr="slave_thumb",
name="Generate thumbnails", name="Generate thumbnails",
description="Generate thumbnails on slaves instead of master", description="Generate thumbnails on slaves instead of master",
default = False) default = False)
NetRenderSettings.BoolProperty( attr="slave_outputlog", NetRenderSettings.BoolProperty( attr="slave_outputlog",
name="Output render log on console", name="Output render log on console",
description="Output render text log to console as well as sending it to the master", description="Output render text log to console as well as sending it to the master",
default = True) default = True)
NetRenderSettings.BoolProperty( attr="master_clear", NetRenderSettings.BoolProperty( attr="master_clear",
name="Clear on exit", name="Clear on exit",
description="delete saved files on exit", description="delete saved files on exit",
default = False) default = False)
default_path = os.environ.get("TEMP") default_path = os.environ.get("TEMP")
if not default_path: if not default_path:
if os.name == 'nt': if os.name == 'nt':
default_path = "c:/tmp/" default_path = "c:/tmp/"
else: else:
default_path = "/tmp/" default_path = "/tmp/"
elif not default_path.endswith(os.sep): elif not default_path.endswith(os.sep):
default_path += os.sep default_path += os.sep
NetRenderSettings.StringProperty( attr="path", NetRenderSettings.StringProperty( attr="path",
name="Path", name="Path",
description="Path for temporary files", description="Path for temporary files",
maxlen = 128, maxlen = 128,
default = default_path, default = default_path,
subtype='FILE_PATH') subtype='FILE_PATH')
NetRenderSettings.StringProperty( attr="job_name", NetRenderSettings.StringProperty( attr="job_name",
name="Job name", name="Job name",
description="Name of the job", description="Name of the job",
maxlen = 128, maxlen = 128,
default = "[default]") default = "[default]")
NetRenderSettings.StringProperty( attr="job_category", NetRenderSettings.StringProperty( attr="job_category",
name="Job category", name="Job category",
description="Category of the job", description="Category of the job",
maxlen = 128, maxlen = 128,
default = "") default = "")
NetRenderSettings.IntProperty( attr="chunks", NetRenderSettings.IntProperty( attr="chunks",
name="Chunks", name="Chunks",
description="Number of frame to dispatch to each slave in one chunk", description="Number of frame to dispatch to each slave in one chunk",
default = 5, default = 5,
min=1, min=1,
max=65535) max=65535)
NetRenderSettings.IntProperty( attr="priority", NetRenderSettings.IntProperty( attr="priority",
name="Priority", name="Priority",
description="Priority of the job", description="Priority of the job",
default = 1, default = 1,
min=1, min=1,
max=10) max=10)
NetRenderSettings.StringProperty( attr="job_id", NetRenderSettings.StringProperty( attr="job_id",
name="Network job id", name="Network job id",
description="id of the last sent render job", description="id of the last sent render job",
maxlen = 64, maxlen = 64,
default = "") default = "")
NetRenderSettings.IntProperty( attr="active_slave_index", NetRenderSettings.IntProperty( attr="active_slave_index",
name="Index of the active slave", name="Index of the active slave",
description="", description="",
default = -1, default = -1,
min= -1, min= -1,
max=65535) max=65535)
NetRenderSettings.IntProperty( attr="active_blacklisted_slave_index", NetRenderSettings.IntProperty( attr="active_blacklisted_slave_index",
name="Index of the active slave", name="Index of the active slave",
description="", description="",
default = -1, default = -1,
min= -1, min= -1,
max=65535) max=65535)
NetRenderSettings.IntProperty( attr="active_job_index", NetRenderSettings.IntProperty( attr="active_job_index",
name="Index of the active job", name="Index of the active job",
description="", description="",
default = -1, default = -1,
min= -1, min= -1,
max=65535) max=65535)
NetRenderSettings.EnumProperty(attr="mode", NetRenderSettings.EnumProperty(attr="mode",
items=( items=(
("RENDER_CLIENT", "Client", "Act as render client"), ("RENDER_CLIENT", "Client", "Act as render client"),
("RENDER_MASTER", "Master", "Act as render master"), ("RENDER_MASTER", "Master", "Act as render master"),
@ -457,17 +458,17 @@ NetRenderSettings.EnumProperty(attr="mode",
description="Mode of operation of this instance", description="Mode of operation of this instance",
default="RENDER_CLIENT") default="RENDER_CLIENT")
NetRenderSettings.CollectionProperty(attr="slaves", type=NetRenderSlave, name="Slaves", description="") NetRenderSettings.CollectionProperty(attr="slaves", type=NetRenderSlave, name="Slaves", description="")
NetRenderSettings.CollectionProperty(attr="slaves_blacklist", type=NetRenderSlave, name="Slaves Blacklist", description="") NetRenderSettings.CollectionProperty(attr="slaves_blacklist", type=NetRenderSlave, name="Slaves Blacklist", description="")
NetRenderSettings.CollectionProperty(attr="jobs", type=NetRenderJob, name="Job List", description="") NetRenderSettings.CollectionProperty(attr="jobs", type=NetRenderJob, name="Job List", description="")
NetRenderSlave.StringProperty( attr="name", NetRenderSlave.StringProperty( attr="name",
name="Name of the slave", name="Name of the slave",
description="", description="",
maxlen = 64, maxlen = 64,
default = "") default = "")
NetRenderJob.StringProperty( attr="name", NetRenderJob.StringProperty( attr="name",
name="Name of the job", name="Name of the job",
description="", description="",
maxlen = 128, maxlen = 128,