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