Files
obsw/mission_rust/src/fsrc/objectmanager.rs

13 lines
421 B
Rust

use super::*;
pub type ObjectId = usize;
pub trait ObjectManager<'a> {
fn get_object(&self, id: ObjectId) -> Result<&'a dyn SystemObjectIF, ()>;
}
pub trait SystemObjectIF: tasks::ExecutableObjectIF + introspection::Introspection {
fn get_id(&self) -> ObjectId;
fn initialize(&mut self, object_manager: &dyn ObjectManager) -> Result<(), ()>;
fn get_command_queue(&self) -> queues::MessageQueueSender;
}