gz_msgs/ign_msgs8/
imu_sensor.rs

1// This file is generated by rust-protobuf 3.7.2. Do not edit
2// .proto file is parsed by protoc 3.21.12
3// @generated
4
5// https://github.com/rust-lang/rust-clippy/issues/702
6#![allow(unknown_lints)]
7#![allow(clippy::all)]
8
9#![allow(unused_attributes)]
10#![cfg_attr(rustfmt, rustfmt::skip)]
11
12#![allow(dead_code)]
13#![allow(missing_docs)]
14#![allow(non_camel_case_types)]
15#![allow(non_snake_case)]
16#![allow(non_upper_case_globals)]
17#![allow(trivial_casts)]
18#![allow(unused_results)]
19#![allow(unused_mut)]
20
21//! Generated file from `ignition/msgs/imu_sensor.proto`
22
23/// Generated files are compatible only with the same version
24/// of protobuf runtime.
25const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_3_7_2;
26
27#[derive(::gz_msgs_common::IgnMessage)]
28// @@protoc_insertion_point(message:ignition.msgs.IMUSensor)
29#[derive(PartialEq,Clone,Default,Debug)]
30pub struct IMUSensor {
31    // message fields
32    // @@protoc_insertion_point(field:ignition.msgs.IMUSensor.header)
33    pub header: ::protobuf::MessageField<super::header::Header>,
34    // @@protoc_insertion_point(field:ignition.msgs.IMUSensor.angular_velocity)
35    pub angular_velocity: ::protobuf::MessageField<imusensor::AngularVelocity>,
36    // @@protoc_insertion_point(field:ignition.msgs.IMUSensor.linear_acceleration)
37    pub linear_acceleration: ::protobuf::MessageField<imusensor::LinearAcceleration>,
38    // @@protoc_insertion_point(field:ignition.msgs.IMUSensor.orientation_ref_frame)
39    pub orientation_ref_frame: ::protobuf::MessageField<imusensor::OrientationReferenceFrame>,
40    // special fields
41    // @@protoc_insertion_point(special_field:ignition.msgs.IMUSensor.special_fields)
42    pub special_fields: ::protobuf::SpecialFields,
43}
44
45impl<'a> ::std::default::Default for &'a IMUSensor {
46    fn default() -> &'a IMUSensor {
47        <IMUSensor as ::protobuf::Message>::default_instance()
48    }
49}
50
51impl IMUSensor {
52    pub fn new() -> IMUSensor {
53        ::std::default::Default::default()
54    }
55
56    fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
57        let mut fields = ::std::vec::Vec::with_capacity(4);
58        let mut oneofs = ::std::vec::Vec::with_capacity(0);
59        fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, super::header::Header>(
60            "header",
61            |m: &IMUSensor| { &m.header },
62            |m: &mut IMUSensor| { &mut m.header },
63        ));
64        fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, imusensor::AngularVelocity>(
65            "angular_velocity",
66            |m: &IMUSensor| { &m.angular_velocity },
67            |m: &mut IMUSensor| { &mut m.angular_velocity },
68        ));
69        fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, imusensor::LinearAcceleration>(
70            "linear_acceleration",
71            |m: &IMUSensor| { &m.linear_acceleration },
72            |m: &mut IMUSensor| { &mut m.linear_acceleration },
73        ));
74        fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, imusensor::OrientationReferenceFrame>(
75            "orientation_ref_frame",
76            |m: &IMUSensor| { &m.orientation_ref_frame },
77            |m: &mut IMUSensor| { &mut m.orientation_ref_frame },
78        ));
79        ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<IMUSensor>(
80            "IMUSensor",
81            fields,
82            oneofs,
83        )
84    }
85}
86
87impl ::protobuf::Message for IMUSensor {
88    const NAME: &'static str = "IMUSensor";
89
90    fn is_initialized(&self) -> bool {
91        true
92    }
93
94    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
95        while let Some(tag) = is.read_raw_tag_or_eof()? {
96            match tag {
97                10 => {
98                    ::protobuf::rt::read_singular_message_into_field(is, &mut self.header)?;
99                },
100                18 => {
101                    ::protobuf::rt::read_singular_message_into_field(is, &mut self.angular_velocity)?;
102                },
103                26 => {
104                    ::protobuf::rt::read_singular_message_into_field(is, &mut self.linear_acceleration)?;
105                },
106                34 => {
107                    ::protobuf::rt::read_singular_message_into_field(is, &mut self.orientation_ref_frame)?;
108                },
109                tag => {
110                    ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
111                },
112            };
113        }
114        ::std::result::Result::Ok(())
115    }
116
117    // Compute sizes of nested messages
118    #[allow(unused_variables)]
119    fn compute_size(&self) -> u64 {
120        let mut my_size = 0;
121        if let Some(v) = self.header.as_ref() {
122            let len = v.compute_size();
123            my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
124        }
125        if let Some(v) = self.angular_velocity.as_ref() {
126            let len = v.compute_size();
127            my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
128        }
129        if let Some(v) = self.linear_acceleration.as_ref() {
130            let len = v.compute_size();
131            my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
132        }
133        if let Some(v) = self.orientation_ref_frame.as_ref() {
134            let len = v.compute_size();
135            my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
136        }
137        my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
138        self.special_fields.cached_size().set(my_size as u32);
139        my_size
140    }
141
142    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
143        if let Some(v) = self.header.as_ref() {
144            ::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
145        }
146        if let Some(v) = self.angular_velocity.as_ref() {
147            ::protobuf::rt::write_message_field_with_cached_size(2, v, os)?;
148        }
149        if let Some(v) = self.linear_acceleration.as_ref() {
150            ::protobuf::rt::write_message_field_with_cached_size(3, v, os)?;
151        }
152        if let Some(v) = self.orientation_ref_frame.as_ref() {
153            ::protobuf::rt::write_message_field_with_cached_size(4, v, os)?;
154        }
155        os.write_unknown_fields(self.special_fields.unknown_fields())?;
156        ::std::result::Result::Ok(())
157    }
158
159    fn special_fields(&self) -> &::protobuf::SpecialFields {
160        &self.special_fields
161    }
162
163    fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
164        &mut self.special_fields
165    }
166
167    fn new() -> IMUSensor {
168        IMUSensor::new()
169    }
170
171    fn clear(&mut self) {
172        self.header.clear();
173        self.angular_velocity.clear();
174        self.linear_acceleration.clear();
175        self.orientation_ref_frame.clear();
176        self.special_fields.clear();
177    }
178
179    fn default_instance() -> &'static IMUSensor {
180        static instance: IMUSensor = IMUSensor {
181            header: ::protobuf::MessageField::none(),
182            angular_velocity: ::protobuf::MessageField::none(),
183            linear_acceleration: ::protobuf::MessageField::none(),
184            orientation_ref_frame: ::protobuf::MessageField::none(),
185            special_fields: ::protobuf::SpecialFields::new(),
186        };
187        &instance
188    }
189}
190
191impl ::protobuf::MessageFull for IMUSensor {
192    fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
193        static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
194        descriptor.get(|| file_descriptor().message_by_package_relative_name("IMUSensor").unwrap()).clone()
195    }
196}
197
198impl ::std::fmt::Display for IMUSensor {
199    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
200        ::protobuf::text_format::fmt(self, f)
201    }
202}
203
204impl ::protobuf::reflect::ProtobufValue for IMUSensor {
205    type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
206}
207
208/// Nested message and enums of message `IMUSensor`
209pub mod imusensor {
210    #[derive(::gz_msgs_common::IgnMessage)]
211    // @@protoc_insertion_point(message:ignition.msgs.IMUSensor.AngularVelocity)
212    #[derive(PartialEq,Clone,Default,Debug)]
213    pub struct AngularVelocity {
214        // message fields
215        // @@protoc_insertion_point(field:ignition.msgs.IMUSensor.AngularVelocity.x_noise)
216        pub x_noise: ::protobuf::MessageField<super::super::sensor_noise::SensorNoise>,
217        // @@protoc_insertion_point(field:ignition.msgs.IMUSensor.AngularVelocity.y_noise)
218        pub y_noise: ::protobuf::MessageField<super::super::sensor_noise::SensorNoise>,
219        // @@protoc_insertion_point(field:ignition.msgs.IMUSensor.AngularVelocity.z_noise)
220        pub z_noise: ::protobuf::MessageField<super::super::sensor_noise::SensorNoise>,
221        // special fields
222        // @@protoc_insertion_point(special_field:ignition.msgs.IMUSensor.AngularVelocity.special_fields)
223        pub special_fields: ::protobuf::SpecialFields,
224    }
225
226    impl<'a> ::std::default::Default for &'a AngularVelocity {
227        fn default() -> &'a AngularVelocity {
228            <AngularVelocity as ::protobuf::Message>::default_instance()
229        }
230    }
231
232    impl AngularVelocity {
233        pub fn new() -> AngularVelocity {
234            ::std::default::Default::default()
235        }
236
237        pub(in super) fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
238            let mut fields = ::std::vec::Vec::with_capacity(3);
239            let mut oneofs = ::std::vec::Vec::with_capacity(0);
240            fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, super::super::sensor_noise::SensorNoise>(
241                "x_noise",
242                |m: &AngularVelocity| { &m.x_noise },
243                |m: &mut AngularVelocity| { &mut m.x_noise },
244            ));
245            fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, super::super::sensor_noise::SensorNoise>(
246                "y_noise",
247                |m: &AngularVelocity| { &m.y_noise },
248                |m: &mut AngularVelocity| { &mut m.y_noise },
249            ));
250            fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, super::super::sensor_noise::SensorNoise>(
251                "z_noise",
252                |m: &AngularVelocity| { &m.z_noise },
253                |m: &mut AngularVelocity| { &mut m.z_noise },
254            ));
255            ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<AngularVelocity>(
256                "IMUSensor.AngularVelocity",
257                fields,
258                oneofs,
259            )
260        }
261    }
262
263    impl ::protobuf::Message for AngularVelocity {
264        const NAME: &'static str = "AngularVelocity";
265
266        fn is_initialized(&self) -> bool {
267            true
268        }
269
270        fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
271            while let Some(tag) = is.read_raw_tag_or_eof()? {
272                match tag {
273                    10 => {
274                        ::protobuf::rt::read_singular_message_into_field(is, &mut self.x_noise)?;
275                    },
276                    18 => {
277                        ::protobuf::rt::read_singular_message_into_field(is, &mut self.y_noise)?;
278                    },
279                    26 => {
280                        ::protobuf::rt::read_singular_message_into_field(is, &mut self.z_noise)?;
281                    },
282                    tag => {
283                        ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
284                    },
285                };
286            }
287            ::std::result::Result::Ok(())
288        }
289
290        // Compute sizes of nested messages
291        #[allow(unused_variables)]
292        fn compute_size(&self) -> u64 {
293            let mut my_size = 0;
294            if let Some(v) = self.x_noise.as_ref() {
295                let len = v.compute_size();
296                my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
297            }
298            if let Some(v) = self.y_noise.as_ref() {
299                let len = v.compute_size();
300                my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
301            }
302            if let Some(v) = self.z_noise.as_ref() {
303                let len = v.compute_size();
304                my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
305            }
306            my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
307            self.special_fields.cached_size().set(my_size as u32);
308            my_size
309        }
310
311        fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
312            if let Some(v) = self.x_noise.as_ref() {
313                ::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
314            }
315            if let Some(v) = self.y_noise.as_ref() {
316                ::protobuf::rt::write_message_field_with_cached_size(2, v, os)?;
317            }
318            if let Some(v) = self.z_noise.as_ref() {
319                ::protobuf::rt::write_message_field_with_cached_size(3, v, os)?;
320            }
321            os.write_unknown_fields(self.special_fields.unknown_fields())?;
322            ::std::result::Result::Ok(())
323        }
324
325        fn special_fields(&self) -> &::protobuf::SpecialFields {
326            &self.special_fields
327        }
328
329        fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
330            &mut self.special_fields
331        }
332
333        fn new() -> AngularVelocity {
334            AngularVelocity::new()
335        }
336
337        fn clear(&mut self) {
338            self.x_noise.clear();
339            self.y_noise.clear();
340            self.z_noise.clear();
341            self.special_fields.clear();
342        }
343
344        fn default_instance() -> &'static AngularVelocity {
345            static instance: AngularVelocity = AngularVelocity {
346                x_noise: ::protobuf::MessageField::none(),
347                y_noise: ::protobuf::MessageField::none(),
348                z_noise: ::protobuf::MessageField::none(),
349                special_fields: ::protobuf::SpecialFields::new(),
350            };
351            &instance
352        }
353    }
354
355    impl ::protobuf::MessageFull for AngularVelocity {
356        fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
357            static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
358            descriptor.get(|| super::file_descriptor().message_by_package_relative_name("IMUSensor.AngularVelocity").unwrap()).clone()
359        }
360    }
361
362    impl ::std::fmt::Display for AngularVelocity {
363        fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
364            ::protobuf::text_format::fmt(self, f)
365        }
366    }
367
368    impl ::protobuf::reflect::ProtobufValue for AngularVelocity {
369        type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
370    }
371
372    #[derive(::gz_msgs_common::IgnMessage)]
373    // @@protoc_insertion_point(message:ignition.msgs.IMUSensor.LinearAcceleration)
374    #[derive(PartialEq,Clone,Default,Debug)]
375    pub struct LinearAcceleration {
376        // message fields
377        // @@protoc_insertion_point(field:ignition.msgs.IMUSensor.LinearAcceleration.x_noise)
378        pub x_noise: ::protobuf::MessageField<super::super::sensor_noise::SensorNoise>,
379        // @@protoc_insertion_point(field:ignition.msgs.IMUSensor.LinearAcceleration.y_noise)
380        pub y_noise: ::protobuf::MessageField<super::super::sensor_noise::SensorNoise>,
381        // @@protoc_insertion_point(field:ignition.msgs.IMUSensor.LinearAcceleration.z_noise)
382        pub z_noise: ::protobuf::MessageField<super::super::sensor_noise::SensorNoise>,
383        // special fields
384        // @@protoc_insertion_point(special_field:ignition.msgs.IMUSensor.LinearAcceleration.special_fields)
385        pub special_fields: ::protobuf::SpecialFields,
386    }
387
388    impl<'a> ::std::default::Default for &'a LinearAcceleration {
389        fn default() -> &'a LinearAcceleration {
390            <LinearAcceleration as ::protobuf::Message>::default_instance()
391        }
392    }
393
394    impl LinearAcceleration {
395        pub fn new() -> LinearAcceleration {
396            ::std::default::Default::default()
397        }
398
399        pub(in super) fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
400            let mut fields = ::std::vec::Vec::with_capacity(3);
401            let mut oneofs = ::std::vec::Vec::with_capacity(0);
402            fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, super::super::sensor_noise::SensorNoise>(
403                "x_noise",
404                |m: &LinearAcceleration| { &m.x_noise },
405                |m: &mut LinearAcceleration| { &mut m.x_noise },
406            ));
407            fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, super::super::sensor_noise::SensorNoise>(
408                "y_noise",
409                |m: &LinearAcceleration| { &m.y_noise },
410                |m: &mut LinearAcceleration| { &mut m.y_noise },
411            ));
412            fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, super::super::sensor_noise::SensorNoise>(
413                "z_noise",
414                |m: &LinearAcceleration| { &m.z_noise },
415                |m: &mut LinearAcceleration| { &mut m.z_noise },
416            ));
417            ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<LinearAcceleration>(
418                "IMUSensor.LinearAcceleration",
419                fields,
420                oneofs,
421            )
422        }
423    }
424
425    impl ::protobuf::Message for LinearAcceleration {
426        const NAME: &'static str = "LinearAcceleration";
427
428        fn is_initialized(&self) -> bool {
429            true
430        }
431
432        fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
433            while let Some(tag) = is.read_raw_tag_or_eof()? {
434                match tag {
435                    10 => {
436                        ::protobuf::rt::read_singular_message_into_field(is, &mut self.x_noise)?;
437                    },
438                    18 => {
439                        ::protobuf::rt::read_singular_message_into_field(is, &mut self.y_noise)?;
440                    },
441                    26 => {
442                        ::protobuf::rt::read_singular_message_into_field(is, &mut self.z_noise)?;
443                    },
444                    tag => {
445                        ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
446                    },
447                };
448            }
449            ::std::result::Result::Ok(())
450        }
451
452        // Compute sizes of nested messages
453        #[allow(unused_variables)]
454        fn compute_size(&self) -> u64 {
455            let mut my_size = 0;
456            if let Some(v) = self.x_noise.as_ref() {
457                let len = v.compute_size();
458                my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
459            }
460            if let Some(v) = self.y_noise.as_ref() {
461                let len = v.compute_size();
462                my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
463            }
464            if let Some(v) = self.z_noise.as_ref() {
465                let len = v.compute_size();
466                my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
467            }
468            my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
469            self.special_fields.cached_size().set(my_size as u32);
470            my_size
471        }
472
473        fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
474            if let Some(v) = self.x_noise.as_ref() {
475                ::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
476            }
477            if let Some(v) = self.y_noise.as_ref() {
478                ::protobuf::rt::write_message_field_with_cached_size(2, v, os)?;
479            }
480            if let Some(v) = self.z_noise.as_ref() {
481                ::protobuf::rt::write_message_field_with_cached_size(3, v, os)?;
482            }
483            os.write_unknown_fields(self.special_fields.unknown_fields())?;
484            ::std::result::Result::Ok(())
485        }
486
487        fn special_fields(&self) -> &::protobuf::SpecialFields {
488            &self.special_fields
489        }
490
491        fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
492            &mut self.special_fields
493        }
494
495        fn new() -> LinearAcceleration {
496            LinearAcceleration::new()
497        }
498
499        fn clear(&mut self) {
500            self.x_noise.clear();
501            self.y_noise.clear();
502            self.z_noise.clear();
503            self.special_fields.clear();
504        }
505
506        fn default_instance() -> &'static LinearAcceleration {
507            static instance: LinearAcceleration = LinearAcceleration {
508                x_noise: ::protobuf::MessageField::none(),
509                y_noise: ::protobuf::MessageField::none(),
510                z_noise: ::protobuf::MessageField::none(),
511                special_fields: ::protobuf::SpecialFields::new(),
512            };
513            &instance
514        }
515    }
516
517    impl ::protobuf::MessageFull for LinearAcceleration {
518        fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
519            static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
520            descriptor.get(|| super::file_descriptor().message_by_package_relative_name("IMUSensor.LinearAcceleration").unwrap()).clone()
521        }
522    }
523
524    impl ::std::fmt::Display for LinearAcceleration {
525        fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
526            ::protobuf::text_format::fmt(self, f)
527        }
528    }
529
530    impl ::protobuf::reflect::ProtobufValue for LinearAcceleration {
531        type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
532    }
533
534    #[derive(::gz_msgs_common::IgnMessage)]
535    // @@protoc_insertion_point(message:ignition.msgs.IMUSensor.OrientationReferenceFrame)
536    #[derive(PartialEq,Clone,Default,Debug)]
537    pub struct OrientationReferenceFrame {
538        // message fields
539        // @@protoc_insertion_point(field:ignition.msgs.IMUSensor.OrientationReferenceFrame.localization)
540        pub localization: ::std::string::String,
541        // @@protoc_insertion_point(field:ignition.msgs.IMUSensor.OrientationReferenceFrame.custom_rpy)
542        pub custom_rpy: ::protobuf::MessageField<super::super::vector3d::Vector3d>,
543        // @@protoc_insertion_point(field:ignition.msgs.IMUSensor.OrientationReferenceFrame.custom_rpy_parent_frame)
544        pub custom_rpy_parent_frame: ::std::string::String,
545        // @@protoc_insertion_point(field:ignition.msgs.IMUSensor.OrientationReferenceFrame.gravity_dir_x)
546        pub gravity_dir_x: ::protobuf::MessageField<super::super::vector3d::Vector3d>,
547        // @@protoc_insertion_point(field:ignition.msgs.IMUSensor.OrientationReferenceFrame.gravity_dir_x_parent_frame)
548        pub gravity_dir_x_parent_frame: ::std::string::String,
549        // special fields
550        // @@protoc_insertion_point(special_field:ignition.msgs.IMUSensor.OrientationReferenceFrame.special_fields)
551        pub special_fields: ::protobuf::SpecialFields,
552    }
553
554    impl<'a> ::std::default::Default for &'a OrientationReferenceFrame {
555        fn default() -> &'a OrientationReferenceFrame {
556            <OrientationReferenceFrame as ::protobuf::Message>::default_instance()
557        }
558    }
559
560    impl OrientationReferenceFrame {
561        pub fn new() -> OrientationReferenceFrame {
562            ::std::default::Default::default()
563        }
564
565        pub(in super) fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
566            let mut fields = ::std::vec::Vec::with_capacity(5);
567            let mut oneofs = ::std::vec::Vec::with_capacity(0);
568            fields.push(::protobuf::reflect::rt::v2::make_simpler_field_accessor::<_, _>(
569                "localization",
570                |m: &OrientationReferenceFrame| { &m.localization },
571                |m: &mut OrientationReferenceFrame| { &mut m.localization },
572            ));
573            fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, super::super::vector3d::Vector3d>(
574                "custom_rpy",
575                |m: &OrientationReferenceFrame| { &m.custom_rpy },
576                |m: &mut OrientationReferenceFrame| { &mut m.custom_rpy },
577            ));
578            fields.push(::protobuf::reflect::rt::v2::make_simpler_field_accessor::<_, _>(
579                "custom_rpy_parent_frame",
580                |m: &OrientationReferenceFrame| { &m.custom_rpy_parent_frame },
581                |m: &mut OrientationReferenceFrame| { &mut m.custom_rpy_parent_frame },
582            ));
583            fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, super::super::vector3d::Vector3d>(
584                "gravity_dir_x",
585                |m: &OrientationReferenceFrame| { &m.gravity_dir_x },
586                |m: &mut OrientationReferenceFrame| { &mut m.gravity_dir_x },
587            ));
588            fields.push(::protobuf::reflect::rt::v2::make_simpler_field_accessor::<_, _>(
589                "gravity_dir_x_parent_frame",
590                |m: &OrientationReferenceFrame| { &m.gravity_dir_x_parent_frame },
591                |m: &mut OrientationReferenceFrame| { &mut m.gravity_dir_x_parent_frame },
592            ));
593            ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<OrientationReferenceFrame>(
594                "IMUSensor.OrientationReferenceFrame",
595                fields,
596                oneofs,
597            )
598        }
599    }
600
601    impl ::protobuf::Message for OrientationReferenceFrame {
602        const NAME: &'static str = "OrientationReferenceFrame";
603
604        fn is_initialized(&self) -> bool {
605            true
606        }
607
608        fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
609            while let Some(tag) = is.read_raw_tag_or_eof()? {
610                match tag {
611                    10 => {
612                        self.localization = is.read_string()?;
613                    },
614                    18 => {
615                        ::protobuf::rt::read_singular_message_into_field(is, &mut self.custom_rpy)?;
616                    },
617                    26 => {
618                        self.custom_rpy_parent_frame = is.read_string()?;
619                    },
620                    34 => {
621                        ::protobuf::rt::read_singular_message_into_field(is, &mut self.gravity_dir_x)?;
622                    },
623                    42 => {
624                        self.gravity_dir_x_parent_frame = is.read_string()?;
625                    },
626                    tag => {
627                        ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
628                    },
629                };
630            }
631            ::std::result::Result::Ok(())
632        }
633
634        // Compute sizes of nested messages
635        #[allow(unused_variables)]
636        fn compute_size(&self) -> u64 {
637            let mut my_size = 0;
638            if !self.localization.is_empty() {
639                my_size += ::protobuf::rt::string_size(1, &self.localization);
640            }
641            if let Some(v) = self.custom_rpy.as_ref() {
642                let len = v.compute_size();
643                my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
644            }
645            if !self.custom_rpy_parent_frame.is_empty() {
646                my_size += ::protobuf::rt::string_size(3, &self.custom_rpy_parent_frame);
647            }
648            if let Some(v) = self.gravity_dir_x.as_ref() {
649                let len = v.compute_size();
650                my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
651            }
652            if !self.gravity_dir_x_parent_frame.is_empty() {
653                my_size += ::protobuf::rt::string_size(5, &self.gravity_dir_x_parent_frame);
654            }
655            my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
656            self.special_fields.cached_size().set(my_size as u32);
657            my_size
658        }
659
660        fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
661            if !self.localization.is_empty() {
662                os.write_string(1, &self.localization)?;
663            }
664            if let Some(v) = self.custom_rpy.as_ref() {
665                ::protobuf::rt::write_message_field_with_cached_size(2, v, os)?;
666            }
667            if !self.custom_rpy_parent_frame.is_empty() {
668                os.write_string(3, &self.custom_rpy_parent_frame)?;
669            }
670            if let Some(v) = self.gravity_dir_x.as_ref() {
671                ::protobuf::rt::write_message_field_with_cached_size(4, v, os)?;
672            }
673            if !self.gravity_dir_x_parent_frame.is_empty() {
674                os.write_string(5, &self.gravity_dir_x_parent_frame)?;
675            }
676            os.write_unknown_fields(self.special_fields.unknown_fields())?;
677            ::std::result::Result::Ok(())
678        }
679
680        fn special_fields(&self) -> &::protobuf::SpecialFields {
681            &self.special_fields
682        }
683
684        fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
685            &mut self.special_fields
686        }
687
688        fn new() -> OrientationReferenceFrame {
689            OrientationReferenceFrame::new()
690        }
691
692        fn clear(&mut self) {
693            self.localization.clear();
694            self.custom_rpy.clear();
695            self.custom_rpy_parent_frame.clear();
696            self.gravity_dir_x.clear();
697            self.gravity_dir_x_parent_frame.clear();
698            self.special_fields.clear();
699        }
700
701        fn default_instance() -> &'static OrientationReferenceFrame {
702            static instance: OrientationReferenceFrame = OrientationReferenceFrame {
703                localization: ::std::string::String::new(),
704                custom_rpy: ::protobuf::MessageField::none(),
705                custom_rpy_parent_frame: ::std::string::String::new(),
706                gravity_dir_x: ::protobuf::MessageField::none(),
707                gravity_dir_x_parent_frame: ::std::string::String::new(),
708                special_fields: ::protobuf::SpecialFields::new(),
709            };
710            &instance
711        }
712    }
713
714    impl ::protobuf::MessageFull for OrientationReferenceFrame {
715        fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
716            static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
717            descriptor.get(|| super::file_descriptor().message_by_package_relative_name("IMUSensor.OrientationReferenceFrame").unwrap()).clone()
718        }
719    }
720
721    impl ::std::fmt::Display for OrientationReferenceFrame {
722        fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
723            ::protobuf::text_format::fmt(self, f)
724        }
725    }
726
727    impl ::protobuf::reflect::ProtobufValue for OrientationReferenceFrame {
728        type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
729    }
730}
731
732static file_descriptor_proto_data: &'static [u8] = b"\
733    \n\x1eignition/msgs/imu_sensor.proto\x12\rignition.msgs\x1a\x20ignition/\
734    msgs/sensor_noise.proto\x1a\x1aignition/msgs/header.proto\x1a\x1cignitio\
735    n/msgs/vector3d.proto\"\xe8\x07\n\tIMUSensor\x12-\n\x06header\x18\x01\
736    \x20\x01(\x0b2\x15.ignition.msgs.HeaderR\x06header\x12S\n\x10angular_vel\
737    ocity\x18\x02\x20\x01(\x0b2(.ignition.msgs.IMUSensor.AngularVelocityR\
738    \x0fangularVelocity\x12\\\n\x13linear_acceleration\x18\x03\x20\x01(\x0b2\
739    +.ignition.msgs.IMUSensor.LinearAccelerationR\x12linearAcceleration\x12f\
740    \n\x15orientation_ref_frame\x18\x04\x20\x01(\x0b22.ignition.msgs.IMUSens\
741    or.OrientationReferenceFrameR\x13orientationRefFrame\x1a\xb0\x01\n\x0fAn\
742    gularVelocity\x123\n\x07x_noise\x18\x01\x20\x01(\x0b2\x1a.ignition.msgs.\
743    SensorNoiseR\x06xNoise\x123\n\x07y_noise\x18\x02\x20\x01(\x0b2\x1a.ignit\
744    ion.msgs.SensorNoiseR\x06yNoise\x123\n\x07z_noise\x18\x03\x20\x01(\x0b2\
745    \x1a.ignition.msgs.SensorNoiseR\x06zNoise\x1a\xb3\x01\n\x12LinearAcceler\
746    ation\x123\n\x07x_noise\x18\x01\x20\x01(\x0b2\x1a.ignition.msgs.SensorNo\
747    iseR\x06xNoise\x123\n\x07y_noise\x18\x02\x20\x01(\x0b2\x1a.ignition.msgs\
748    .SensorNoiseR\x06yNoise\x123\n\x07z_noise\x18\x03\x20\x01(\x0b2\x1a.igni\
749    tion.msgs.SensorNoiseR\x06zNoise\x1a\xa7\x02\n\x19OrientationReferenceFr\
750    ame\x12\"\n\x0clocalization\x18\x01\x20\x01(\tR\x0clocalization\x126\n\n\
751    custom_rpy\x18\x02\x20\x01(\x0b2\x17.ignition.msgs.Vector3dR\tcustomRpy\
752    \x125\n\x17custom_rpy_parent_frame\x18\x03\x20\x01(\tR\x14customRpyParen\
753    tFrame\x12;\n\rgravity_dir_x\x18\x04\x20\x01(\x0b2\x17.ignition.msgs.Vec\
754    tor3dR\x0bgravityDirX\x12:\n\x1agravity_dir_x_parent_frame\x18\x05\x20\
755    \x01(\tR\x16gravityDirXParentFrameB$\n\x11com.ignition.msgsB\x0fIMUSenso\
756    rProtosb\x06proto3\
757";
758
759/// `FileDescriptorProto` object which was a source for this generated file
760fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto {
761    static file_descriptor_proto_lazy: ::protobuf::rt::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::rt::Lazy::new();
762    file_descriptor_proto_lazy.get(|| {
763        ::protobuf::Message::parse_from_bytes(file_descriptor_proto_data).unwrap()
764    })
765}
766
767/// `FileDescriptor` object which allows dynamic access to files
768pub fn file_descriptor() -> &'static ::protobuf::reflect::FileDescriptor {
769    static generated_file_descriptor_lazy: ::protobuf::rt::Lazy<::protobuf::reflect::GeneratedFileDescriptor> = ::protobuf::rt::Lazy::new();
770    static file_descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::FileDescriptor> = ::protobuf::rt::Lazy::new();
771    file_descriptor.get(|| {
772        let generated_file_descriptor = generated_file_descriptor_lazy.get(|| {
773            let mut deps = ::std::vec::Vec::with_capacity(3);
774            deps.push(super::sensor_noise::file_descriptor().clone());
775            deps.push(super::header::file_descriptor().clone());
776            deps.push(super::vector3d::file_descriptor().clone());
777            let mut messages = ::std::vec::Vec::with_capacity(4);
778            messages.push(IMUSensor::generated_message_descriptor_data());
779            messages.push(imusensor::AngularVelocity::generated_message_descriptor_data());
780            messages.push(imusensor::LinearAcceleration::generated_message_descriptor_data());
781            messages.push(imusensor::OrientationReferenceFrame::generated_message_descriptor_data());
782            let mut enums = ::std::vec::Vec::with_capacity(0);
783            ::protobuf::reflect::GeneratedFileDescriptor::new_generated(
784                file_descriptor_proto(),
785                deps,
786                messages,
787                enums,
788            )
789        });
790        ::protobuf::reflect::FileDescriptor::new_generated_2(generated_file_descriptor)
791    })
792}