def startpoint(self, object, attr): if self.workobj != None: self.workobj.startpoint(object, attr) elif object == "neurons" and self.workobj == None: self.workobj = clneurons.clneurons(attr=attr) self.__neurons.append(self.workobj) self.workobj.connections = self.connections else: sys.stderr.write("Unexpected tag in <population> expression: %s\nABBORT\n\n" % object) sys.exit(1)
def startpoint(self,object,attr): if self.workobj == None and object == "simulation": if attr.get("maxspikes"): self.maxspikes = float( attr["maxspikes"] ) if attr.get("SEED"): rnd.seed( float( attr["SEED"] ) ) else: rnd.seed(time.microsecond) self.workobj = "simulation" return elif self.workobj == None and object == "output": if not self.objlst.get("outputs",0): self.objlst["outputs"]=[] self.objlst["outputs"].append(clmodel.file(attr)) self.workobj = "output" return elif self.workobj == None and object == "prc": self.workobj = clprc.clprc(object,attr) if not self.objlst.get("prc", 0): self.objlst["prc"]={} self.objlst["prc"][self.workobj.name]= self.workobj elif self.workobj == None and object == "rprc": self.workobj = clrprc.clrprc(find=self.find,attr=attr) if not self.objlst.get("prc", 0): self.objlst["prc"]={} self.objlst["prc"][self.workobj.name]= self.workobj elif self.workobj == None and object == "population": self.workobj = clpopulation.clpopulation(attr=attr) if not self.objlst.get("neurons", 0): self.objlst["neurons"]={} self.objlst["neurons"][self.workobj.name]= self.workobj elif self.workobj == None and object == "neurons": self.workobj = clneurons.clneurons(attr=attr) if not self.objlst.get("neurons", 0): self.objlst["neurons"]={} self.objlst["neurons"][self.workobj.name]= self.workobj elif self.workobj == None and object == "noisyneurons": self.workobj = clnoisyneurons.clnoisyneurons(attr=attr) if not self.objlst.get("neurons", 0): self.objlst["neurons"]={} self.objlst["neurons"][self.workobj.name]= self.workobj #DB>> elif self.workobj == None and object == "repeaters": self.workobj = clrepeaters.clrepeaters(attr=attr) if not self.objlst.get("neurons", 0): self.objlst["neurons"]={} self.objlst["neurons"][self.workobj.name]= self.workobj #<<DB elif self.workobj == None and object == "connection": self.workobj = clconnection.clconnection(find=self.find,attr=attr) if not self.objlst.get("connections", 0): self.objlst["connections"]={} self.objlst["connections"][self.workobj.name]= self.workobj elif self.workobj != None: self.workobj.startpoint(object,attr) else: if self.mode == "STD": sys.stderr.write("Unexpected tag <%s> in <model> expression\nABORT\n\n"%object); sys.exit(1) else: self.error ="Unexpected tag <%s> in <model> expression\nABORT\n\n"%object