//+-------------------------------------------------------------------+ //| Include generado por la herramienta PerfectHash SimPHash | //| Esta heramienta forma parte del ecositema TSN | //| Repositorio: https://forge.mql5.io/nique_372/SimPHash | //+-------------------------------------------------------------------+ #property copyright "Copyright 2026, Niquel Mendoza" #property link "https://www.mql5.com/" #property strict //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ #include #ifndef AIDATAGENBYLEO_GENERICDATA_ENUMREG_T #define AIDATAGENBYLEO_GENERICDATA_ENUMREG_T //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ #define AIDATAGENBLEO_ENUMREG_TABLE_SIZE_EXT (13ULL) #define AIDATAGENBLEO_ENUMREG_BUCKET_SIZE_EXT (5ULL) //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ namespace TSN { const ulong g_aidatagenbyleo_enum_pf_seeds[AIDATAGENBLEO_ENUMREG_BUCKET_SIZE_EXT] = { 0ULL, 8ULL, 0ULL, 7ULL, 5ULL }; const ulong g_aidatagenbyleo_enum_pf_hashes[AIDATAGENBLEO_ENUMREG_TABLE_SIZE_EXT] = { 604290716149806926ULL, // custom 17350876537769339438ULL, // Custom 2332068300138197746ULL, // NORMAL 0ULL, // invalid 5029201484663994962ULL, // Generate 4319715573236948914ULL, // GENERATE 11525575787956178258ULL, // Normal 5270012720953488932ULL, // AIDATALEO_GEN_MATRIX 6991063326977151602ULL, // normal 5043129902344554382ULL, // CUSTOM 10853168172642701938ULL, // generate 13984549749466622970ULL, // AIDATALEO_GEN_VECTOR 0ULL }; long g_aidatagenbyleo_enum_pf_values[AIDATAGENBLEO_ENUMREG_TABLE_SIZE_EXT] = { 1, // custom 1, // Custom 0, // NORMAL 0, 2, // Generate 2, // GENERATE 0, // Normal 0, // AIDATALEO_GEN_MATRIX 0, // normal 1, // CUSTOM 2, // generate 1, // AIDATALEO_GEN_VECTOR 0 }; /* long AiLeo_HashExt(const string& key) { //--- const int len = StringLen(key); ulong key_hash = 14695981039346656037ULL; FNV1a_64_AsM_Str(key, len, key_hash, 1099511628211ULL) const int seed_index = int(key_hash % AIDATAGENBLEO_ENUMREG_BUCKET_SIZE_EXT); //--- ulong h = key_hash + g_aidatagenbyleo_enum_pf_seeds[seed_index] * 0x9e3779b97f4a7c15; h = (h ^ (h >> 30)) * 0xbf58476d1ce4e5b9; h = (h ^ (h >> 27)) * 0x94d049bb133111eb; h ^= (h >> 31); const int fi = int(h % AIDATAGENBLEO_ENUMREG_TABLE_SIZE_EXT); return g_aidatagenbyleo_enum_pf_hashes[fi] == key_hash ? g_aidatagenbyleo_enum_pf_values[fi] : 0; } long AiLeo_HashExt(const ulong key_hash) { const int seed_index = int(key_hash % AIDATAGENBLEO_ENUMREG_BUCKET_SIZE_EXT); //--- ulong h = key_hash + g_aidatagenbyleo_enum_pf_seeds[seed_index] * 0x9e3779b97f4a7c15; h = (h ^ (h >> 30)) * 0xbf58476d1ce4e5b9; h = (h ^ (h >> 27)) * 0x94d049bb133111eb; h ^= (h >> 31); const int fi = int(h % AIDATAGENBLEO_ENUMREG_TABLE_SIZE_EXT); return g_aidatagenbyleo_enum_pf_hashes[fi] == key_hash ? g_aidatagenbyleo_enum_pf_values[fi] : 0; } */ } #endif // AIDATAGENBYLEO_GENERICDATA_ENUMREG_T