@@ -11,13 +11,17 @@ public abstract class ScanResult
1111
1212 public IntPtr Address { get ; set ; }
1313
14+ public abstract int ValueSize { get ; }
15+
1416 public abstract ScanResult Clone ( ) ;
1517 }
1618
1719 public class ByteScanResult : ScanResult , IEquatable < ByteScanResult >
1820 {
1921 public override ScanValueType ValueType => ScanValueType . Byte ;
2022
23+ public override int ValueSize => sizeof ( byte ) ;
24+
2125 public byte Value { get ; }
2226
2327 public ByteScanResult ( byte value )
@@ -50,6 +54,8 @@ public class ShortScanResult : ScanResult, IEquatable<ShortScanResult>
5054 {
5155 public override ScanValueType ValueType => ScanValueType . Short ;
5256
57+ public override int ValueSize => sizeof ( short ) ;
58+
5359 public short Value { get ; }
5460
5561 public ShortScanResult ( short value )
@@ -82,6 +88,8 @@ public class IntegerScanResult : ScanResult, IEquatable<IntegerScanResult>
8288 {
8389 public override ScanValueType ValueType => ScanValueType . Integer ;
8490
91+ public override int ValueSize => sizeof ( int ) ;
92+
8593 public int Value { get ; }
8694
8795 public IntegerScanResult ( int value )
@@ -114,6 +122,8 @@ public class LongScanResult : ScanResult, IEquatable<LongScanResult>
114122 {
115123 public override ScanValueType ValueType => ScanValueType . Long ;
116124
125+ public override int ValueSize => sizeof ( long ) ;
126+
117127 public long Value { get ; }
118128
119129 public LongScanResult ( long value )
@@ -146,6 +156,8 @@ public class FloatScanResult : ScanResult, IEquatable<FloatScanResult>
146156 {
147157 public override ScanValueType ValueType => ScanValueType . Float ;
148158
159+ public override int ValueSize => sizeof ( float ) ;
160+
149161 public float Value { get ; }
150162
151163 public FloatScanResult ( float value )
@@ -178,6 +190,8 @@ public class DoubleScanResult : ScanResult, IEquatable<DoubleScanResult>
178190 {
179191 public override ScanValueType ValueType => ScanValueType . Double ;
180192
193+ public override int ValueSize => sizeof ( double ) ;
194+
181195 public double Value { get ; }
182196
183197 public DoubleScanResult ( double value )
@@ -210,6 +224,8 @@ public class ArrayOfBytesScanResult : ScanResult, IEquatable<ArrayOfBytesScanRes
210224 {
211225 public override ScanValueType ValueType => ScanValueType . ArrayOfBytes ;
212226
227+ public override int ValueSize => Value . Length ;
228+
213229 public byte [ ] Value { get ; }
214230
215231 public ArrayOfBytesScanResult ( byte [ ] value )
@@ -244,6 +260,8 @@ public class StringScanResult : ScanResult, IEquatable<StringScanResult>
244260 {
245261 public override ScanValueType ValueType => ScanValueType . String ;
246262
263+ public override int ValueSize => Value . Length ;
264+
247265 public string Value { get ; }
248266
249267 public Encoding Encoding { get ; }
0 commit comments