etherlab/etherlab.py
changeset 2381 1c40e3976cc2
parent 2379 015b724c30a5
child 2384 d7d9f0e60bc9
equal deleted inserted replaced
2380:b35bce45bc5a 2381:1c40e3976cc2
    41 def HexDecValue(context, *args):
    41 def HexDecValue(context, *args):
    42     return str(ExtractHexDecValue(args[0][0]))
    42     return str(ExtractHexDecValue(args[0][0]))
    43 
    43 
    44 
    44 
    45 def EntryName(context, *args):
    45 def EntryName(context, *args):
    46     return ExtractName(args[0],
    46     return ExtractName(args[0], args[1][0] if len(args) > 1 else None)
    47         args[1][0] if len(args) > 1 else None)
       
    48 
    47 
    49 
    48 
    50 ENTRY_INFOS_KEYS = [
    49 ENTRY_INFOS_KEYS = [
    51     ("Index", lambda x: "#x%4.4X" % int(x), "#x0000"),
    50     ("Index", lambda x: "#x%4.4X" % int(x), "#x0000"),
    52     ("SubIndex", str, "0"),
    51     ("SubIndex", str, "0"),
   229                          "groups": {}})
   228                          "groups": {}})
   230 
   229 
   231                     for group in self.groups_xpath(self.modules_infos):
   230                     for group in self.groups_xpath(self.modules_infos):
   232                         group_type = group.getType()
   231                         group_type = group.getType()
   233 
   232 
   234                         vendor_category["groups"].setdefault(group_type,
   233                         vendor_category["groups"].setdefault(
   235                             {"name": ExtractName(group.getName(), group_type),
   234                             group_type,
   236                              "parent": group.getParentGroup(),
   235                             {
   237                              "order": group.getSortOrder(),
   236                                 "name": ExtractName(group.getName(), group_type),
   238                              # "value": group.getcontent()["value"],
   237                                 "parent": group.getParentGroup(),
   239                              "devices": []})
   238                                 "order": group.getSortOrder(),
       
   239                                 # "value": group.getcontent()["value"],
       
   240                                 "devices": [],
       
   241                             })
   240 
   242 
   241                     for device in self.devices_xpath(self.modules_infos):
   243                     for device in self.devices_xpath(self.modules_infos):
   242                         device_group = device.getGroupType()
   244                         device_group = device.getGroupType()
   243                         if device_group not in vendor_category["groups"]:
   245                         if device_group not in vendor_category["groups"]:
   244                             raise ValueError("Not such group \"%\"" % device_group)
   246                             raise ValueError("Not such group \"%\"" % device_group)