TsnTables/Src/Tables.mqh
Nique_372 521fe7565b
2026-05-19 06:59:37 -05:00

115 lines
2.3 KiB
MQL5

//+------------------------------------------------------------------+
//| Tables.mqh |
//| Copyright 2026, Niquel Mendoza. |
//| https://www.mql5.com/es/users/nique_372 |
//+------------------------------------------------------------------+
#property copyright "Copyright 2026, Niquel Mendoza."
#property link "https://www.mql5.com/es/users/nique_372"
#property strict
#ifndef TSNTABES_SRC_TABLES_MQH
#define TSNTABES_SRC_TABLES_MQH
namespace TSN
{
#ifdef TSNTABLE_USE_POWEXP_TABLE
//--- Exp
#define TSN_EXP_TABLE(index) MathPow(10.0, -(double)index)
const double g_Exp10[19] =
{
TSN_EXP_TABLE(0),
TSN_EXP_TABLE(1),
TSN_EXP_TABLE(2),
TSN_EXP_TABLE(3),
TSN_EXP_TABLE(4),
TSN_EXP_TABLE(5),
TSN_EXP_TABLE(6),
TSN_EXP_TABLE(7),
TSN_EXP_TABLE(8),
TSN_EXP_TABLE(9),
TSN_EXP_TABLE(10),
TSN_EXP_TABLE(11),
TSN_EXP_TABLE(12),
TSN_EXP_TABLE(13),
TSN_EXP_TABLE(14),
TSN_EXP_TABLE(15),
TSN_EXP_TABLE(16),
TSN_EXP_TABLE(17),
TSN_EXP_TABLE(18),
};
//--- Pow
#define TSN_EXP_POW(index) MathPow(10.0, (double)index)
const double g_Pow10[19] =
{
TSN_EXP_POW(0),
TSN_EXP_POW(1),
TSN_EXP_POW(2),
TSN_EXP_POW(3),
TSN_EXP_POW(4),
TSN_EXP_POW(5),
TSN_EXP_POW(6),
TSN_EXP_POW(7),
TSN_EXP_POW(8),
TSN_EXP_POW(9),
TSN_EXP_POW(10),
TSN_EXP_POW(11),
TSN_EXP_POW(12),
TSN_EXP_POW(13),
TSN_EXP_POW(14),
TSN_EXP_POW(15),
TSN_EXP_POW(16),
TSN_EXP_POW(17),
TSN_EXP_POW(18),
};
#endif // TSNTABLE_USE_POWEXP_TABLE
//---
#ifdef TSNTABLE_USE_HEX_TABLE
uchar g_arr_valid_hex_chars[103];
//---
bool InitHexValidCharArrayTable()
{
ArrayInitialize(g_arr_valid_hex_chars, 0xFF); // 0xFF = invalido
for(uchar c = '0'; c <= '9'; c++)
g_arr_valid_hex_chars[c] = c - '0';
for(uchar c = 'a'; c <= 'f'; c++)
g_arr_valid_hex_chars[c] = c - 'a' + 10;
for(uchar c = 'A'; c <= 'F'; c++)
g_arr_valid_hex_chars[c] = c - 'A' + 10;
return true;
}
const bool g_arr_valid_hex_chars_init = InitHexValidCharArrayTable();
#endif // TSNTABLE_USE_HEX_TABLE
//---
const uchar g_arr_table_true[4] =
{
't',
'r',
'u',
'e'
};
//---
const uchar g_arr_table_false[5] =
{
'f',
'a',
'l',
's',
'e'
};
}
//+------------------------------------------------------------------+
#endif // TSNTABES_SRC_TABLES_MQH