49 lines
2.1 KiB
MQL5
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
|