add delay list to RefinedFreeRTOSSystemState
This commit is contained in:
parent
e31c01b2af
commit
086a575f44
@ -102,6 +102,7 @@ pub struct RefinedFreeRTOSSystemState {
|
|||||||
input_counter: u32,
|
input_counter: u32,
|
||||||
pub current_task: RefinedTCB,
|
pub current_task: RefinedTCB,
|
||||||
ready_list_after: Vec<RefinedTCB>,
|
ready_list_after: Vec<RefinedTCB>,
|
||||||
|
delay_list_after: Vec<RefinedTCB>,
|
||||||
}
|
}
|
||||||
impl PartialEq for RefinedFreeRTOSSystemState {
|
impl PartialEq for RefinedFreeRTOSSystemState {
|
||||||
fn eq(&self, other: &Self) -> bool {
|
fn eq(&self, other: &Self) -> bool {
|
||||||
|
@ -120,11 +120,15 @@ for mut i in input.drain(..) {
|
|||||||
let mut tmp = tcb_list_to_vec_cached(j,&mut i.dumping_ground).iter().map(|x| RefinedTCB::from_tcb(x)).collect();
|
let mut tmp = tcb_list_to_vec_cached(j,&mut i.dumping_ground).iter().map(|x| RefinedTCB::from_tcb(x)).collect();
|
||||||
collector.append(&mut tmp);
|
collector.append(&mut tmp);
|
||||||
}
|
}
|
||||||
|
let mut delay_list : Vec::<RefinedTCB> = tcb_list_to_vec_cached(i.delay_list, &mut i.dumping_ground).iter().map(|x| RefinedTCB::from_tcb(x)).collect();
|
||||||
|
// We don't care about the order
|
||||||
|
delay_list.sort_by(|a,b| a.task_name.cmp(&b.task_name));
|
||||||
ret.push(RefinedFreeRTOSSystemState {
|
ret.push(RefinedFreeRTOSSystemState {
|
||||||
current_task: RefinedTCB::from_tcb_owned(i.current_tcb),
|
current_task: RefinedTCB::from_tcb_owned(i.current_tcb),
|
||||||
start_tick: start_tick,
|
start_tick: start_tick,
|
||||||
end_tick: i.qemu_tick,
|
end_tick: i.qemu_tick,
|
||||||
ready_list_after: collector,
|
ready_list_after: collector,
|
||||||
|
delay_list_after: delay_list,
|
||||||
input_counter: i.input_counter,//+IRQ_INPUT_BYTES_NUMBER,
|
input_counter: i.input_counter,//+IRQ_INPUT_BYTES_NUMBER,
|
||||||
last_pc: i.last_pc,
|
last_pc: i.last_pc,
|
||||||
});
|
});
|
||||||
|
Loading…
x
Reference in New Issue
Block a user