This is an automated email from the ASF dual-hosted git repository.

cdutz pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/plc4x.git

commit e8d7def7de049ced5f83063dc81aea70320d47da
Author: Christofer Dutz <christofer.d...@c-ware.de>
AuthorDate: Fri Sep 5 19:52:53 2025 +0200

    fix: Fixed some slightly off types in bacnet (uint was used where int was 
appropriate)
---
 .../model/BACnetApplicationTagSignedInteger.go     |  8 ++--
 .../model/BACnetContextTagSignedInteger.go         |  8 ++--
 .../model/BACnetTagPayloadSignedInteger.go         | 56 +++++++++++-----------
 .../BACnetApplicationTagSignedInteger.java         | 12 ++---
 .../readwrite/BACnetContextTagSignedInteger.java   | 12 ++---
 .../readwrite/BACnetTagPayloadSignedInteger.java   | 19 ++++----
 .../plc4x/java/bacnetip/RandomPackagesTest.java    |  6 +--
 .../resources/protocols/bacnetip/bacnet-tags.mspec |  6 +--
 8 files changed, 59 insertions(+), 68 deletions(-)

diff --git 
a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagSignedInteger.go
 
b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagSignedInteger.go
index b71e98b7d6..2bc12469c4 100644
--- 
a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagSignedInteger.go
+++ 
b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagSignedInteger.go
@@ -44,7 +44,7 @@ type BACnetApplicationTagSignedInteger interface {
        // GetPayload returns Payload (property field)
        GetPayload() BACnetTagPayloadSignedInteger
        // GetActualValue returns ActualValue (virtual field)
-       GetActualValue() uint64
+       GetActualValue() int64
        // IsBACnetApplicationTagSignedInteger is a marker method to prevent 
unintentional type checks (interfaces of same signature)
        IsBACnetApplicationTagSignedInteger()
        // CreateBuilder creates a BACnetApplicationTagSignedIntegerBuilder
@@ -216,10 +216,10 @@ func (m *_BACnetApplicationTagSignedInteger) GetPayload() 
BACnetTagPayloadSigned
 /////////////////////// Accessors for virtual fields.
 ///////////////////////
 
-func (m *_BACnetApplicationTagSignedInteger) GetActualValue() uint64 {
+func (m *_BACnetApplicationTagSignedInteger) GetActualValue() int64 {
        ctx := context.Background()
        _ = ctx
-       return uint64(m.GetPayload().GetActualValue())
+       return int64(m.GetPayload().GetActualValue())
 }
 
 ///////////////////////
@@ -274,7 +274,7 @@ func (m *_BACnetApplicationTagSignedInteger) parse(ctx 
context.Context, readBuff
        }
        m.Payload = payload
 
-       actualValue, err := ReadVirtualField[uint64](ctx, "actualValue", 
(*uint64)(nil), payload.GetActualValue())
+       actualValue, err := ReadVirtualField[int64](ctx, "actualValue", 
(*int64)(nil), payload.GetActualValue())
        if err != nil {
                return nil, errors.Wrap(err, fmt.Sprintf("Error parsing 
'actualValue' field"))
        }
diff --git 
a/plc4go/protocols/bacnetip/readwrite/model/BACnetContextTagSignedInteger.go 
b/plc4go/protocols/bacnetip/readwrite/model/BACnetContextTagSignedInteger.go
index 63cd59fcbc..b3bba374e8 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetContextTagSignedInteger.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetContextTagSignedInteger.go
@@ -44,7 +44,7 @@ type BACnetContextTagSignedInteger interface {
        // GetPayload returns Payload (property field)
        GetPayload() BACnetTagPayloadSignedInteger
        // GetActualValue returns ActualValue (virtual field)
-       GetActualValue() uint64
+       GetActualValue() int64
        // IsBACnetContextTagSignedInteger is a marker method to prevent 
unintentional type checks (interfaces of same signature)
        IsBACnetContextTagSignedInteger()
        // CreateBuilder creates a BACnetContextTagSignedIntegerBuilder
@@ -220,10 +220,10 @@ func (m *_BACnetContextTagSignedInteger) GetPayload() 
BACnetTagPayloadSignedInte
 /////////////////////// Accessors for virtual fields.
 ///////////////////////
 
-func (m *_BACnetContextTagSignedInteger) GetActualValue() uint64 {
+func (m *_BACnetContextTagSignedInteger) GetActualValue() int64 {
        ctx := context.Background()
        _ = ctx
-       return uint64(m.GetPayload().GetActualValue())
+       return int64(m.GetPayload().GetActualValue())
 }
 
 ///////////////////////
@@ -278,7 +278,7 @@ func (m *_BACnetContextTagSignedInteger) parse(ctx 
context.Context, readBuffer u
        }
        m.Payload = payload
 
-       actualValue, err := ReadVirtualField[uint64](ctx, "actualValue", 
(*uint64)(nil), payload.GetActualValue())
+       actualValue, err := ReadVirtualField[int64](ctx, "actualValue", 
(*int64)(nil), payload.GetActualValue())
        if err != nil {
                return nil, errors.Wrap(err, fmt.Sprintf("Error parsing 
'actualValue' field"))
        }
diff --git 
a/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadSignedInteger.go 
b/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadSignedInteger.go
index 27a5f6e5b8..ef661186bf 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadSignedInteger.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadSignedInteger.go
@@ -75,7 +75,7 @@ type BACnetTagPayloadSignedInteger interface {
        // GetIsInt64 returns IsInt64 (virtual field)
        GetIsInt64() bool
        // GetActualValue returns ActualValue (virtual field)
-       GetActualValue() uint64
+       GetActualValue() int64
        // IsBACnetTagPayloadSignedInteger is a marker method to prevent 
unintentional type checks (interfaces of same signature)
        IsBACnetTagPayloadSignedInteger()
        // CreateBuilder creates a BACnetTagPayloadSignedIntegerBuilder
@@ -460,7 +460,7 @@ func (m *_BACnetTagPayloadSignedInteger) GetIsInt64() bool {
        return bool(bool((m.GetActualLength()) == (8)))
 }
 
-func (m *_BACnetTagPayloadSignedInteger) GetActualValue() uint64 {
+func (m *_BACnetTagPayloadSignedInteger) GetActualValue() int64 {
        ctx := context.Background()
        _ = ctx
        valueInt8 := m.GetValueInt8()
@@ -479,19 +479,19 @@ func (m *_BACnetTagPayloadSignedInteger) GetActualValue() 
uint64 {
        _ = valueInt56
        valueInt64 := m.GetValueInt64()
        _ = valueInt64
-       return uint64(utils.InlineIf(m.GetIsInt8(), func() any { return 
uint64((*m.GetValueInt8())) }, func() any {
-               return uint64((utils.InlineIf(m.GetIsInt16(), func() any { 
return uint64((*m.GetValueInt16())) }, func() any {
-                       return uint64((utils.InlineIf(m.GetIsInt24(), func() 
any { return uint64((*m.GetValueInt24())) }, func() any {
-                               return uint64((utils.InlineIf(m.GetIsInt32(), 
func() any { return uint64((*m.GetValueInt32())) }, func() any {
-                                       return 
uint64((utils.InlineIf(m.GetIsInt40(), func() any { return 
uint64((*m.GetValueInt40())) }, func() any {
-                                               return 
uint64((utils.InlineIf(m.GetIsInt48(), func() any { return 
uint64((*m.GetValueInt48())) }, func() any {
-                                                       return 
uint64((utils.InlineIf(m.GetIsInt56(), func() any { return 
uint64((*m.GetValueInt56())) }, func() any { return 
uint64((*m.GetValueInt64())) }).(uint64)))
-                                               }).(uint64)))
-                                       }).(uint64)))
-                               }).(uint64)))
-                       }).(uint64)))
-               }).(uint64)))
-       }).(uint64))
+       return int64(utils.InlineIf(m.GetIsInt8(), func() any { return 
int64((*m.GetValueInt8())) }, func() any {
+               return int64((utils.InlineIf(m.GetIsInt16(), func() any { 
return int64((*m.GetValueInt16())) }, func() any {
+                       return int64((utils.InlineIf(m.GetIsInt24(), func() any 
{ return int64((*m.GetValueInt24())) }, func() any {
+                               return int64((utils.InlineIf(m.GetIsInt32(), 
func() any { return int64((*m.GetValueInt32())) }, func() any {
+                                       return 
int64((utils.InlineIf(m.GetIsInt40(), func() any { return 
int64((*m.GetValueInt40())) }, func() any {
+                                               return 
int64((utils.InlineIf(m.GetIsInt48(), func() any { return 
int64((*m.GetValueInt48())) }, func() any {
+                                                       return 
int64((utils.InlineIf(m.GetIsInt56(), func() any { return 
int64((*m.GetValueInt56())) }, func() any { return int64((*m.GetValueInt64())) 
}).(int64)))
+                                               }).(int64)))
+                                       }).(int64)))
+                               }).(int64)))
+                       }).(int64)))
+               }).(int64)))
+       }).(int64))
 }
 
 ///////////////////////
@@ -719,19 +719,19 @@ func (m *_BACnetTagPayloadSignedInteger) parse(ctx 
context.Context, readBuffer u
                return nil, 
errors.WithStack(utils.ParseValidationError{Message: "unmapped integer length"})
        }
 
-       actualValue, err := ReadVirtualField[uint64](ctx, "actualValue", 
(*uint64)(nil), utils.InlineIf(isInt8, func() any { return uint64((*valueInt8)) 
}, func() any {
-               return uint64((utils.InlineIf(isInt16, func() any { return 
uint64((*valueInt16)) }, func() any {
-                       return uint64((utils.InlineIf(isInt24, func() any { 
return uint64((*valueInt24)) }, func() any {
-                               return uint64((utils.InlineIf(isInt32, func() 
any { return uint64((*valueInt32)) }, func() any {
-                                       return uint64((utils.InlineIf(isInt40, 
func() any { return uint64((*valueInt40)) }, func() any {
-                                               return 
uint64((utils.InlineIf(isInt48, func() any { return uint64((*valueInt48)) }, 
func() any {
-                                                       return 
uint64((utils.InlineIf(isInt56, func() any { return uint64((*valueInt56)) }, 
func() any { return uint64((*valueInt64)) }).(uint64)))
-                                               }).(uint64)))
-                                       }).(uint64)))
-                               }).(uint64)))
-                       }).(uint64)))
-               }).(uint64)))
-       }).(uint64))
+       actualValue, err := ReadVirtualField[int64](ctx, "actualValue", 
(*int64)(nil), utils.InlineIf(isInt8, func() any { return int64((*valueInt8)) 
}, func() any {
+               return int64((utils.InlineIf(isInt16, func() any { return 
int64((*valueInt16)) }, func() any {
+                       return int64((utils.InlineIf(isInt24, func() any { 
return int64((*valueInt24)) }, func() any {
+                               return int64((utils.InlineIf(isInt32, func() 
any { return int64((*valueInt32)) }, func() any {
+                                       return int64((utils.InlineIf(isInt40, 
func() any { return int64((*valueInt40)) }, func() any {
+                                               return 
int64((utils.InlineIf(isInt48, func() any { return int64((*valueInt48)) }, 
func() any {
+                                                       return 
int64((utils.InlineIf(isInt56, func() any { return int64((*valueInt56)) }, 
func() any { return int64((*valueInt64)) }).(int64)))
+                                               }).(int64)))
+                                       }).(int64)))
+                               }).(int64)))
+                       }).(int64)))
+               }).(int64)))
+       }).(int64))
        if err != nil {
                return nil, errors.Wrap(err, fmt.Sprintf("Error parsing 
'actualValue' field"))
        }
diff --git 
a/plc4j/drivers/bacnet/src/main/generated/org/apache/plc4x/java/bacnetip/readwrite/BACnetApplicationTagSignedInteger.java
 
b/plc4j/drivers/bacnet/src/main/generated/org/apache/plc4x/java/bacnetip/readwrite/BACnetApplicationTagSignedInteger.java
index 1b6c2ef88c..eb1822976c 100644
--- 
a/plc4j/drivers/bacnet/src/main/generated/org/apache/plc4x/java/bacnetip/readwrite/BACnetApplicationTagSignedInteger.java
+++ 
b/plc4j/drivers/bacnet/src/main/generated/org/apache/plc4x/java/bacnetip/readwrite/BACnetApplicationTagSignedInteger.java
@@ -24,7 +24,6 @@ import static 
org.apache.plc4x.java.spi.codegen.io.DataReaderFactory.*;
 import static org.apache.plc4x.java.spi.codegen.io.DataWriterFactory.*;
 import static org.apache.plc4x.java.spi.generation.StaticHelper.*;
 
-import java.math.BigInteger;
 import java.time.*;
 import java.util.*;
 import org.apache.plc4x.java.api.exceptions.*;
@@ -53,10 +52,8 @@ public class BACnetApplicationTagSignedInteger extends 
BACnetApplicationTag impl
     return payload;
   }
 
-  public BigInteger getActualValue() {
-    Object o = getPayload().getActualValue();
-    if (o instanceof BigInteger) return (BigInteger) o;
-    return BigInteger.valueOf(((Number) o).longValue());
+  public long getActualValue() {
+    return (long) (getPayload().getActualValue());
   }
 
   @Override
@@ -70,7 +67,7 @@ public class BACnetApplicationTagSignedInteger extends 
BACnetApplicationTag impl
     writeSimpleField("payload", payload, writeComplex(writeBuffer));
 
     // Virtual field (doesn't serialize anything, just makes the value 
available)
-    BigInteger actualValue = getActualValue();
+    long actualValue = getActualValue();
     writeBuffer.writeVirtual("actualValue", actualValue);
 
     writeBuffer.popContext("BACnetApplicationTagSignedInteger");
@@ -109,8 +106,7 @@ public class BACnetApplicationTagSignedInteger extends 
BACnetApplicationTag impl
                     BACnetTagPayloadSignedInteger.staticParse(
                         readBuffer, (long) (header.getActualLength())),
                 readBuffer));
-    BigInteger actualValue =
-        readVirtualField("actualValue", BigInteger.class, 
payload.getActualValue());
+    long actualValue = readVirtualField("actualValue", long.class, 
payload.getActualValue());
 
     readBuffer.closeContext("BACnetApplicationTagSignedInteger");
     // Create the instance
diff --git 
a/plc4j/drivers/bacnet/src/main/generated/org/apache/plc4x/java/bacnetip/readwrite/BACnetContextTagSignedInteger.java
 
b/plc4j/drivers/bacnet/src/main/generated/org/apache/plc4x/java/bacnetip/readwrite/BACnetContextTagSignedInteger.java
index 999eabf205..8fb8dd57f8 100644
--- 
a/plc4j/drivers/bacnet/src/main/generated/org/apache/plc4x/java/bacnetip/readwrite/BACnetContextTagSignedInteger.java
+++ 
b/plc4j/drivers/bacnet/src/main/generated/org/apache/plc4x/java/bacnetip/readwrite/BACnetContextTagSignedInteger.java
@@ -24,7 +24,6 @@ import static 
org.apache.plc4x.java.spi.codegen.io.DataReaderFactory.*;
 import static org.apache.plc4x.java.spi.codegen.io.DataWriterFactory.*;
 import static org.apache.plc4x.java.spi.generation.StaticHelper.*;
 
-import java.math.BigInteger;
 import java.time.*;
 import java.util.*;
 import org.apache.plc4x.java.api.exceptions.*;
@@ -56,10 +55,8 @@ public class BACnetContextTagSignedInteger extends 
BACnetContextTag implements M
     return payload;
   }
 
-  public BigInteger getActualValue() {
-    Object o = getPayload().getActualValue();
-    if (o instanceof BigInteger) return (BigInteger) o;
-    return BigInteger.valueOf(((Number) o).longValue());
+  public long getActualValue() {
+    return (long) (getPayload().getActualValue());
   }
 
   @Override
@@ -73,7 +70,7 @@ public class BACnetContextTagSignedInteger extends 
BACnetContextTag implements M
     writeSimpleField("payload", payload, writeComplex(writeBuffer));
 
     // Virtual field (doesn't serialize anything, just makes the value 
available)
-    BigInteger actualValue = getActualValue();
+    long actualValue = getActualValue();
     writeBuffer.writeVirtual("actualValue", actualValue);
 
     writeBuffer.popContext("BACnetContextTagSignedInteger");
@@ -116,8 +113,7 @@ public class BACnetContextTagSignedInteger extends 
BACnetContextTag implements M
                     BACnetTagPayloadSignedInteger.staticParse(
                         readBuffer, (long) (header.getActualLength())),
                 readBuffer));
-    BigInteger actualValue =
-        readVirtualField("actualValue", BigInteger.class, 
payload.getActualValue());
+    long actualValue = readVirtualField("actualValue", long.class, 
payload.getActualValue());
 
     readBuffer.closeContext("BACnetContextTagSignedInteger");
     // Create the instance
diff --git 
a/plc4j/drivers/bacnet/src/main/generated/org/apache/plc4x/java/bacnetip/readwrite/BACnetTagPayloadSignedInteger.java
 
b/plc4j/drivers/bacnet/src/main/generated/org/apache/plc4x/java/bacnetip/readwrite/BACnetTagPayloadSignedInteger.java
index cbeea75230..065b15152f 100644
--- 
a/plc4j/drivers/bacnet/src/main/generated/org/apache/plc4x/java/bacnetip/readwrite/BACnetTagPayloadSignedInteger.java
+++ 
b/plc4j/drivers/bacnet/src/main/generated/org/apache/plc4x/java/bacnetip/readwrite/BACnetTagPayloadSignedInteger.java
@@ -24,7 +24,6 @@ import static 
org.apache.plc4x.java.spi.codegen.io.DataReaderFactory.*;
 import static org.apache.plc4x.java.spi.codegen.io.DataWriterFactory.*;
 import static org.apache.plc4x.java.spi.generation.StaticHelper.*;
 
-import java.math.BigInteger;
 import java.time.*;
 import java.util.*;
 import org.apache.plc4x.java.api.exceptions.*;
@@ -139,9 +138,9 @@ public class BACnetTagPayloadSignedInteger implements 
Message {
     return (boolean) ((actualLength) == (8));
   }
 
-  public BigInteger getActualValue() {
-    Object o =
-        ((getIsInt8())
+  public long getActualValue() {
+    return (long)
+        (((getIsInt8())
             ? getValueInt8()
             : (((getIsInt16())
                 ? getValueInt16()
@@ -153,9 +152,9 @@ public class BACnetTagPayloadSignedInteger implements 
Message {
                             ? getValueInt40()
                             : (((getIsInt48())
                                 ? getValueInt48()
-                                : (((getIsInt56()) ? getValueInt56() : 
getValueInt64())))))))))))));
-    if (o instanceof BigInteger) return (BigInteger) o;
-    return BigInteger.valueOf(((Number) o).longValue());
+                                : (((getIsInt56())
+                                    ? getValueInt56()
+                                    : getValueInt64()))))))))))))));
   }
 
   public void serialize(WriteBuffer writeBuffer) throws SerializationException 
{
@@ -220,7 +219,7 @@ public class BACnetTagPayloadSignedInteger implements 
Message {
     writeOptionalField("valueInt64", valueInt64, writeSignedLong(writeBuffer, 
64));
 
     // Virtual field (doesn't serialize anything, just makes the value 
available)
-    BigInteger actualValue = getActualValue();
+    long actualValue = getActualValue();
     writeBuffer.writeVirtual("actualValue", actualValue);
 
     writeBuffer.popContext("BACnetTagPayloadSignedInteger");
@@ -333,10 +332,10 @@ public class BACnetTagPayloadSignedInteger implements 
Message {
         || (isInt64))) {
       throw new ParseValidationException("unmapped integer length");
     }
-    BigInteger actualValue =
+    long actualValue =
         readVirtualField(
             "actualValue",
-            BigInteger.class,
+            long.class,
             ((isInt8)
                 ? valueInt8
                 : (((isInt16)
diff --git 
a/plc4j/drivers/bacnet/src/test/java/org/apache/plc4x/java/bacnetip/RandomPackagesTest.java
 
b/plc4j/drivers/bacnet/src/test/java/org/apache/plc4x/java/bacnetip/RandomPackagesTest.java
index 643aaecce4..6c2760539d 100644
--- 
a/plc4j/drivers/bacnet/src/test/java/org/apache/plc4x/java/bacnetip/RandomPackagesTest.java
+++ 
b/plc4j/drivers/bacnet/src/test/java/org/apache/plc4x/java/bacnetip/RandomPackagesTest.java
@@ -3580,7 +3580,7 @@ public class RandomPackagesTest {
                                     
.asInstanceOf(InstanceOfAssertFactories.type(BACnetApplicationTagSignedInteger.class))
                                     
.extracting(BACnetApplicationTagSignedInteger::getPayload)
                                     
.extracting(BACnetTagPayloadSignedInteger::getActualValue)
-                                    .isEqualTo(BigInteger.valueOf(0));
+                                    .isEqualTo(0L);
                                 
assertThat(baCnetConfirmedServiceRequestAtomicReadFileStream)
                                     
.extracting(BACnetConfirmedServiceRequestAtomicReadFileStream::getRequestOctetCount)
                                     
.asInstanceOf(InstanceOfAssertFactories.type(BACnetApplicationTagUnsignedInteger.class))
@@ -4235,7 +4235,7 @@ public class RandomPackagesTest {
                     assertEquals(201, 
baCnetServiceAckReadProperty.getObjectIdentifier().getInstanceNumber());
                     assertEquals(BACnetPropertyIdentifier.UTC_OFFSET, 
baCnetServiceAckReadProperty.getPropertyIdentifier().getValue());
                     BACnetApplicationTagSignedInteger value = 
((BACnetConstructedDataUTCOffset) 
baCnetServiceAckReadProperty.getValues()).getUtcOffset();
-                    assertEquals(0, 
value.getPayload().getActualValue().longValue());
+                    assertEquals(0, value.getPayload().getActualValue());
                 }),
             DynamicTest.dynamicTest("No. 47 - Confirmed-REQ   readProperty[ 
47] device,201 daylights-savings-status",
                 () -> {
@@ -5013,7 +5013,7 @@ public class RandomPackagesTest {
                     assertEquals(61, 
baCnetServiceAckReadProperty.getObjectIdentifier().getInstanceNumber());
                     assertEquals(BACnetPropertyIdentifier.UTC_OFFSET, 
baCnetServiceAckReadProperty.getPropertyIdentifier().getValue());
                     BACnetApplicationTagSignedInteger value = 
((BACnetConstructedDataUTCOffset) 
baCnetServiceAckReadProperty.getValues()).getUtcOffset();
-                    assertEquals(BigInteger.valueOf(-300), 
value.getPayload().getActualValue());
+                    assertEquals(-300L, value.getPayload().getActualValue());
                 }),
             DynamicTest.dynamicTest("No. 103 - Confirmed-REQ   readProperty[ 
75] device,61 daylights-savings-status",
                 () -> {
diff --git 
a/protocols/bacnetip/src/main/resources/protocols/bacnetip/bacnet-tags.mspec 
b/protocols/bacnetip/src/main/resources/protocols/bacnetip/bacnet-tags.mspec
index e38f7749e1..040332b615 100644
--- a/protocols/bacnetip/src/main/resources/protocols/bacnetip/bacnet-tags.mspec
+++ b/protocols/bacnetip/src/main/resources/protocols/bacnetip/bacnet-tags.mspec
@@ -55,7 +55,7 @@
         ['0x3' *SignedInteger(BACnetTagHeader header)
             [simple BACnetTagPayloadSignedInteger('header.actualLength')
                                 payload                                        
                                         ]
-            [virtual    uint 64    actualValue   'payload.actualValue'         
                                         ]
+            [virtual    int 64  actualValue   'payload.actualValue'            
                                         ]
         ]
         ['0x4' *Real
             [simple BACnetTagPayloadReal
@@ -134,7 +134,7 @@
         ['SIGNED_INTEGER' *SignedInteger(BACnetTagHeader header)
             [simple BACnetTagPayloadSignedInteger('header.actualLength')
                                 payload                                        
                                         ]
-            [virtual    uint 64     actualValue 'payload.actualValue'          
                                         ]
+            [virtual    int 64  actualValue 'payload.actualValue'              
                                         ]
         ]
         ['REAL' *Real
             [simple BACnetTagPayloadReal
@@ -249,7 +249,7 @@
     [virtual    bit         isInt64         'actualLength == 8'  ]
     [optional   int 64      valueInt64      'isInt64'            ]
     [validation 'isInt8 || isInt16 || isInt24 || isInt32 || isInt40 || isInt48 
|| isInt56 || isInt64' "unmapped integer length"]
-    [virtual    uint 64     actualValue     
'isInt8?valueInt8:(isInt16?valueInt16:(isInt24?valueInt24:(isInt32?valueInt32:(isInt40?valueInt40:(isInt48?valueInt48:(isInt56?valueInt56:valueInt64))))))']
+    [virtual    int 64      actualValue     
'isInt8?valueInt8:(isInt16?valueInt16:(isInt24?valueInt24:(isInt32?valueInt32:(isInt40?valueInt40:(isInt48?valueInt48:(isInt56?valueInt56:valueInt64))))))']
 ]
 
 [type BACnetTagPayloadReal

Reply via email to