This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public class MMTimer : IDisposable | |
{ | |
private const int EventTypePeriodic = 1; | |
private const uint STATUS_SUCCESS = 0; | |
private const uint STATUS_TIMER_RESOLUTION_NOT_SET = 0xC0000245; | |
private readonly MultimediaTimerCallback Callback; | |
private bool disposed; | |
private bool enabled; | |
private bool highestPossibleResolution; | |
private int interval, resolution; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
using System; | |
using System.Diagnostics; | |
using System.Globalization; | |
using System.Numerics; | |
using System.Runtime.InteropServices; | |
using System.Text; | |
[DebuggerDisplay("{" + nameof(DDisplay) + "}")] | |
[Serializable] | |
public struct BigRational : IComparable, IComparable<BigRational>, IEquatable<BigRational> | |
{ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public class BigIntegerPrimality | |
{ | |
public static readonly int[] Primes4k = | |
{ | |
2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, | |
157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, | |
317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, | |
499, 503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, | |
683, 691, 701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809, 811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, | |
883, 887, 907, 911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997, 1009, 1013, 1019, 1021, 1031, 1033, 1039, 1049, 1051, 1061, |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/// <summary> | |
/// Example: | |
/// var fh = new FileHelperEx(); | |
/// var hash = new SHA512CryptoServiceProvider(); | |
/// hash.Initialize(); | |
/// fh.ReadStream(fileName, buffer => hash.TransformBlock(buffer, 0, buffer.Length, null, 0)); | |
/// hash.Final(); | |
/// var sha512 = new BigInteger(hash.Hash); | |
/// </summary> | |
public class FileHelperEx |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
using System; | |
using System.Collections.Generic; | |
public class BoyerMooreGeneric<T> | |
{ | |
private readonly IEqualityComparer<T> _comparer; | |
private Dictionary<T, int> _jumpTable; | |
private T[] _pattern; | |
private int _patternLength; | |
public BoyerMooreGeneric() | |
{ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
using System; | |
using System.Collections.Generic; | |
public class BoyerMooreString | |
{ | |
private const int CMaxValue = char.MaxValue; | |
private int[] _jumpTable; | |
private string _pattern; | |
private int _patternLength; | |
public BoyerMooreString() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public class BoyerMoore | |
{ | |
private int[] _jumpTable; | |
private byte[] _pattern; | |
private int _patternLength; | |
public BoyerMoore() | |
{ | |
} | |
public BoyerMoore(byte[] pattern) | |
{ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
private static Dictionary<string, string> GetProcessorInfo() | |
{ | |
ManagementObjectCollection moc; | |
var Processor = new Dictionary<string, string>(); | |
try | |
{ | |
moc = new ManagementObjectSearcher("select * from Win32_Processor").Get(); | |
} | |
catch |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public class PDiskInformation | |
{ | |
private Dictionary<string, PhysicalDiskStruct> _pdiCache = new Dictionary<string, PhysicalDiskStruct>(); | |
public Dictionary<string, PhysicalDiskStruct> PDiskInfo | |
{ | |
get | |
{ | |
if(_pdiCache.Count == 0) | |
_pdiCache = GetDiskPI(); | |
return _pdiCache; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[Serializable] | |
public class LimitedList<T> : IEnumerable<T> | |
{ | |
private T[] _thing; | |
public LimitedList(int maxsize) | |
{ | |
_thing = new T[maxsize]; | |
MaxSize = maxsize; | |
} | |
private int MaxSize { get; } |