simplify simulated time implementation

This commit is contained in:
Joeri Exelmans 2025-10-24 08:24:38 +02:00
parent aac77b79f2
commit e527baf81f

View file

@ -41,17 +41,6 @@ export function getWallClkDelay(realtime: TimeRealTime, simtime: number, wallclk
// given a current simulated clock (paused or real time), switch to real time with given time scale // given a current simulated clock (paused or real time), switch to real time with given time scale
export function setRealtime(currentMode: TimeMode, scale: number, wallclktime: number): TimeRealTime { export function setRealtime(currentMode: TimeMode, scale: number, wallclktime: number): TimeRealTime {
if (currentMode.kind === "paused") {
return {
kind: "realtime",
scale,
since: {
simtime: currentMode.simtime,
wallclktime,
},
};
}
else {
return { return {
kind: "realtime", kind: "realtime",
scale, scale,
@ -60,18 +49,12 @@ export function setRealtime(currentMode: TimeMode, scale: number, wallclktime: n
wallclktime, wallclktime,
}, },
}; };
}
} }
// given a current simulated clock (paused or real time), switch to paused // given a current simulated clock (paused or real time), switch to paused
export function setPaused(currentMode: TimeMode, wallclktime: number): TimePaused { export function setPaused(currentMode: TimeMode, wallclktime: number): TimePaused {
if (currentMode.kind === "paused") {
return currentMode; // no change
}
else {
return { return {
kind: "paused", kind: "paused",
simtime: getSimTime(currentMode, wallclktime), simtime: getSimTime(currentMode, wallclktime),
}; };
}
} }