simplify simulated time implementation
This commit is contained in:
parent
aac77b79f2
commit
e527baf81f
1 changed files with 12 additions and 29 deletions
|
|
@ -41,37 +41,20 @@ 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 {
|
||||||
return {
|
kind: "realtime",
|
||||||
kind: "realtime",
|
scale,
|
||||||
scale,
|
since: {
|
||||||
since: {
|
simtime: getSimTime(currentMode, wallclktime),
|
||||||
simtime: currentMode.simtime,
|
wallclktime,
|
||||||
wallclktime,
|
},
|
||||||
},
|
};
|
||||||
};
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
return {
|
|
||||||
kind: "realtime",
|
|
||||||
scale,
|
|
||||||
since: {
|
|
||||||
simtime: getSimTime(currentMode, 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 {
|
||||||
return currentMode; // no change
|
kind: "paused",
|
||||||
}
|
simtime: getSimTime(currentMode, wallclktime),
|
||||||
else {
|
};
|
||||||
return {
|
|
||||||
kind: "paused",
|
|
||||||
simtime: getSimTime(currentMode, wallclktime),
|
|
||||||
};
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue