ICTLibraryEasy/Examples/Benchmark/Utils/MetricSaver.mqh
2026-01-14 07:41:55 -05:00

50 lines
1.8 KiB
MQL5

//+------------------------------------------------------------------+
//| Main.mqh |
//| Copyright 2025, Niquel Mendoza. |
//| https://www.mql5.com/es/users/nique_372 |
//+------------------------------------------------------------------+
#property copyright "Copyright 2025, Niquel Mendoza."
#property link "https://www.mql5.com/es/users/nique_372"
#property strict
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
#include "Base.mqh"
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
class CMetricsSave
{
private:
static uint m_start;
static int m_file_handle;
public:
CMetricsSave() {}
~CMetricsSave(void) {}
//---
static void Start(const string& filename)
{
m_file_handle = FileOpen(filename, FILE_WRITE | FILE_TXT | FILE_COMMON);
if(m_file_handle == INVALID_HANDLE)
{
Print("Fallo al abrir file");
return;
}
m_start = GetTickCount();
}
//---
static void Destroy()
{
FileWrite(m_file_handle, string(GetTickCount() - m_start));
FileWrite(m_file_handle, string(MQLInfoInteger(MQL_MEMORY_USED)));
FileClose(m_file_handle);
}
};
//+------------------------------------------------------------------+
uint CMetricsSave::m_start = 0;
int CMetricsSave::m_file_handle = INVALID_HANDLE;
//+------------------------------------------------------------------+