Files
2026-06-25 12:19:29 +03:00

54 lines
1.8 KiB
C#

using RTCSync.Utils;
namespace RTCSync.Models;
public class TimeModelBI
{
// 6 5 4 | 3 2 1 0
// 10 Seconds | Seconds
// 00 - 59
public static BitIndex[] SecondsBI { get; } = [new(1, 0..3)];
public static BitIndex[] TenSecondsBI { get; } = [new(1, 4..6)];
// 6 5 4 | 3 2 1 0
// 10 Minutes | Minutes
// 00 - 59
public static BitIndex[] MinutesBI { get; } = [new(2, 0..3)];
public static BitIndex[] TenMinutesBI { get; } = [new(2, 4..6)];
// 6 | 5 | 4 | 3 2 1 0
// 12/24 | 20 hour | 10 hour | Hour
// 1-12 + AM/PM
// 00 - 23
public static BitIndex[] HourBI { get; } = [new(3, 0..3)];
public static BitIndex[] TenHourBI { get; } = [new(3, 4..4)];
public static BitIndex[] TwentyHourBI { get; } = [new(3, 5..5)];
// When high - 12 hour format is selected
public static BitIndex[] HoursFormatBI { get; } = [new(3, 6..6)];
// 2 1 0
// Day
// 1 - 7
// 1 = Saturday, 2 = Monday
public static BitIndex[] DayOfWeekBI { get; } = [new(4, 0..3)];
// 5 4 | 3 2 1 0
// 10 Date | Date
// 01 - 31
public static BitIndex[] DateBI { get; } = [new(5, 0..4)];
public static BitIndex[] TenDateBI { get; } = [new(5, 4..5)];
// 7 | 4 | 3 2 1 0
// Century | 10 Month | Month
// 01 - 12 + Century
public static BitIndex[] MonthBI { get; } = [new(6, 0..3)];
public static BitIndex[] TenMonthBI { get; } = [new(6, 4..4)];
// High when the years register overflows from 99 to 00
public static BitIndex[] CenturyBI { get; } = [new(6, 7..7)];
// 7 6 5 4 | 3 2 1 0
// 10 Year | Year
// 0-99
public static BitIndex[] YearBI { get; } = [new(7, 0..3)];
public static BitIndex[] TenYearBI { get; } = [new(7, 4..7)];
}