1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
pub mod gmt_m1 {
use gmt_dos_actors::UID;
#[derive(UID)]
pub enum M1RigidBodyMotions {}
#[derive(UID)]
pub enum M1ModeShapes {}
#[derive(UID)]
pub enum M1HardpointForces {}
#[derive(UID)]
pub enum M1HardpointNodes {}
#[derive(UID)]
pub enum M1SActuatorForces {}
pub mod segment {
use gmt_dos_actors::{UniqueIdentifier, UID};
pub enum BarycentricForce<const ID: u8> {}
impl<const ID: u8> UniqueIdentifier for BarycentricForce<ID> {
type DataType = Vec<f64>;
}
pub enum RBM<const ID: u8> {}
impl<const ID: u8> UniqueIdentifier for RBM<ID> {
type DataType = Vec<f64>;
}
pub enum HardpointsMotion<const ID: u8> {}
impl<const ID: u8> UniqueIdentifier for HardpointsMotion<ID> {
type DataType = Vec<f64>;
}
pub enum HardpointsForces<const ID: u8> {}
impl<const ID: u8> UniqueIdentifier for HardpointsForces<ID> {
type DataType = Vec<f64>;
}
pub enum ActuatorAppliedForces<const ID: u8> {}
impl<const ID: u8> UniqueIdentifier for ActuatorAppliedForces<ID> {
type DataType = Vec<f64>;
}
pub enum ActuatorCommandForces<const ID: u8> {}
impl<const ID: u8> UniqueIdentifier for ActuatorCommandForces<ID> {
type DataType = Vec<f64>;
}
}
}
pub mod gmt_m2 {
use gmt_dos_actors::UID;
#[derive(UID)]
pub enum M2RigidBodyMotions {}
#[derive(UID)]
pub enum M2ModeShape {}
#[derive(UID)]
pub enum M2PositionerForces {}
#[derive(UID)]
pub enum M2PositionerNodes {}
pub mod fsm {
use gmt_dos_actors::UID;
#[derive(UID)]
pub enum M2FSMPiezoForces {}
#[derive(UID)]
pub enum M2FSMPiezoNodes {}
#[derive(UID)]
pub enum M2FSMTipTilt {}
}
pub mod asm {
use gmt_dos_actors::UID;
#[derive(UID)]
pub enum M2ASMRigidBodyForces {}
#[derive(UID)]
pub enum M2ASMColdPlateForces {}
#[derive(UID)]
pub enum M2ASMFaceSheetForces {}
#[derive(UID)]
pub enum M2ASMRigidBodyNodes {}
#[derive(UID)]
pub enum M2ASMColdPlateNodes {}
#[derive(UID)]
pub enum M2ASMFaceSheetNodes {}
}
}
pub mod mount {
use gmt_dos_actors::UID;
#[derive(UID)]
pub enum MountEncoders {}
#[derive(UID)]
pub enum MountTorques {}
#[derive(UID)]
pub enum MountSetPoint {}
}
pub mod cfd_wind_loads {
use gmt_dos_actors::UID;
#[derive(UID)]
pub enum CFDMountWindLoads {}
#[derive(UID)]
pub enum CFDM1WindLoads {}
#[derive(UID)]
pub enum CFDM2WindLoads {}
}