48 lines
No EOL
1.9 KiB
MQL5
48 lines
No EOL
1.9 KiB
MQL5
//+------------------------------------------------------------------+
|
|
//| Def.mqh |
|
|
//| Copyright 2026, Niquel Mendoza. |
|
|
//| https://www.mql5.com/ |
|
|
//+------------------------------------------------------------------+
|
|
#property copyright "Copyright 2026, Niquel Mendoza."
|
|
#property link "https://www.mql5.com/"
|
|
#property strict
|
|
|
|
#ifndef SIMPHASH_SRC_RANDOM_DEF_MQH
|
|
#define SIMPHASH_SRC_RANDOM_DEF_MQH
|
|
|
|
//+------------------------------------------------------------------+
|
|
//| |
|
|
//+------------------------------------------------------------------+
|
|
#include "..\\..\\..\\Xoshiro256\\Xoshiro256.mqh"
|
|
#include "..\\Def.mqh"
|
|
|
|
//+------------------------------------------------------------------+
|
|
//| |
|
|
//+------------------------------------------------------------------+
|
|
enum ENUM_PHASH_RANDOM
|
|
{
|
|
PHASH_RANDOM_MATH_RAND,
|
|
PHASH_RANDOM_MATH_XOSHIRO256
|
|
};
|
|
|
|
//+------------------------------------------------------------------+
|
|
//| |
|
|
//+------------------------------------------------------------------+
|
|
namespace TSN
|
|
{
|
|
//+------------------------------------------------------------------+
|
|
//| |
|
|
//+------------------------------------------------------------------+
|
|
class IRandomGenerator : public CLoggerBase
|
|
{
|
|
public:
|
|
IRandomGenerator(void) {}
|
|
~IRandomGenerator(void) {}
|
|
|
|
//---
|
|
virtual bool Init(CYmlNode& node) = 0;
|
|
virtual ulong Generate() = 0;
|
|
};
|
|
}
|
|
//+------------------------------------------------------------------+
|
|
#endif // SIMPHASH_SRC_RANDOM_DEF_MQH |