def trace_instance_list(self, cmd, names): list = self.validate(cmd, names) for instname in list: name = openaccess22.oaSimpleName(self.mNS, instname) inst = None typname = self.mDesign.getType().oaTypeEnum() if typname == openaccess22.oacBlockType: inst = openaccess22.oaInst.static_find(self.mDesign, name) if typname == openaccess22.oacModuleType: inst = openaccess22.oaModInst.static_find(self.mDesign, name) if typname == openaccess22.oacOccurrenceType: inst = openaccess22.oaOccInst.static_find(self.mDesign.getTopOccurrence(), name) if inst == None: print "Can't Find Instance: ", instname continue instname = openaccess22.oaString() if inst.isOccObject(): inst.getPathName(self.mNS, instname) else: inst.getName(self.mNS, instname) instname = str(instname) rep = "Inst: " + instname self.mReport.append(rep) if self.mFirstObj == None: self.mFirstObj = inst self.trace_instance(inst, self.mDir, 1) self.log_report(cmd, names)
def FindObject(self, name): ns = openaccess22.oaNativeNS() simplename = openaccess22.oaSimpleName(ns, name) typname = self.mDesign.getType().oaTypeEnum() if (typname == openaccess22.oacBlockType): return oaInst.static_find(self.mDesign, name) if (typname == openaccess22.oacModuleType): return oaModInst.static_find(self.mDesign, name) if (typname == openaccess22.oacOccurrenceType): return oaOccInst.static_find(self.mDesign.getTopOccurrence(), name) return None
def FindObject(self,name): ns=openaccess22.oaNativeNS() simplename=openaccess22.oaSimpleName(ns,name) typname=self.mDesign.getType().oaTypeEnum() if (typname==openaccess22.oacBlockType): return oaInst.static_find(self.mDesign,name) if (typname==openaccess22.oacModuleType): return oaModInst.static_find(self.mDesign,name) if (typname==openaccess22.oacOccurrenceType): return oaOccInst.static_find(self.mDesign.getTopOccurrence(),name) return None
def trace_occ_list(self, cmd, names): data = self.validate(cmd, names) if len(data) == 1: ns = openaccess22.oaNativeNS() name = openaccess22.oaSimpleName(ns, data[0]) inst = openaccess22.oaOccInst.static_find(self.mDesign.getTopOccurrence(), name) if inst: occ = inst.getMasterOccurrence() if occ: self.mDesign = occ if self.mFirstObj == None: self.mFirstObj = self.mDesign