217 EditorType = MasterEditor |
217 EditorType = MasterEditor |
218 |
218 |
219 def __init__(self): |
219 def __init__(self): |
220 config_filepath = self.ConfigFileName() |
220 config_filepath = self.ConfigFileName() |
221 config_is_saved = False |
221 config_is_saved = False |
|
222 self.Config = None |
222 if os.path.isfile(config_filepath): |
223 if os.path.isfile(config_filepath): |
223 config_xmlfile = open(config_filepath, 'r') |
224 config_xmlfile = open(config_filepath, 'r') |
224 self.Config = etree.fromstring( |
225 try: |
225 config_xmlfile.read(), EtherCATConfigParser) |
226 self.Config, error = \ |
226 config_is_saved = True |
227 EtherCATConfigParser.LoadXMLString(config_xmlfile.read()) |
|
228 if error is None: |
|
229 config_is_saved = True |
|
230 except Exception, e: |
|
231 error = e.message |
227 config_xmlfile.close() |
232 config_xmlfile.close() |
228 |
233 |
229 else: |
234 if error is not None: |
|
235 self.GetCTRoot().logger.write_error( |
|
236 _("Couldn't load %s network configuration file.") % CTNName) |
|
237 |
|
238 if self.Config is None: |
230 self.Config = EtherCATConfigParser.CreateElement("EtherCATConfig") |
239 self.Config = EtherCATConfigParser.CreateElement("EtherCATConfig") |
231 |
240 |
232 process_filepath = self.ProcessVariablesFileName() |
241 process_filepath = self.ProcessVariablesFileName() |
233 process_is_saved = False |
242 process_is_saved = False |
|
243 self.ProcessVariables = None |
234 if os.path.isfile(process_filepath): |
244 if os.path.isfile(process_filepath): |
235 process_xmlfile = open(process_filepath, 'r') |
245 process_xmlfile = open(process_filepath, 'r') |
236 self.ProcessVariables = etree.fromstring( |
246 try: |
237 process_xmlfile.read(), ProcessVariablesParser) |
247 self.ProcessVariables, error = \ |
238 process_is_saved = True |
248 ProcessVariablesParser.LoadXMLString(process_xmlfile.read()) |
|
249 if error is None: |
|
250 process_is_saved = True |
|
251 except Exception, e: |
|
252 error = e.message |
239 process_xmlfile.close() |
253 process_xmlfile.close() |
240 |
254 |
241 else: |
255 if error is not None: |
|
256 self.GetCTRoot().logger.write_error( |
|
257 _("Couldn't load %s network process variables file.") % CTNName) |
|
258 |
|
259 if self.ProcessVariables is None: |
242 self.ProcessVariables = ProcessVariablesParser.CreateElement("ProcessVariables") |
260 self.ProcessVariables = ProcessVariablesParser.CreateElement("ProcessVariables") |
243 |
261 |
244 if config_is_saved and process_is_saved: |
262 if config_is_saved and process_is_saved: |
245 self.CreateBuffer(True) |
263 self.CreateBuffer(True) |
246 else: |
264 else: |
539 slave = self.GetSlave(slave_pos) |
557 slave = self.GetSlave(slave_pos) |
540 if slave is not None: |
558 if slave is not None: |
541 type_infos = slave.getType() |
559 type_infos = slave.getType() |
542 device, module_extra_params = self.GetModuleInfos(type_infos) |
560 device, module_extra_params = self.GetModuleInfos(type_infos) |
543 if device is not None: |
561 if device is not None: |
544 print "Get Entries List", limits |
|
545 entries = device.GetEntriesList(limits) |
562 entries = device.GetEntriesList(limits) |
546 #print entries |
563 #print entries |
547 entries_list = entries.items() |
564 entries_list = entries.items() |
548 entries_list.sort() |
565 entries_list.sort() |
549 entries = [] |
566 entries = [] |