Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ CreateDateTimeFromSystemTime()

static DateTime System.DateTime.CreateDateTimeFromSystemTime ( in Interop::Kernel32::SYSTEMTIME time,
ulong hundredNanoSecond )
inlinestaticprivate

Definition at line 1543 of file DateTime.cs.

1544 {
1545 uint year = time.Year;
1547 int num = time.Month - 1;
1548 uint num2 = DaysToYear(year) + array[num] + time.Day - 1;
1549 ulong num3 = (ulong)num2 * 864000000000uL;
1550 num3 += (ulong)(time.Hour * 36000000000L);
1551 num3 += (ulong)((long)time.Minute * 600000000L);
1552 uint second = time.Second;
1553 if (second <= 59)
1554 {
1555 ulong num4 = (uint)((int)(second * 10000000) + time.Milliseconds * 10000) + hundredNanoSecond;
1556 return new DateTime((num3 + num4) | 0x4000000000000000uL);
1557 }
1558 num3 += 4611686019027387903L;
1559 return new DateTime(num3);
1560 }
static readonly uint[] s_daysToMonth366
Definition DateTime.cs:29
static bool IsLeapYear(int year)
Definition DateTime.cs:898
static uint DaysToYear(uint year)
Definition DateTime.cs:596
static readonly uint[] s_daysToMonth365
Definition DateTime.cs:23

References System.array, System.DateTime, System.DateTime.DaysToYear(), System.Runtime.Serialization.Dictionary, System.DateTime.IsLeapYear(), System.L, System.DateTime.s_daysToMonth365, System.DateTime.s_daysToMonth366, and System.year.

Referenced by System.DateTime.FromFileTimeLeapSecondsAware(), and System.DateTime.UpdateLeapSecondCacheAndReturnUtcNow().