def isEepProvidedCode(xmlRorgNode): if xmlRorgNode.find("teachin") is None: return " return false;" teachinType = xmlRorgNode.find("teachin/type") if teachinType is None: return " return false;" variation2CaseNode = teachinType.find("./case[title='Variation 2']") if variation2CaseNode is None: return " return false;" lrnTypeDatafieldNode = variation2CaseNode.find( "./datafield[data='LRN Type']") if lrnTypeDatafieldNode is None: util.error( xmlRorgNode.find("telegram").text + " teachin variation 2, \"LRN Type\" bit description not found") offset = lrnTypeDatafieldNode.find("bitoffs").text if lrnTypeDatafieldNode.find("bitsize").text != "1": util.error( xmlRorgNode.find("telegram").text + " telegram : teachin LRN Type wrong size, expected 1") eepProvidedValue = xmlHelper.findInDatafield( datafieldXmlNode=lrnTypeDatafieldNode, select="value", where="description", equals="telegram with EEP number and Manufacturer ID") return " return erp1Data[" + offset + "] == " + eepProvidedValue + ";\n"
def isTeachInCode(xmlRorgNode): if xmlRorgNode.find("teachin") is None: return " return false;" for teachinCase in xmlRorgNode.findall("teachin/type/case"): lrnBitDatafieldNode = teachinCase.find("./datafield[data='LRN Bit']") if lrnBitDatafieldNode is None: return " return false;" offset = lrnBitDatafieldNode.find("bitoffs").text if lrnBitDatafieldNode.find("bitsize").text != "1": util.error(xmlRorgNode.find("telegram").text + " telegram : teachin LRN Bit wrong size, expected 1") teachInValue = xmlHelper.findInDatafield(datafieldXmlNode=lrnBitDatafieldNode, select="value", where="description", equals="Teach-in telegram") return " return erp1Data[" + offset + "] == " + teachInValue + ";\n" return " return false;"