gled_model/asset/project/
scene_instance_path.rs1use crate::asset::scene::grid::GridLocation;
2use serde::{Deserialize, Serialize};
3
4#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
5pub struct QuickSceneInstanceIndex {
6 pub index: usize,
7}
8
9#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
10pub enum SceneInstanceUnion {
11 Selected,
12 Grid(GridLocation),
13 Quick(QuickSceneInstanceIndex),
14}
15
16pub fn selected_scene_instance_index() -> SceneInstanceUnion {
17 SceneInstanceUnion::Selected
18}
19
20pub fn quick_scene_instance_index(index: usize) -> SceneInstanceUnion {
21 SceneInstanceUnion::Quick(QuickSceneInstanceIndex { index })
22}
23pub fn grid_scene_instance_index(location: GridLocation) -> SceneInstanceUnion {
24 SceneInstanceUnion::Grid(location)
25}