2026-09-05 14:05:00 -05:00 | | | //+------------------------------------------------------------------+
|
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"
|
2026-09-05 14:05:00 -05:00 | | | #include <TSN\\MQLArticles\\Utils\\Tfi.mqh>
|
2026-02-25 11:10:14 -05:00 | | |
|
| | | //+------------------------------------------------------------------+
|
| | | //| |
|
| | | //+------------------------------------------------------------------+
|
| | | #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 | | |
|
2026-04-08 07:46:15 -05:00 | | |
|
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 | | | {
|
2026-03-25 06:48:29 -05:00 | | | protected:
|
| | | int m_file_common_flag_out; // Flag comon para los archivos quie el backend mueve
|
| | | int m_file_common_flag_in; // Flag comon para los archivos que da el ea
|
| | |
|
2026-02-25 11:10:14 -05:00 | | | public:
|
2026-03-25 06:48:29 -05:00 | | |
|
| | | //---
|
| | | ITaskRunerAi() : m_file_common_flag_out(0), m_file_common_flag_in(0) {}
|
| | | ~ITaskRunerAi() {}
|
| | |
|
| | |
|
2026-02-25 11:10:14 -05:00 | | | //---
|
| | | string m_last_error_msg; // Ultimo mensaje de error
|
| | |
|
2026-03-25 06:48:29 -05:00 | | |
|
| | | //---
|
| | | __forceinline uint FileComonIn() const { return m_file_common_flag_in; }
|
| | | __forceinline uint FileCommonOut() const { return m_file_common_flag_out; }
|
| | |
|
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-25 06:48:29 -05:00 | | | virtual bool 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-18 08:46:51 -05:00 | | | // Añade una tarea espeiicifa sin pasar por el current ni soncriza con el frontend (compos) pero si la tabla
|
| | | // True en caso de exito | false no
|
2026-03-18 12:55:47 -05:00 | | | virtual bool AddDirectTask(const TaskTester& task) = 0;
|
2026-03-18 08:46:51 -05:00 | | |
|
| | |
|
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
|
2026-03-18 08:46:51 -05:00 | | | virtual bool SaveAllTaskInFile(const string& file_name, bool only_no_proccesed) = 0;
|
2026-02-25 11:10:14 -05:00 | | |
|
| | | // 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-04-10 15:42:04 -05:00 | | | virtual inline TaskTester GetTaskByIndex(const int index) const = 0;
|
| | | virtual inline ENUM_AIEXECUTOR_TASK_STATE GetTaskStatus(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
|
| | | //+------------------------------------------------------------------+
|