Make access more robust and take care in more situations if a read method is even required
parent
4cd6118d12
commit
8e6f96ac2e
|
|
@ -30,11 +30,11 @@ def writePropertyGetSetMethodDeclarationsRtu(fileDescriptor, registerDefinitions
|
||||||
writeLine(fileDescriptor, ' /* %s - Address: %s, Size: %s */' % (registerDefinition['description'], registerDefinition['address'], registerDefinition['size']))
|
writeLine(fileDescriptor, ' /* %s - Address: %s, Size: %s */' % (registerDefinition['description'], registerDefinition['address'], registerDefinition['size']))
|
||||||
|
|
||||||
# Check if we require a read method
|
# Check if we require a read method
|
||||||
if registerDefinition['access'] == 'RW' or registerDefinition['access'] == 'RO':
|
if 'R' in registerDefinition['access']:
|
||||||
writeLine(fileDescriptor, ' %s %s() const;' % (propertyTyp, propertyName))
|
writeLine(fileDescriptor, ' %s %s() const;' % (propertyTyp, propertyName))
|
||||||
|
|
||||||
# Check if we require a write method
|
# Check if we require a write method
|
||||||
if registerDefinition['access'] == 'RW' or registerDefinition['access'] == 'WO':
|
if 'W' in registerDefinition['access']:
|
||||||
writeLine(fileDescriptor, ' ModbusRtuReply *set%s(%s %s);' % (propertyName[0].upper() + propertyName[1:], propertyTyp, propertyName))
|
writeLine(fileDescriptor, ' ModbusRtuReply *set%s(%s %s);' % (propertyName[0].upper() + propertyName[1:], propertyTyp, propertyName))
|
||||||
|
|
||||||
writeLine(fileDescriptor)
|
writeLine(fileDescriptor)
|
||||||
|
|
@ -46,7 +46,7 @@ def writePropertyGetSetMethodImplementationsRtu(fileDescriptor, className, regis
|
||||||
propertyTyp = getCppDataType(registerDefinition)
|
propertyTyp = getCppDataType(registerDefinition)
|
||||||
|
|
||||||
# Check if we require a read method
|
# Check if we require a read method
|
||||||
if registerDefinition['access'] == 'RW' or registerDefinition['access'] == 'RO':
|
if 'R' in registerDefinition['access']:
|
||||||
if 'enum' in registerDefinition:
|
if 'enum' in registerDefinition:
|
||||||
writeLine(fileDescriptor, '%s::%s %s::%s() const' % (className, propertyTyp, className, propertyName))
|
writeLine(fileDescriptor, '%s::%s %s::%s() const' % (className, propertyTyp, className, propertyName))
|
||||||
else:
|
else:
|
||||||
|
|
@ -58,7 +58,7 @@ def writePropertyGetSetMethodImplementationsRtu(fileDescriptor, className, regis
|
||||||
writeLine(fileDescriptor)
|
writeLine(fileDescriptor)
|
||||||
|
|
||||||
# Check if we require a write method
|
# Check if we require a write method
|
||||||
if registerDefinition['access'] == 'RW' or registerDefinition['access'] == 'WO':
|
if 'W' in registerDefinition['access']:
|
||||||
writeLine(fileDescriptor, 'ModbusRtuReply *%s::set%s(%s %s)' % (className, propertyName[0].upper() + propertyName[1:], propertyTyp, propertyName))
|
writeLine(fileDescriptor, 'ModbusRtuReply *%s::set%s(%s %s)' % (className, propertyName[0].upper() + propertyName[1:], propertyTyp, propertyName))
|
||||||
writeLine(fileDescriptor, '{')
|
writeLine(fileDescriptor, '{')
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -28,11 +28,11 @@ def writePropertyGetSetMethodDeclarationsTcp(fileDescriptor, registerDefinitions
|
||||||
writeLine(fileDescriptor, ' /* %s - Address: %s, Size: %s */' % (registerDefinition['description'], registerDefinition['address'], registerDefinition['size']))
|
writeLine(fileDescriptor, ' /* %s - Address: %s, Size: %s */' % (registerDefinition['description'], registerDefinition['address'], registerDefinition['size']))
|
||||||
|
|
||||||
# Check if we require a read method
|
# Check if we require a read method
|
||||||
if registerDefinition['access'] == 'RW' or registerDefinition['access'] == 'RO':
|
if 'R' in registerDefinition['access']:
|
||||||
writeLine(fileDescriptor, ' %s %s() const;' % (propertyTyp, propertyName))
|
writeLine(fileDescriptor, ' %s %s() const;' % (propertyTyp, propertyName))
|
||||||
|
|
||||||
# Check if we require a write method
|
# Check if we require a write method
|
||||||
if registerDefinition['access'] == 'RW' or registerDefinition['access'] == 'WO':
|
if 'W' in registerDefinition['access']:
|
||||||
writeLine(fileDescriptor, ' QModbusReply *set%s(%s %s);' % (propertyName[0].upper() + propertyName[1:], propertyTyp, propertyName))
|
writeLine(fileDescriptor, ' QModbusReply *set%s(%s %s);' % (propertyName[0].upper() + propertyName[1:], propertyTyp, propertyName))
|
||||||
|
|
||||||
writeLine(fileDescriptor)
|
writeLine(fileDescriptor)
|
||||||
|
|
@ -44,7 +44,7 @@ def writePropertyGetSetMethodImplementationsTcp(fileDescriptor, className, regis
|
||||||
propertyTyp = getCppDataType(registerDefinition)
|
propertyTyp = getCppDataType(registerDefinition)
|
||||||
|
|
||||||
# Check if we require a read method
|
# Check if we require a read method
|
||||||
if registerDefinition['access'] == 'RW' or registerDefinition['access'] == 'RO':
|
if 'R' in registerDefinition['access']:
|
||||||
if 'enum' in registerDefinition:
|
if 'enum' in registerDefinition:
|
||||||
writeLine(fileDescriptor, '%s::%s %s::%s() const' % (className, propertyTyp, className, propertyName))
|
writeLine(fileDescriptor, '%s::%s %s::%s() const' % (className, propertyTyp, className, propertyName))
|
||||||
else:
|
else:
|
||||||
|
|
@ -56,7 +56,7 @@ def writePropertyGetSetMethodImplementationsTcp(fileDescriptor, className, regis
|
||||||
writeLine(fileDescriptor)
|
writeLine(fileDescriptor)
|
||||||
|
|
||||||
# Check if we require a write method
|
# Check if we require a write method
|
||||||
if registerDefinition['access'] == 'RW' or registerDefinition['access'] == 'WO':
|
if 'W' in registerDefinition['access']:
|
||||||
writeLine(fileDescriptor, 'QModbusReply *%s::set%s(%s %s)' % (className, propertyName[0].upper() + propertyName[1:], propertyTyp, propertyName))
|
writeLine(fileDescriptor, 'QModbusReply *%s::set%s(%s %s)' % (className, propertyName[0].upper() + propertyName[1:], propertyTyp, propertyName))
|
||||||
writeLine(fileDescriptor, '{')
|
writeLine(fileDescriptor, '{')
|
||||||
|
|
||||||
|
|
@ -288,7 +288,7 @@ def writeTestReachabilityImplementationsTcp(fileDescriptor, className, registerD
|
||||||
writeLine(fileDescriptor, ' m_testRechableReply = read%s();' % (propertyName[0].upper() + propertyName[1:]))
|
writeLine(fileDescriptor, ' m_testRechableReply = read%s();' % (propertyName[0].upper() + propertyName[1:]))
|
||||||
writeLine(fileDescriptor, ' if (!m_testRechableReply) {')
|
writeLine(fileDescriptor, ' if (!m_testRechableReply) {')
|
||||||
writeLine(fileDescriptor, ' qCDebug(dc%s()) << "Error occurred verifying reachability by reading \\"%s\\" register";' % (className, checkReachableRegister['description']))
|
writeLine(fileDescriptor, ' qCDebug(dc%s()) << "Error occurred verifying reachability by reading \\"%s\\" register";' % (className, checkReachableRegister['description']))
|
||||||
writeLine(fileDescriptor, ' emit checkReachabilityFailed();')
|
writeLine(fileDescriptor, ' emit checkReachabilityFailed();')
|
||||||
writeLine(fileDescriptor, ' return;')
|
writeLine(fileDescriptor, ' return;')
|
||||||
writeLine(fileDescriptor, ' }')
|
writeLine(fileDescriptor, ' }')
|
||||||
writeLine(fileDescriptor)
|
writeLine(fileDescriptor)
|
||||||
|
|
|
||||||
|
|
@ -427,7 +427,7 @@ def writeBlocksUpdateMethodDeclarations(fileDescriptor, blockDefinitions):
|
||||||
|
|
||||||
def writeRegistersDebugLine(fileDescriptor, debugObjectParamName, registerDefinitions):
|
def writeRegistersDebugLine(fileDescriptor, debugObjectParamName, registerDefinitions):
|
||||||
for registerDefinition in registerDefinitions:
|
for registerDefinition in registerDefinitions:
|
||||||
if registerDefinition['access'] == 'WO':
|
if not 'R' in registerDefinition['access']:
|
||||||
continue
|
continue
|
||||||
|
|
||||||
propertyName = registerDefinition['id']
|
propertyName = registerDefinition['id']
|
||||||
|
|
@ -440,6 +440,9 @@ def writeRegistersDebugLine(fileDescriptor, debugObjectParamName, registerDefini
|
||||||
|
|
||||||
def writePropertyChangedSignals(fileDescriptor, registerDefinitions):
|
def writePropertyChangedSignals(fileDescriptor, registerDefinitions):
|
||||||
for registerDefinition in registerDefinitions:
|
for registerDefinition in registerDefinitions:
|
||||||
|
if not 'R' in registerDefinition['access']:
|
||||||
|
continue
|
||||||
|
|
||||||
propertyName = registerDefinition['id']
|
propertyName = registerDefinition['id']
|
||||||
propertyTyp = getCppDataType(registerDefinition)
|
propertyTyp = getCppDataType(registerDefinition)
|
||||||
if propertyTyp == 'QString':
|
if propertyTyp == 'QString':
|
||||||
|
|
@ -452,6 +455,9 @@ def writePropertyChangedSignals(fileDescriptor, registerDefinitions):
|
||||||
|
|
||||||
def writeProtectedPropertyMembers(fileDescriptor, registerDefinitions):
|
def writeProtectedPropertyMembers(fileDescriptor, registerDefinitions):
|
||||||
for registerDefinition in registerDefinitions:
|
for registerDefinition in registerDefinitions:
|
||||||
|
if not 'R' in registerDefinition['access']:
|
||||||
|
continue
|
||||||
|
|
||||||
propertyName = registerDefinition['id']
|
propertyName = registerDefinition['id']
|
||||||
propertyTyp = getCppDataType(registerDefinition)
|
propertyTyp = getCppDataType(registerDefinition)
|
||||||
if 'defaultValue' in registerDefinition:
|
if 'defaultValue' in registerDefinition:
|
||||||
|
|
@ -463,6 +469,9 @@ def writeProtectedPropertyMembers(fileDescriptor, registerDefinitions):
|
||||||
def writePropertyProcessMethodDeclaration(fileDescriptor, registerDefinitions):
|
def writePropertyProcessMethodDeclaration(fileDescriptor, registerDefinitions):
|
||||||
propertyVariables = []
|
propertyVariables = []
|
||||||
for registerDefinition in registerDefinitions:
|
for registerDefinition in registerDefinitions:
|
||||||
|
if not 'R' in registerDefinition['access']:
|
||||||
|
continue
|
||||||
|
|
||||||
propertyName = registerDefinition['id']
|
propertyName = registerDefinition['id']
|
||||||
writeLine(fileDescriptor, ' void process%sRegisterValues(const QVector<quint16> values);' % (propertyName[0].upper() + propertyName[1:]))
|
writeLine(fileDescriptor, ' void process%sRegisterValues(const QVector<quint16> values);' % (propertyName[0].upper() + propertyName[1:]))
|
||||||
|
|
||||||
|
|
@ -472,6 +481,9 @@ def writePropertyProcessMethodDeclaration(fileDescriptor, registerDefinitions):
|
||||||
def writePropertyProcessMethodImplementations(fileDescriptor, className, registerDefinitions):
|
def writePropertyProcessMethodImplementations(fileDescriptor, className, registerDefinitions):
|
||||||
propertyVariables = []
|
propertyVariables = []
|
||||||
for registerDefinition in registerDefinitions:
|
for registerDefinition in registerDefinitions:
|
||||||
|
if not 'R' in registerDefinition['access']:
|
||||||
|
continue
|
||||||
|
|
||||||
propertyName = registerDefinition['id']
|
propertyName = registerDefinition['id']
|
||||||
propertyTyp = getCppDataType(registerDefinition)
|
propertyTyp = getCppDataType(registerDefinition)
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue