pub struct VisualizationManager { /* private fields */ }Expand description
Manages visualization components within the Haggis engine
Implementations§
Source§impl VisualizationManager
impl VisualizationManager
Sourcepub fn add_component(
&mut self,
name: String,
component: Box<dyn VisualizationComponent>,
)
pub fn add_component( &mut self, name: String, component: Box<dyn VisualizationComponent>, )
Add a visualization component to the manager
§Arguments
name- Unique name for the componentcomponent- The visualization component to add
Sourcepub fn remove_component(&mut self, name: &str)
pub fn remove_component(&mut self, name: &str)
Sourcepub fn initialize_gpu(&mut self, device: &Device, queue: &Queue)
pub fn initialize_gpu(&mut self, device: &Device, queue: &Queue)
Initialize GPU resources for all components
Sourcepub fn update(
&mut self,
delta_time: f32,
device: Option<&Device>,
queue: Option<&Queue>,
)
pub fn update( &mut self, delta_time: f32, device: Option<&Device>, queue: Option<&Queue>, )
Update all visualization components
Sourcepub fn update_with_scene(
&mut self,
delta_time: f32,
scene: &mut Scene,
device: Option<&Device>,
queue: Option<&Queue>,
)
pub fn update_with_scene( &mut self, delta_time: f32, scene: &mut Scene, device: Option<&Device>, queue: Option<&Queue>, )
Update both visualization components and their material textures
Sourcepub fn is_enabled(&self) -> bool
pub fn is_enabled(&self) -> bool
Check if the visualization system is enabled
Sourcepub fn set_enabled(&mut self, enabled: bool)
pub fn set_enabled(&mut self, enabled: bool)
Set the enabled state of the visualization system
Sourcepub fn get_component(&self, name: &str) -> Option<&dyn VisualizationComponent>
pub fn get_component(&self, name: &str) -> Option<&dyn VisualizationComponent>
Get a reference to a specific component
Sourcepub fn get_component_mut(
&mut self,
name: &str,
) -> Option<&mut Box<dyn VisualizationComponent>>
pub fn get_component_mut( &mut self, name: &str, ) -> Option<&mut Box<dyn VisualizationComponent>>
Get a mutable reference to a specific component
Sourcepub fn get_component_names(&self) -> Vec<&String>
pub fn get_component_names(&self) -> Vec<&String>
Get the names of all components
Sourcepub fn has_enabled_components(&self) -> bool
pub fn has_enabled_components(&self) -> bool
Check if any components are enabled
Sourcepub fn update_scene_objects(&mut self, scene: &mut Scene)
pub fn update_scene_objects(&mut self, scene: &mut Scene)
Update scene objects for all enabled visualization components
Sourcepub fn update_material_textures(
&mut self,
scene: &mut Scene,
device: &Device,
queue: &Queue,
)
pub fn update_material_textures( &mut self, scene: &mut Scene, device: &Device, queue: &Queue, )
Update material textures for all enabled visualization components
Sourcepub fn get_visualization_planes(&self) -> Vec<VisualizationPlane>
pub fn get_visualization_planes(&self) -> Vec<VisualizationPlane>
Get visualization planes for rendering (bypasses scene objects)
Auto Trait Implementations§
impl Freeze for VisualizationManager
impl !RefUnwindSafe for VisualizationManager
impl !Send for VisualizationManager
impl !Sync for VisualizationManager
impl Unpin for VisualizationManager
impl !UnwindSafe for VisualizationManager
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.