2026-02-25 11:10:14 -05:00
//+------------------------------------------------------------------+
//| MainTab.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
# ifndef AIDATATASKRUNER_UI_DATAGENERATIONTAB_DEF_MQH
# define AIDATATASKRUNER_UI_DATAGENERATIONTAB_DEF_MQH
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
# include "..\\Defines.mqh"
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
# define TASKRUNERAIDGENMAIN_TAB_MAIN ( 0 )
# define TASKRUNERAIDGENMAIN_TAB_TASK ( 1 )
2026-03-13 15:20:27 -05:00
# define TASKRUNERAIDGENMAIN_TAB_TOTAL ( 2 )
2026-02-25 11:10:14 -05:00
//---
# resource "res\\circle_amarillo.bmp"
# resource "res\\circle_azul.bmp"
# resource "res\\circle_gris.bmp"
# resource "res\\circle_verde.bmp"
2026-03-13 19:46:30 -05:00
# resource "\\Images\\EasyAndFastGUI\\Controls\\Close_red.bmp"
2026-02-25 11:10:14 -05:00
//---
2026-03-13 19:46:30 -05:00
# define TASKRUNERAIDGENMAIN_STATE_TOAL ( 5 )
2026-02-25 11:10:14 -05:00
# define TASKRUNERAIDGENMAIN_IMG_LABEL_PROCESANDO ( 0 )
2026-03-13 09:38:25 -05:00
# define TASKRUNERAIDGENMAIN_IMG_LABEL_ENCOLA ( 1 )
# define TASKRUNERAIDGENMAIN_IMG_LABEL_PENDIENTE ( 2 )
# define TASKRUNERAIDGENMAIN_IMG_LABEL_HECHO ( 3 )
2026-03-13 19:46:30 -05:00
# define TASKRUNERAIDGENMAIN_IMG_LABEL_FALLO ( 4 )
2026-02-25 11:10:14 -05:00
//---
2026-03-13 19:46:30 -05:00
const string g_taskruner_ai_dgen_main_images [ TASKRUNERAIDGENMAIN_STATE_TOAL ]
2026-02-25 11:10:14 -05:00
{
" res \\ circle_amarillo.bmp " ,
" res \\ circle_azul.bmp " ,
" res \\ circle_gris.bmp " ,
2026-03-13 19:46:30 -05:00
" res \\ circle_verde.bmp " ,
" Images \\ EasyAndFastGUI \\ Controls \\ Close_red.bmp "
2026-02-25 11:10:14 -05:00
} ;
//---
2026-03-13 19:46:30 -05:00
const string g_taskruner_ai_dgen_main_images_label [ TASKRUNERAIDGENMAIN_STATE_TOAL ]
2026-02-25 11:10:14 -05:00
{
" Procesando " ,
" En cola " ,
" Pendiente " ,
2026-03-13 19:46:30 -05:00
" Hecho " ,
" Fallo "
2026-02-25 11:10:14 -05:00
} ;
//---
2026-03-14 09:06:05 -05:00
class ITaskRunerAi : public CSpecializedManager
2026-02-25 11:10:14 -05:00
{
public :
//---
string m_last_error_msg ; // Ultimo mensaje de error
2026-03-13 09:38:25 -05:00
//--- Inicializcion de la tarea actual
virtual void InitCurrentTask ( const TaskTester & t ) = 0 ;
2026-02-25 11:10:14 -05:00
//--- Tarea actual
//- Configuracion actual
2026-03-13 19:46:30 -05:00
virtual void OnCurrentTask_ModifyConfigMoveFile ( const string str ) = 0 ;
2026-03-14 11:35:01 -05:00
virtual __forceinline string MoveFiles ( ) const = 0 ;
2026-03-13 19:46:30 -05:00
virtual void OnCurrentTask_ModifyConfigExpertPath ( const string str ) = 0 ;
2026-03-14 11:35:01 -05:00
virtual __forceinline string ExperthPath ( ) const = 0 ;
2026-03-13 19:46:30 -05:00
virtual void OnCurrentTask_ModifyConfigProgresCsvFile ( const string str ) = 0 ;
2026-03-14 11:35:01 -05:00
virtual __forceinline string ProgreesFile ( ) const = 0 ;
2026-03-13 19:46:30 -05:00
virtual void OnCurrentTask_ModifyConfigMainFolder ( const string str ) = 0 ;
2026-03-14 11:35:01 -05:00
virtual __forceinline string MainFolder ( ) const = 0 ;
2026-02-25 11:10:14 -05:00
//- Modificaicon de la tarea actual
virtual void OnCurrentTask_ModifyDateStart ( const datetime new_start ) = 0 ;
virtual void OnCurrentTask_ModifyDateEnd ( const datetime new_end ) = 0 ;
virtual void OnCurrentTask_ModifySimbolo ( const string new_symbol ) = 0 ;
virtual void OnCurrentTask_ModifySimboloFolder ( const string new_symbol_f ) = 0 ;
virtual void OnCurrentTask_ModifyTimeframe ( const ENUM_TIMEFRAMES new_tf ) = 0 ;
virtual void OnCurrentTask_ModifyLabel ( const string label ) = 0 ;
virtual void OnCurrentTask_ModifyLabelId ( const int label ) = 0 ;
virtual void OnCurrentTask_ModifySetFile ( const string set_file ) = 0 ;
//- Añadir tarea actual
virtual bool OnCurrentTask_Add ( ) = 0 ;
2026-03-14 11:35:01 -05:00
//--- Config
virtual bool LoadConfig ( const string & file_name ) = 0 ;
virtual bool SaveConfig ( const string & file_name ) = 0 ;
2026-02-25 11:10:14 -05:00
//--- Tareas
// out[] indices (filas) que ahora estan en cola
// Retonranar el numero de tareas (tamaño array)
virtual int CleanAllTask ( int & out [ ] ) = 0 ;
virtual int RunAllTask ( int & out [ ] ) = 0 ;
// Load
virtual bool SaveAllTaskInFile ( const string & file_name ) = 0 ;
// El archivo debera de estar en comon
// task: aqui se pondran todas las tareas
// retonar el numero de tareas
virtual bool SetTastByFile ( const string & file_name ) = 0 ;
2026-03-13 19:46:30 -05:00
virtual TaskTester GetTaskByIndex ( const int index ) const = 0 ;
2026-03-13 09:38:25 -05:00
virtual inline TaskTester CurrentTask ( ) const = 0 ;
2026-02-25 11:10:14 -05:00
virtual inline int TaskSize ( ) const = 0 ;
} ;
2026-03-13 09:38:25 -05:00
# endif // AIDATATASKRUNER_UI_DATAGENERATIONTAB_DEF_MQH
//+------------------------------------------------------------------+