pub type SetNextEventFunc = fn(u64) -> bool;
pub type SetStateStoppedFunc = fn();
pub trait ClockImpl {
fn init(&self);
fn init_cpu(&self) {}
fn get_set_next_event(&self) -> SetNextEventFunc;
fn get_set_state_stopped(&self) -> SetStateStoppedFunc;
fn rate(&self) -> usize;
fn min_delta(&self) -> u64;
fn max_delta(&self) -> u64;
}