lib3mf_core/parser/
visitor.rs1use crate::error::Result;
2use crate::model::{BaseMaterialsGroup, BuildItem, ColorGroup, ResourceId};
3
4pub trait ModelVisitor {
7 fn on_start_model(&mut self) -> Result<()> {
9 Ok(())
10 }
11
12 fn on_end_model(&mut self) -> Result<()> {
14 Ok(())
15 }
16
17 fn on_metadata(&mut self, _name: &str, _value: &str) -> Result<()> {
19 Ok(())
20 }
21
22 fn on_start_resources(&mut self) -> Result<()> {
24 Ok(())
25 }
26
27 fn on_end_resources(&mut self) -> Result<()> {
29 Ok(())
30 }
31
32 fn on_base_materials(&mut self, _id: ResourceId, _group: &BaseMaterialsGroup) -> Result<()> {
37 Ok(())
38 }
39
40 fn on_color_group(&mut self, _id: ResourceId, _group: &ColorGroup) -> Result<()> {
42 Ok(())
43 }
44
45 fn on_start_mesh(&mut self, _id: ResourceId) -> Result<()> {
49 Ok(())
50 }
51
52 fn on_vertex(&mut self, _x: f32, _y: f32, _z: f32) -> Result<()> {
54 Ok(())
55 }
56
57 fn on_triangle(&mut self, _v1: u32, _v2: u32, _v3: u32) -> Result<()> {
59 Ok(())
60 }
61
62 fn on_end_mesh(&mut self) -> Result<()> {
64 Ok(())
65 }
66
67 fn on_start_build(&mut self) -> Result<()> {
71 Ok(())
72 }
73
74 fn on_end_build(&mut self) -> Result<()> {
76 Ok(())
77 }
78
79 fn on_build_item(&mut self, _item: &BuildItem) -> Result<()> {
81 Ok(())
82 }
83}