From e3422e80737412e14c63f68f0619461ffca4b079 Mon Sep 17 00:00:00 2001 From: "p.loedige" Date: Wed, 6 Jan 2021 16:42:51 +0100 Subject: [PATCH] added and tested get_buffer_size function --- xml_reader.py | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/xml_reader.py b/xml_reader.py index 3ca456f..2bdf648 100644 --- a/xml_reader.py +++ b/xml_reader.py @@ -41,6 +41,24 @@ class Xml_reader: """ return [device.get("name") for device in self.root.findall('Device')] + def get_buffer_size(self, device_name:str) -> int: + """method to read the buffer size of a given device from the XML + + Args: + device_name (str): the name of a device + + Raises: + NameError: device_name will be checked against the config XML + + Returns: + int: the buffer size for the device + """ + if self.root.find("Device[@name='%s']" % device_name) is None: + raise NameError("unknown device %s" % device_name) + buffer_size = self.root.find( + "Device[@name='%s']" % device_name).get("buffer_size") + return buffer_size if buffer_size != None else 0 + def get_port(self,device_name:str) -> dict: """returns the information about a port of a given device @@ -72,4 +90,6 @@ class Xml_reader: # print(xml_reader.get_device_names) # print(xml_reader.get_port("example")) # print(xml_reader.get_port("PWM_example")) -# print(xml_reader.get_port("sensorarray")) \ No newline at end of file +# print(xml_reader.get_port("sensorarray")) +# print(xml_reader.get_buffer_size("PWM_example")) +# print(xml_reader.get_buffer_size("example")) \ No newline at end of file