use vtable_rs::VPtr;
use crate::{
dlut::{DLFixedVector, DLReferenceCountObjectVmt},
fd4::FD4Time,
};
use shared::OwnedPtr;
#[repr(C)]
pub struct MenuJobResult {}
#[vtable_rs::vtable]
pub trait MenuJobVmt: DLReferenceCountObjectVmt {
fn run(&self, result: &mut MenuJobResult, unk: &mut FD4Time);
}
#[repr(C)]
pub struct MenuJobBase {
pub vftable: VPtr<dyn MenuJobVmt, Self>,
pub reference_count: u32,
_padc: u32,
}
#[repr(C)]
pub struct FixOrderJobSequenceBase {
pub vftable: VPtr<dyn DLReferenceCountObjectVmt, Self>,
pub reference_count: u32,
_padc: u32,
unk10: u32,
_pad14: u32,
pub jobs: DLFixedVector<OwnedPtr<MenuJobBase>, 8>,
}