public static void get15MinPeriod(DateTime inDT, out LCAUnixTime periodSUnix, out LCAUnixTime periodEUnix) { int period; int periodMin; DateTime periodDT; if (inDT.Minute % 15 == 0) { periodMin = inDT.Minute; } else { period = (int)(inDT.Minute / 15); periodMin = (period * 15) + 15; if (periodMin == 60) { periodMin = 0; } } periodDT = new DateTime(inDT.Year, inDT.Month, inDT.Day, inDT.Hour, periodMin, 0); if ((periodDT.Hour == 0) && (periodDT.Minute == 0)) { periodDT = periodDT.AddDays(-1); } periodSUnix = new LCAUnixTime(periodDT.AddMinutes(-14)); periodEUnix = new LCAUnixTime(periodDT); }
public static TimeSpan operator -(LCAUnixTime x, LCAUnixTime y) { if ((x.AsDateTime.Hour == 0) && (x.AsDateTime.Minute == 0)) { x = new LCAUnixTime(x.AsDateTime.AddDays(1)); } TimeSpan result = (x.AsDateTime - y.AsDateTime); return(result); }
public static void getHourEndingPeriod(DateTime inDT, out LCAUnixTime periodSUnix, out LCAUnixTime periodEUnix) { DateTime periodDT; if ((inDT.Minute == 0) && (inDT.Second == 0)) { // If we're given a time with minute and second = 0 it's already a valid hour ending time periodDT = inDT; } else { periodDT = inDT.AddHours(1); } periodDT = new DateTime(periodDT.Year, periodDT.Month, periodDT.Day, periodDT.Hour, 0, 0); if (periodDT.Hour == 0) { periodDT = periodDT.AddDays(-1); } periodSUnix = new LCAUnixTime(periodDT.AddMinutes(-59)); periodEUnix = new LCAUnixTime(periodDT); }
public bool Equals(LCAUnixTime other) { return(this == other); }
public static void getIESOHEInterval(LCAUnixTime fromDT, out int HE, out int Interval) { getIESOHEInterval(fromDT.AsDateTime, out HE, out Interval); }