forked from ReClassNET/ReClass.NET
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathScannerContext.cs
More file actions
35 lines (29 loc) · 823 Bytes
/
Copy pathScannerContext.cs
File metadata and controls
35 lines (29 loc) · 823 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
using System.Diagnostics.Contracts;
using ReClassNET.MemoryScanner.Comparer;
namespace ReClassNET.MemoryScanner
{
internal class ScannerContext
{
public byte[] Buffer { get; private set; }
public ScannerWorker Worker { get; }
public ScannerContext(ScanSettings settings, IScanComparer comparer, int bufferSize)
{
Contract.Requires(settings != null);
Contract.Requires(comparer != null);
Contract.Requires(bufferSize >= 0);
Contract.Ensures(Buffer != null);
Contract.Ensures(Worker != null);
EnsureBufferSize(bufferSize);
Worker = new ScannerWorker(settings, comparer);
}
public void EnsureBufferSize(int size)
{
Contract.Requires(size >= 0);
Contract.Ensures(Buffer != null);
if (Buffer == null || Buffer.Length < size)
{
Buffer = new byte[size];
}
}
}
}