@@ -11,13 +11,17 @@ public abstract class ScanResult
11
11
12
12
public IntPtr Address { get ; set ; }
13
13
14
+ public abstract int ValueSize { get ; }
15
+
14
16
public abstract ScanResult Clone ( ) ;
15
17
}
16
18
17
19
public class ByteScanResult : ScanResult , IEquatable < ByteScanResult >
18
20
{
19
21
public override ScanValueType ValueType => ScanValueType . Byte ;
20
22
23
+ public override int ValueSize => sizeof ( byte ) ;
24
+
21
25
public byte Value { get ; }
22
26
23
27
public ByteScanResult ( byte value )
@@ -50,6 +54,8 @@ public class ShortScanResult : ScanResult, IEquatable<ShortScanResult>
50
54
{
51
55
public override ScanValueType ValueType => ScanValueType . Short ;
52
56
57
+ public override int ValueSize => sizeof ( short ) ;
58
+
53
59
public short Value { get ; }
54
60
55
61
public ShortScanResult ( short value )
@@ -82,6 +88,8 @@ public class IntegerScanResult : ScanResult, IEquatable<IntegerScanResult>
82
88
{
83
89
public override ScanValueType ValueType => ScanValueType . Integer ;
84
90
91
+ public override int ValueSize => sizeof ( int ) ;
92
+
85
93
public int Value { get ; }
86
94
87
95
public IntegerScanResult ( int value )
@@ -114,6 +122,8 @@ public class LongScanResult : ScanResult, IEquatable<LongScanResult>
114
122
{
115
123
public override ScanValueType ValueType => ScanValueType . Long ;
116
124
125
+ public override int ValueSize => sizeof ( long ) ;
126
+
117
127
public long Value { get ; }
118
128
119
129
public LongScanResult ( long value )
@@ -146,6 +156,8 @@ public class FloatScanResult : ScanResult, IEquatable<FloatScanResult>
146
156
{
147
157
public override ScanValueType ValueType => ScanValueType . Float ;
148
158
159
+ public override int ValueSize => sizeof ( float ) ;
160
+
149
161
public float Value { get ; }
150
162
151
163
public FloatScanResult ( float value )
@@ -178,6 +190,8 @@ public class DoubleScanResult : ScanResult, IEquatable<DoubleScanResult>
178
190
{
179
191
public override ScanValueType ValueType => ScanValueType . Double ;
180
192
193
+ public override int ValueSize => sizeof ( double ) ;
194
+
181
195
public double Value { get ; }
182
196
183
197
public DoubleScanResult ( double value )
@@ -210,6 +224,8 @@ public class ArrayOfBytesScanResult : ScanResult, IEquatable<ArrayOfBytesScanRes
210
224
{
211
225
public override ScanValueType ValueType => ScanValueType . ArrayOfBytes ;
212
226
227
+ public override int ValueSize => Value . Length ;
228
+
213
229
public byte [ ] Value { get ; }
214
230
215
231
public ArrayOfBytesScanResult ( byte [ ] value )
@@ -244,6 +260,8 @@ public class StringScanResult : ScanResult, IEquatable<StringScanResult>
244
260
{
245
261
public override ScanValueType ValueType => ScanValueType . String ;
246
262
263
+ public override int ValueSize => Value . Length ;
264
+
247
265
public string Value { get ; }
248
266
249
267
public Encoding Encoding { get ; }
0 commit comments