oslib/tst/PST/P2_MQL5SVM_7603/MQL5/Include/MT4Bridge/MT4Time.mqh
super.admin 07f69c4478 convert
2025-05-30 16:15:18 +02:00

49 lines
2.1 KiB
MQL5

//+------------------------------------------------------------------+
//| MT4Time.mqh |
//| Copyright (c) 2019, Marketeer |
//| https://www.mql5.com/en/users/marketeer |
//+------------------------------------------------------------------+
class DateTime
{
private:
MqlDateTime mdtstruct;
public:
DateTime(){TimeToStruct(0, mdtstruct);}
DateTime *assign(datetime dt) {TimeToStruct(dt, mdtstruct); return &this;}
int __TimeDayOfWeek() {return mdtstruct.day_of_week;}
int __TimeDayOfYear() {return mdtstruct.day_of_year;}
int __TimeYear() {return mdtstruct.year;}
int __TimeMonth() {return mdtstruct.mon;}
int __TimeDay() {return mdtstruct.day;}
int __TimeHour() {return mdtstruct.hour;}
int __TimeMinute() {return mdtstruct.min;}
int __TimeSeconds() {return mdtstruct.sec;}
};
DateTime _DateTime;
#define TimeDayOfWeek(T) _DateTime.assign(T).__TimeDayOfWeek()
#define TimeYear(T) _DateTime.assign(T).__TimeYear()
#define TimeMonth(T) _DateTime.assign(T).__TimeMonth()
#define TimeDay(T) _DateTime.assign(T).__TimeDay()
#define TimeHour(T) _DateTime.assign(T).__TimeHour()
#define TimeMinute(T) _DateTime.assign(T).__TimeMinute()
#define TimeSeconds(T) _DateTime.assign(T).__TimeSeconds()
#define _TimeDayOfWeek _DateTime.__TimeDayOfWeek
#define _TimeYear _DateTime.__TimeYear
#define _TimeMonth _DateTime.__TimeMonth
#define _TimeDay _DateTime.__TimeDay
#define _TimeHour _DateTime.__TimeHour
#define _TimeMinute _DateTime.__TimeMinute
#define _TimeSeconds _DateTime.__TimeSeconds
#define DayOfWeek _DateTime.assign(TimeCurrent()).__TimeDayOfWeek
#define Year _DateTime.assign(TimeCurrent()).__TimeYear
#define Month _DateTime.assign(TimeCurrent()).__TimeMonth
#define Day _DateTime.assign(TimeCurrent()).__TimeDay
#define Hour _DateTime.assign(TimeCurrent()).__TimeHour
#define Minute _DateTime.assign(TimeCurrent()).__TimeMinute
#define Seconds _DateTime.assign(TimeCurrent()).__TimeSeconds