Fix generating WO registers
parent
5db18ec40f
commit
4cd6118d12
|
|
@ -29,9 +29,11 @@ def writePropertyGetSetMethodDeclarationsRtu(fileDescriptor, registerDefinitions
|
||||||
else:
|
else:
|
||||||
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']))
|
||||||
|
|
||||||
writeLine(fileDescriptor, ' %s %s() const;' % (propertyTyp, propertyName))
|
# Check if we require a read method
|
||||||
|
if registerDefinition['access'] == 'RW' or registerDefinition['access'] == 'RO':
|
||||||
|
writeLine(fileDescriptor, ' %s %s() const;' % (propertyTyp, propertyName))
|
||||||
|
|
||||||
# Check if we require a set method
|
# Check if we require a write method
|
||||||
if registerDefinition['access'] == 'RW' or registerDefinition['access'] == 'WO':
|
if registerDefinition['access'] == 'RW' or registerDefinition['access'] == 'WO':
|
||||||
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))
|
||||||
|
|
||||||
|
|
@ -42,18 +44,20 @@ def writePropertyGetSetMethodImplementationsRtu(fileDescriptor, className, regis
|
||||||
for registerDefinition in registerDefinitions:
|
for registerDefinition in registerDefinitions:
|
||||||
propertyName = registerDefinition['id']
|
propertyName = registerDefinition['id']
|
||||||
propertyTyp = getCppDataType(registerDefinition)
|
propertyTyp = getCppDataType(registerDefinition)
|
||||||
# Get
|
|
||||||
if 'enum' in registerDefinition:
|
|
||||||
writeLine(fileDescriptor, '%s::%s %s::%s() const' % (className, propertyTyp, className, propertyName))
|
|
||||||
else:
|
|
||||||
writeLine(fileDescriptor, '%s %s::%s() const' % (propertyTyp, className, propertyName))
|
|
||||||
|
|
||||||
writeLine(fileDescriptor, '{')
|
|
||||||
writeLine(fileDescriptor, ' return m_%s;' % propertyName)
|
|
||||||
writeLine(fileDescriptor, '}')
|
|
||||||
writeLine(fileDescriptor)
|
|
||||||
|
|
||||||
# Check if we require a set method
|
# Check if we require a read method
|
||||||
|
if registerDefinition['access'] == 'RW' or registerDefinition['access'] == 'RO':
|
||||||
|
if 'enum' in registerDefinition:
|
||||||
|
writeLine(fileDescriptor, '%s::%s %s::%s() const' % (className, propertyTyp, className, propertyName))
|
||||||
|
else:
|
||||||
|
writeLine(fileDescriptor, '%s %s::%s() const' % (propertyTyp, className, propertyName))
|
||||||
|
|
||||||
|
writeLine(fileDescriptor, '{')
|
||||||
|
writeLine(fileDescriptor, ' return m_%s;' % propertyName)
|
||||||
|
writeLine(fileDescriptor, '}')
|
||||||
|
writeLine(fileDescriptor)
|
||||||
|
|
||||||
|
# Check if we require a write method
|
||||||
if registerDefinition['access'] == 'RW' or registerDefinition['access'] == 'WO':
|
if registerDefinition['access'] == 'RW' or registerDefinition['access'] == 'WO':
|
||||||
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, '{')
|
||||||
|
|
|
||||||
|
|
@ -27,9 +27,11 @@ def writePropertyGetSetMethodDeclarationsTcp(fileDescriptor, registerDefinitions
|
||||||
else:
|
else:
|
||||||
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']))
|
||||||
|
|
||||||
writeLine(fileDescriptor, ' %s %s() const;' % (propertyTyp, propertyName))
|
# Check if we require a read method
|
||||||
|
if registerDefinition['access'] == 'RW' or registerDefinition['access'] == 'RO':
|
||||||
|
writeLine(fileDescriptor, ' %s %s() const;' % (propertyTyp, propertyName))
|
||||||
|
|
||||||
# Check if we require a set method
|
# Check if we require a write method
|
||||||
if registerDefinition['access'] == 'RW' or registerDefinition['access'] == 'WO':
|
if registerDefinition['access'] == 'RW' or registerDefinition['access'] == 'WO':
|
||||||
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))
|
||||||
|
|
||||||
|
|
@ -40,18 +42,20 @@ def writePropertyGetSetMethodImplementationsTcp(fileDescriptor, className, regis
|
||||||
for registerDefinition in registerDefinitions:
|
for registerDefinition in registerDefinitions:
|
||||||
propertyName = registerDefinition['id']
|
propertyName = registerDefinition['id']
|
||||||
propertyTyp = getCppDataType(registerDefinition)
|
propertyTyp = getCppDataType(registerDefinition)
|
||||||
# Get
|
|
||||||
if 'enum' in registerDefinition:
|
|
||||||
writeLine(fileDescriptor, '%s::%s %s::%s() const' % (className, propertyTyp, className, propertyName))
|
|
||||||
else:
|
|
||||||
writeLine(fileDescriptor, '%s %s::%s() const' % (propertyTyp, className, propertyName))
|
|
||||||
|
|
||||||
writeLine(fileDescriptor, '{')
|
|
||||||
writeLine(fileDescriptor, ' return m_%s;' % propertyName)
|
|
||||||
writeLine(fileDescriptor, '}')
|
|
||||||
writeLine(fileDescriptor)
|
|
||||||
|
|
||||||
# Check if we require a set method
|
# Check if we require a read method
|
||||||
|
if registerDefinition['access'] == 'RW' or registerDefinition['access'] == 'RO':
|
||||||
|
if 'enum' in registerDefinition:
|
||||||
|
writeLine(fileDescriptor, '%s::%s %s::%s() const' % (className, propertyTyp, className, propertyName))
|
||||||
|
else:
|
||||||
|
writeLine(fileDescriptor, '%s %s::%s() const' % (propertyTyp, className, propertyName))
|
||||||
|
|
||||||
|
writeLine(fileDescriptor, '{')
|
||||||
|
writeLine(fileDescriptor, ' return m_%s;' % propertyName)
|
||||||
|
writeLine(fileDescriptor, '}')
|
||||||
|
writeLine(fileDescriptor)
|
||||||
|
|
||||||
|
# Check if we require a write method
|
||||||
if registerDefinition['access'] == 'RW' or registerDefinition['access'] == 'WO':
|
if registerDefinition['access'] == 'RW' or registerDefinition['access'] == 'WO':
|
||||||
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, '{')
|
||||||
|
|
@ -75,7 +79,7 @@ def writePropertyGetSetMethodImplementationsTcp(fileDescriptor, className, regis
|
||||||
|
|
||||||
def writePropertyUpdateMethodImplementationsTcp(fileDescriptor, className, registerDefinitions):
|
def writePropertyUpdateMethodImplementationsTcp(fileDescriptor, className, registerDefinitions):
|
||||||
for registerDefinition in registerDefinitions:
|
for registerDefinition in registerDefinitions:
|
||||||
if 'readSchedule' in registerDefinition and registerDefinition['readSchedule'] == 'init':
|
if 'readSchedule' not in registerDefinition or registerDefinition['readSchedule'] == 'init':
|
||||||
continue
|
continue
|
||||||
|
|
||||||
propertyName = registerDefinition['id']
|
propertyName = registerDefinition['id']
|
||||||
|
|
|
||||||
|
|
@ -352,7 +352,7 @@ def writeBlockGetMethodDeclarations(fileDescriptor, registerDefinitions):
|
||||||
|
|
||||||
def writePropertyUpdateMethodDeclarations(fileDescriptor, registerDefinitions):
|
def writePropertyUpdateMethodDeclarations(fileDescriptor, registerDefinitions):
|
||||||
for registerDefinition in registerDefinitions:
|
for registerDefinition in registerDefinitions:
|
||||||
if 'readSchedule' in registerDefinition and registerDefinition['readSchedule'] == 'init':
|
if 'readSchedule' not in registerDefinition or registerDefinition['readSchedule'] == 'init':
|
||||||
continue
|
continue
|
||||||
|
|
||||||
propertyName = registerDefinition['id']
|
propertyName = registerDefinition['id']
|
||||||
|
|
@ -427,6 +427,9 @@ 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':
|
||||||
|
continue
|
||||||
|
|
||||||
propertyName = registerDefinition['id']
|
propertyName = registerDefinition['id']
|
||||||
propertyTyp = getCppDataType(registerDefinition)
|
propertyTyp = getCppDataType(registerDefinition)
|
||||||
line = ('" - %s: " << %s->%s()' % (registerDefinition['description'], debugObjectParamName, propertyName))
|
line = ('" - %s: " << %s->%s()' % (registerDefinition['description'], debugObjectParamName, propertyName))
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue