Class HexadecimalTime
java.lang.Object
org.episteme.social.history.time.Time
org.episteme.social.history.clock.HexadecimalTime
- All Implemented Interfaces:
Serializable
Represents Hexadecimal Time (16h per day, 16 maximes per hour, 16 minutes per maxime, 16 seconds per minute).
This system divides the day into 65,536 hexadecimal seconds (hexsecs). One hexsec is exactly 1.318359375 standard seconds.
- Since:
- 1.0
- Author:
- Silvere Martin-Michiellot, Gemini AI (Google DeepMind)
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionUnit for one hexadecimal day (16 hex hours).Unit for one hexadecimal hour (16 hex maximes).Unit for one hexadecimal maxime (16 hex minutes).Unit for one hexadecimal millisecond.Unit for one hexadecimal minute (16 hex seconds).Base unit for hexadecimal seconds (1.318359375 SI seconds).static final intstatic final intstatic final intstatic final intstatic final int -
Constructor Summary
ConstructorsConstructorDescriptionCreates HexadecimalTime with current moment.HexadecimalTime(double millis) Creates HexadecimalTime from raw milliseconds.HexadecimalTime(double days, double hours, double maximes, double minutes, double seconds, double millis) Creates HexadecimalTime from components. -
Method Summary
-
Field Details
-
HOURS_PER_DAY
public static final int HOURS_PER_DAY- See Also:
-
MAXIMES_PER_HOUR
public static final int MAXIMES_PER_HOUR- See Also:
-
MINUTES_PER_MAXIME
public static final int MINUTES_PER_MAXIME- See Also:
-
SECONDS_PER_MINUTE
public static final int SECONDS_PER_MINUTE- See Also:
-
MILLIS_PER_SECOND
public static final int MILLIS_PER_SECOND- See Also:
-
HEX_SECOND
-
HEX_MILLISECOND
-
HEX_MINUTE
-
HEX_MAXIME
-
HEX_HOUR
-
HEX_DAY
-
-
Constructor Details
-
HexadecimalTime
public HexadecimalTime(double days, double hours, double maximes, double minutes, double seconds, double millis) Creates HexadecimalTime from components.- Parameters:
days- count of dayshours- hex hours (0-15)maximes- hex maximes (0-15)minutes- hex minutes (0-15)seconds- hex seconds (0-15)millis- hex milliseconds (0-999)- Throws:
IllegalArgumentException- if any value is negative
-
HexadecimalTime
public HexadecimalTime(double millis) Creates HexadecimalTime from raw milliseconds.- Parameters:
millis- total milliseconds- Throws:
IllegalArgumentException- if millis is negative
-
HexadecimalTime
public HexadecimalTime()Creates HexadecimalTime with current moment.
-
-
Method Details
-
getTime
-
getMilliseconds
public int getMilliseconds()- Specified by:
getMillisecondsin classTime
-
getSeconds
public int getSeconds()- Specified by:
getSecondsin classTime
-
getMinutes
public int getMinutes()- Specified by:
getMinutesin classTime
-
getMaximes
public int getMaximes()Returns the hex maxime component.- Returns:
- maximes
-
getHours
-
getDays
-
nextMillisecond
public void nextMillisecond()- Specified by:
nextMillisecondin classTime
-
nextSecond
public void nextSecond()- Specified by:
nextSecondin classTime
-
nextMinute
public void nextMinute()- Specified by:
nextMinutein classTime
-
nextMaxime
public void nextMaxime()Increments the time by one hex maxime. -
nextHour
-
nextDay
-
toString
-