matrix_protos_rust/protos/
io.rs

1// This file is generated by rust-protobuf 2.25.1. Do not edit
2// @generated
3
4// https://github.com/rust-lang/rust-clippy/issues/702
5#![allow(unknown_lints)]
6#![allow(clippy::all)]
7
8#![allow(unused_attributes)]
9#![cfg_attr(rustfmt, rustfmt::skip)]
10
11#![allow(box_pointers)]
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_imports)]
19#![allow(unused_results)]
20//! Generated file from `matrix_io/malos/v1/io.proto`
21
22/// Generated files are compatible only with the same version
23/// of protobuf runtime.
24// const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_25_1;
25
26#[derive(PartialEq,Clone,Default)]
27pub struct LedValue {
28    // message fields
29    pub red: u32,
30    pub green: u32,
31    pub blue: u32,
32    pub white: u32,
33    // special fields
34    pub unknown_fields: ::protobuf::UnknownFields,
35    pub cached_size: ::protobuf::CachedSize,
36}
37
38impl<'a> ::std::default::Default for &'a LedValue {
39    fn default() -> &'a LedValue {
40        <LedValue as ::protobuf::Message>::default_instance()
41    }
42}
43
44impl LedValue {
45    pub fn new() -> LedValue {
46        ::std::default::Default::default()
47    }
48
49    // uint32 red = 1;
50
51
52    pub fn get_red(&self) -> u32 {
53        self.red
54    }
55    pub fn clear_red(&mut self) {
56        self.red = 0;
57    }
58
59    // Param is passed by value, moved
60    pub fn set_red(&mut self, v: u32) {
61        self.red = v;
62    }
63
64    // uint32 green = 2;
65
66
67    pub fn get_green(&self) -> u32 {
68        self.green
69    }
70    pub fn clear_green(&mut self) {
71        self.green = 0;
72    }
73
74    // Param is passed by value, moved
75    pub fn set_green(&mut self, v: u32) {
76        self.green = v;
77    }
78
79    // uint32 blue = 3;
80
81
82    pub fn get_blue(&self) -> u32 {
83        self.blue
84    }
85    pub fn clear_blue(&mut self) {
86        self.blue = 0;
87    }
88
89    // Param is passed by value, moved
90    pub fn set_blue(&mut self, v: u32) {
91        self.blue = v;
92    }
93
94    // uint32 white = 4;
95
96
97    pub fn get_white(&self) -> u32 {
98        self.white
99    }
100    pub fn clear_white(&mut self) {
101        self.white = 0;
102    }
103
104    // Param is passed by value, moved
105    pub fn set_white(&mut self, v: u32) {
106        self.white = v;
107    }
108}
109
110impl ::protobuf::Message for LedValue {
111    fn is_initialized(&self) -> bool {
112        true
113    }
114
115    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
116        while !is.eof()? {
117            let (field_number, wire_type) = is.read_tag_unpack()?;
118            match field_number {
119                1 => {
120                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
121                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
122                    }
123                    let tmp = is.read_uint32()?;
124                    self.red = tmp;
125                },
126                2 => {
127                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
128                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
129                    }
130                    let tmp = is.read_uint32()?;
131                    self.green = tmp;
132                },
133                3 => {
134                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
135                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
136                    }
137                    let tmp = is.read_uint32()?;
138                    self.blue = tmp;
139                },
140                4 => {
141                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
142                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
143                    }
144                    let tmp = is.read_uint32()?;
145                    self.white = tmp;
146                },
147                _ => {
148                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
149                },
150            };
151        }
152        ::std::result::Result::Ok(())
153    }
154
155    // Compute sizes of nested messages
156    #[allow(unused_variables)]
157    fn compute_size(&self) -> u32 {
158        let mut my_size = 0;
159        if self.red != 0 {
160            my_size += ::protobuf::rt::value_size(1, self.red, ::protobuf::wire_format::WireTypeVarint);
161        }
162        if self.green != 0 {
163            my_size += ::protobuf::rt::value_size(2, self.green, ::protobuf::wire_format::WireTypeVarint);
164        }
165        if self.blue != 0 {
166            my_size += ::protobuf::rt::value_size(3, self.blue, ::protobuf::wire_format::WireTypeVarint);
167        }
168        if self.white != 0 {
169            my_size += ::protobuf::rt::value_size(4, self.white, ::protobuf::wire_format::WireTypeVarint);
170        }
171        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
172        self.cached_size.set(my_size);
173        my_size
174    }
175
176    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
177        if self.red != 0 {
178            os.write_uint32(1, self.red)?;
179        }
180        if self.green != 0 {
181            os.write_uint32(2, self.green)?;
182        }
183        if self.blue != 0 {
184            os.write_uint32(3, self.blue)?;
185        }
186        if self.white != 0 {
187            os.write_uint32(4, self.white)?;
188        }
189        os.write_unknown_fields(self.get_unknown_fields())?;
190        ::std::result::Result::Ok(())
191    }
192
193    fn get_cached_size(&self) -> u32 {
194        self.cached_size.get()
195    }
196
197    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
198        &self.unknown_fields
199    }
200
201    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
202        &mut self.unknown_fields
203    }
204
205    fn as_any(&self) -> &dyn (::std::any::Any) {
206        self as &dyn (::std::any::Any)
207    }
208    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
209        self as &mut dyn (::std::any::Any)
210    }
211    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
212        self
213    }
214
215    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
216        Self::descriptor_static()
217    }
218
219    fn new() -> LedValue {
220        LedValue::new()
221    }
222
223    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
224        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
225        descriptor.get(|| {
226            let mut fields = ::std::vec::Vec::new();
227            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
228                "red",
229                |m: &LedValue| { &m.red },
230                |m: &mut LedValue| { &mut m.red },
231            ));
232            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
233                "green",
234                |m: &LedValue| { &m.green },
235                |m: &mut LedValue| { &mut m.green },
236            ));
237            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
238                "blue",
239                |m: &LedValue| { &m.blue },
240                |m: &mut LedValue| { &mut m.blue },
241            ));
242            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
243                "white",
244                |m: &LedValue| { &m.white },
245                |m: &mut LedValue| { &mut m.white },
246            ));
247            ::protobuf::reflect::MessageDescriptor::new_pb_name::<LedValue>(
248                "LedValue",
249                fields,
250                file_descriptor_proto()
251            )
252        })
253    }
254
255    fn default_instance() -> &'static LedValue {
256        static instance: ::protobuf::rt::LazyV2<LedValue> = ::protobuf::rt::LazyV2::INIT;
257        instance.get(LedValue::new)
258    }
259}
260
261impl ::protobuf::Clear for LedValue {
262    fn clear(&mut self) {
263        self.red = 0;
264        self.green = 0;
265        self.blue = 0;
266        self.white = 0;
267        self.unknown_fields.clear();
268    }
269}
270
271impl ::std::fmt::Debug for LedValue {
272    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
273        ::protobuf::text_format::fmt(self, f)
274    }
275}
276
277impl ::protobuf::reflect::ProtobufValue for LedValue {
278    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
279        ::protobuf::reflect::ReflectValueRef::Message(self)
280    }
281}
282
283#[derive(PartialEq,Clone,Default)]
284pub struct EverloopImage {
285    // message fields
286    pub led: ::protobuf::RepeatedField<LedValue>,
287    pub everloop_length: i32,
288    // special fields
289    pub unknown_fields: ::protobuf::UnknownFields,
290    pub cached_size: ::protobuf::CachedSize,
291}
292
293impl<'a> ::std::default::Default for &'a EverloopImage {
294    fn default() -> &'a EverloopImage {
295        <EverloopImage as ::protobuf::Message>::default_instance()
296    }
297}
298
299impl EverloopImage {
300    pub fn new() -> EverloopImage {
301        ::std::default::Default::default()
302    }
303
304    // repeated .matrix_io.malos.v1.io.LedValue led = 1;
305
306
307    pub fn get_led(&self) -> &[LedValue] {
308        &self.led
309    }
310    pub fn clear_led(&mut self) {
311        self.led.clear();
312    }
313
314    // Param is passed by value, moved
315    pub fn set_led(&mut self, v: ::protobuf::RepeatedField<LedValue>) {
316        self.led = v;
317    }
318
319    // Mutable pointer to the field.
320    pub fn mut_led(&mut self) -> &mut ::protobuf::RepeatedField<LedValue> {
321        &mut self.led
322    }
323
324    // Take field
325    pub fn take_led(&mut self) -> ::protobuf::RepeatedField<LedValue> {
326        ::std::mem::replace(&mut self.led, ::protobuf::RepeatedField::new())
327    }
328
329    // int32 everloop_length = 2;
330
331
332    pub fn get_everloop_length(&self) -> i32 {
333        self.everloop_length
334    }
335    pub fn clear_everloop_length(&mut self) {
336        self.everloop_length = 0;
337    }
338
339    // Param is passed by value, moved
340    pub fn set_everloop_length(&mut self, v: i32) {
341        self.everloop_length = v;
342    }
343}
344
345impl ::protobuf::Message for EverloopImage {
346    fn is_initialized(&self) -> bool {
347        for v in &self.led {
348            if !v.is_initialized() {
349                return false;
350            }
351        };
352        true
353    }
354
355    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
356        while !is.eof()? {
357            let (field_number, wire_type) = is.read_tag_unpack()?;
358            match field_number {
359                1 => {
360                    ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.led)?;
361                },
362                2 => {
363                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
364                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
365                    }
366                    let tmp = is.read_int32()?;
367                    self.everloop_length = tmp;
368                },
369                _ => {
370                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
371                },
372            };
373        }
374        ::std::result::Result::Ok(())
375    }
376
377    // Compute sizes of nested messages
378    #[allow(unused_variables)]
379    fn compute_size(&self) -> u32 {
380        let mut my_size = 0;
381        for value in &self.led {
382            let len = value.compute_size();
383            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
384        };
385        if self.everloop_length != 0 {
386            my_size += ::protobuf::rt::value_size(2, self.everloop_length, ::protobuf::wire_format::WireTypeVarint);
387        }
388        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
389        self.cached_size.set(my_size);
390        my_size
391    }
392
393    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
394        for v in &self.led {
395            os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
396            os.write_raw_varint32(v.get_cached_size())?;
397            v.write_to_with_cached_sizes(os)?;
398        };
399        if self.everloop_length != 0 {
400            os.write_int32(2, self.everloop_length)?;
401        }
402        os.write_unknown_fields(self.get_unknown_fields())?;
403        ::std::result::Result::Ok(())
404    }
405
406    fn get_cached_size(&self) -> u32 {
407        self.cached_size.get()
408    }
409
410    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
411        &self.unknown_fields
412    }
413
414    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
415        &mut self.unknown_fields
416    }
417
418    fn as_any(&self) -> &dyn (::std::any::Any) {
419        self as &dyn (::std::any::Any)
420    }
421    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
422        self as &mut dyn (::std::any::Any)
423    }
424    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
425        self
426    }
427
428    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
429        Self::descriptor_static()
430    }
431
432    fn new() -> EverloopImage {
433        EverloopImage::new()
434    }
435
436    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
437        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
438        descriptor.get(|| {
439            let mut fields = ::std::vec::Vec::new();
440            fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<LedValue>>(
441                "led",
442                |m: &EverloopImage| { &m.led },
443                |m: &mut EverloopImage| { &mut m.led },
444            ));
445            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt32>(
446                "everloop_length",
447                |m: &EverloopImage| { &m.everloop_length },
448                |m: &mut EverloopImage| { &mut m.everloop_length },
449            ));
450            ::protobuf::reflect::MessageDescriptor::new_pb_name::<EverloopImage>(
451                "EverloopImage",
452                fields,
453                file_descriptor_proto()
454            )
455        })
456    }
457
458    fn default_instance() -> &'static EverloopImage {
459        static instance: ::protobuf::rt::LazyV2<EverloopImage> = ::protobuf::rt::LazyV2::INIT;
460        instance.get(EverloopImage::new)
461    }
462}
463
464impl ::protobuf::Clear for EverloopImage {
465    fn clear(&mut self) {
466        self.led.clear();
467        self.everloop_length = 0;
468        self.unknown_fields.clear();
469    }
470}
471
472impl ::std::fmt::Debug for EverloopImage {
473    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
474        ::protobuf::text_format::fmt(self, f)
475    }
476}
477
478impl ::protobuf::reflect::ProtobufValue for EverloopImage {
479    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
480        ::protobuf::reflect::ReflectValueRef::Message(self)
481    }
482}
483
484#[derive(PartialEq,Clone,Default)]
485pub struct ServoParams {
486    // message fields
487    pub pin: u32,
488    pub angle: u32,
489    // special fields
490    pub unknown_fields: ::protobuf::UnknownFields,
491    pub cached_size: ::protobuf::CachedSize,
492}
493
494impl<'a> ::std::default::Default for &'a ServoParams {
495    fn default() -> &'a ServoParams {
496        <ServoParams as ::protobuf::Message>::default_instance()
497    }
498}
499
500impl ServoParams {
501    pub fn new() -> ServoParams {
502        ::std::default::Default::default()
503    }
504
505    // uint32 pin = 1;
506
507
508    pub fn get_pin(&self) -> u32 {
509        self.pin
510    }
511    pub fn clear_pin(&mut self) {
512        self.pin = 0;
513    }
514
515    // Param is passed by value, moved
516    pub fn set_pin(&mut self, v: u32) {
517        self.pin = v;
518    }
519
520    // uint32 angle = 2;
521
522
523    pub fn get_angle(&self) -> u32 {
524        self.angle
525    }
526    pub fn clear_angle(&mut self) {
527        self.angle = 0;
528    }
529
530    // Param is passed by value, moved
531    pub fn set_angle(&mut self, v: u32) {
532        self.angle = v;
533    }
534}
535
536impl ::protobuf::Message for ServoParams {
537    fn is_initialized(&self) -> bool {
538        true
539    }
540
541    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
542        while !is.eof()? {
543            let (field_number, wire_type) = is.read_tag_unpack()?;
544            match field_number {
545                1 => {
546                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
547                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
548                    }
549                    let tmp = is.read_uint32()?;
550                    self.pin = tmp;
551                },
552                2 => {
553                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
554                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
555                    }
556                    let tmp = is.read_uint32()?;
557                    self.angle = tmp;
558                },
559                _ => {
560                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
561                },
562            };
563        }
564        ::std::result::Result::Ok(())
565    }
566
567    // Compute sizes of nested messages
568    #[allow(unused_variables)]
569    fn compute_size(&self) -> u32 {
570        let mut my_size = 0;
571        if self.pin != 0 {
572            my_size += ::protobuf::rt::value_size(1, self.pin, ::protobuf::wire_format::WireTypeVarint);
573        }
574        if self.angle != 0 {
575            my_size += ::protobuf::rt::value_size(2, self.angle, ::protobuf::wire_format::WireTypeVarint);
576        }
577        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
578        self.cached_size.set(my_size);
579        my_size
580    }
581
582    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
583        if self.pin != 0 {
584            os.write_uint32(1, self.pin)?;
585        }
586        if self.angle != 0 {
587            os.write_uint32(2, self.angle)?;
588        }
589        os.write_unknown_fields(self.get_unknown_fields())?;
590        ::std::result::Result::Ok(())
591    }
592
593    fn get_cached_size(&self) -> u32 {
594        self.cached_size.get()
595    }
596
597    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
598        &self.unknown_fields
599    }
600
601    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
602        &mut self.unknown_fields
603    }
604
605    fn as_any(&self) -> &dyn (::std::any::Any) {
606        self as &dyn (::std::any::Any)
607    }
608    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
609        self as &mut dyn (::std::any::Any)
610    }
611    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
612        self
613    }
614
615    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
616        Self::descriptor_static()
617    }
618
619    fn new() -> ServoParams {
620        ServoParams::new()
621    }
622
623    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
624        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
625        descriptor.get(|| {
626            let mut fields = ::std::vec::Vec::new();
627            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
628                "pin",
629                |m: &ServoParams| { &m.pin },
630                |m: &mut ServoParams| { &mut m.pin },
631            ));
632            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
633                "angle",
634                |m: &ServoParams| { &m.angle },
635                |m: &mut ServoParams| { &mut m.angle },
636            ));
637            ::protobuf::reflect::MessageDescriptor::new_pb_name::<ServoParams>(
638                "ServoParams",
639                fields,
640                file_descriptor_proto()
641            )
642        })
643    }
644
645    fn default_instance() -> &'static ServoParams {
646        static instance: ::protobuf::rt::LazyV2<ServoParams> = ::protobuf::rt::LazyV2::INIT;
647        instance.get(ServoParams::new)
648    }
649}
650
651impl ::protobuf::Clear for ServoParams {
652    fn clear(&mut self) {
653        self.pin = 0;
654        self.angle = 0;
655        self.unknown_fields.clear();
656    }
657}
658
659impl ::std::fmt::Debug for ServoParams {
660    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
661        ::protobuf::text_format::fmt(self, f)
662    }
663}
664
665impl ::protobuf::reflect::ProtobufValue for ServoParams {
666    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
667        ::protobuf::reflect::ReflectValueRef::Message(self)
668    }
669}
670
671#[derive(PartialEq,Clone,Default)]
672pub struct GpioParams {
673    // message fields
674    pub pin: u32,
675    pub mode: GpioParams_EnumMode,
676    pub value: u32,
677    pub values: u32,
678    // special fields
679    pub unknown_fields: ::protobuf::UnknownFields,
680    pub cached_size: ::protobuf::CachedSize,
681}
682
683impl<'a> ::std::default::Default for &'a GpioParams {
684    fn default() -> &'a GpioParams {
685        <GpioParams as ::protobuf::Message>::default_instance()
686    }
687}
688
689impl GpioParams {
690    pub fn new() -> GpioParams {
691        ::std::default::Default::default()
692    }
693
694    // uint32 pin = 1;
695
696
697    pub fn get_pin(&self) -> u32 {
698        self.pin
699    }
700    pub fn clear_pin(&mut self) {
701        self.pin = 0;
702    }
703
704    // Param is passed by value, moved
705    pub fn set_pin(&mut self, v: u32) {
706        self.pin = v;
707    }
708
709    // .matrix_io.malos.v1.io.GpioParams.EnumMode mode = 2;
710
711
712    pub fn get_mode(&self) -> GpioParams_EnumMode {
713        self.mode
714    }
715    pub fn clear_mode(&mut self) {
716        self.mode = GpioParams_EnumMode::INPUT;
717    }
718
719    // Param is passed by value, moved
720    pub fn set_mode(&mut self, v: GpioParams_EnumMode) {
721        self.mode = v;
722    }
723
724    // uint32 value = 3;
725
726
727    pub fn get_value(&self) -> u32 {
728        self.value
729    }
730    pub fn clear_value(&mut self) {
731        self.value = 0;
732    }
733
734    // Param is passed by value, moved
735    pub fn set_value(&mut self, v: u32) {
736        self.value = v;
737    }
738
739    // uint32 values = 4;
740
741
742    pub fn get_values(&self) -> u32 {
743        self.values
744    }
745    pub fn clear_values(&mut self) {
746        self.values = 0;
747    }
748
749    // Param is passed by value, moved
750    pub fn set_values(&mut self, v: u32) {
751        self.values = v;
752    }
753}
754
755impl ::protobuf::Message for GpioParams {
756    fn is_initialized(&self) -> bool {
757        true
758    }
759
760    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
761        while !is.eof()? {
762            let (field_number, wire_type) = is.read_tag_unpack()?;
763            match field_number {
764                1 => {
765                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
766                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
767                    }
768                    let tmp = is.read_uint32()?;
769                    self.pin = tmp;
770                },
771                2 => {
772                    ::protobuf::rt::read_proto3_enum_with_unknown_fields_into(wire_type, is, &mut self.mode, 2, &mut self.unknown_fields)?
773                },
774                3 => {
775                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
776                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
777                    }
778                    let tmp = is.read_uint32()?;
779                    self.value = tmp;
780                },
781                4 => {
782                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
783                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
784                    }
785                    let tmp = is.read_uint32()?;
786                    self.values = tmp;
787                },
788                _ => {
789                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
790                },
791            };
792        }
793        ::std::result::Result::Ok(())
794    }
795
796    // Compute sizes of nested messages
797    #[allow(unused_variables)]
798    fn compute_size(&self) -> u32 {
799        let mut my_size = 0;
800        if self.pin != 0 {
801            my_size += ::protobuf::rt::value_size(1, self.pin, ::protobuf::wire_format::WireTypeVarint);
802        }
803        if self.mode != GpioParams_EnumMode::INPUT {
804            my_size += ::protobuf::rt::enum_size(2, self.mode);
805        }
806        if self.value != 0 {
807            my_size += ::protobuf::rt::value_size(3, self.value, ::protobuf::wire_format::WireTypeVarint);
808        }
809        if self.values != 0 {
810            my_size += ::protobuf::rt::value_size(4, self.values, ::protobuf::wire_format::WireTypeVarint);
811        }
812        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
813        self.cached_size.set(my_size);
814        my_size
815    }
816
817    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
818        if self.pin != 0 {
819            os.write_uint32(1, self.pin)?;
820        }
821        if self.mode != GpioParams_EnumMode::INPUT {
822            os.write_enum(2, ::protobuf::ProtobufEnum::value(&self.mode))?;
823        }
824        if self.value != 0 {
825            os.write_uint32(3, self.value)?;
826        }
827        if self.values != 0 {
828            os.write_uint32(4, self.values)?;
829        }
830        os.write_unknown_fields(self.get_unknown_fields())?;
831        ::std::result::Result::Ok(())
832    }
833
834    fn get_cached_size(&self) -> u32 {
835        self.cached_size.get()
836    }
837
838    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
839        &self.unknown_fields
840    }
841
842    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
843        &mut self.unknown_fields
844    }
845
846    fn as_any(&self) -> &dyn (::std::any::Any) {
847        self as &dyn (::std::any::Any)
848    }
849    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
850        self as &mut dyn (::std::any::Any)
851    }
852    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
853        self
854    }
855
856    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
857        Self::descriptor_static()
858    }
859
860    fn new() -> GpioParams {
861        GpioParams::new()
862    }
863
864    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
865        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
866        descriptor.get(|| {
867            let mut fields = ::std::vec::Vec::new();
868            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
869                "pin",
870                |m: &GpioParams| { &m.pin },
871                |m: &mut GpioParams| { &mut m.pin },
872            ));
873            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum<GpioParams_EnumMode>>(
874                "mode",
875                |m: &GpioParams| { &m.mode },
876                |m: &mut GpioParams| { &mut m.mode },
877            ));
878            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
879                "value",
880                |m: &GpioParams| { &m.value },
881                |m: &mut GpioParams| { &mut m.value },
882            ));
883            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
884                "values",
885                |m: &GpioParams| { &m.values },
886                |m: &mut GpioParams| { &mut m.values },
887            ));
888            ::protobuf::reflect::MessageDescriptor::new_pb_name::<GpioParams>(
889                "GpioParams",
890                fields,
891                file_descriptor_proto()
892            )
893        })
894    }
895
896    fn default_instance() -> &'static GpioParams {
897        static instance: ::protobuf::rt::LazyV2<GpioParams> = ::protobuf::rt::LazyV2::INIT;
898        instance.get(GpioParams::new)
899    }
900}
901
902impl ::protobuf::Clear for GpioParams {
903    fn clear(&mut self) {
904        self.pin = 0;
905        self.mode = GpioParams_EnumMode::INPUT;
906        self.value = 0;
907        self.values = 0;
908        self.unknown_fields.clear();
909    }
910}
911
912impl ::std::fmt::Debug for GpioParams {
913    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
914        ::protobuf::text_format::fmt(self, f)
915    }
916}
917
918impl ::protobuf::reflect::ProtobufValue for GpioParams {
919    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
920        ::protobuf::reflect::ReflectValueRef::Message(self)
921    }
922}
923
924#[derive(Clone,PartialEq,Eq,Debug,Hash)]
925pub enum GpioParams_EnumMode {
926    INPUT = 0,
927    OUTPUT = 1,
928}
929
930impl ::protobuf::ProtobufEnum for GpioParams_EnumMode {
931    fn value(&self) -> i32 {
932        *self as i32
933    }
934
935    fn from_i32(value: i32) -> ::std::option::Option<GpioParams_EnumMode> {
936        match value {
937            0 => ::std::option::Option::Some(GpioParams_EnumMode::INPUT),
938            1 => ::std::option::Option::Some(GpioParams_EnumMode::OUTPUT),
939            _ => ::std::option::Option::None
940        }
941    }
942
943    fn values() -> &'static [Self] {
944        static values: &'static [GpioParams_EnumMode] = &[
945            GpioParams_EnumMode::INPUT,
946            GpioParams_EnumMode::OUTPUT,
947        ];
948        values
949    }
950
951    fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
952        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT;
953        descriptor.get(|| {
954            ::protobuf::reflect::EnumDescriptor::new_pb_name::<GpioParams_EnumMode>("GpioParams.EnumMode", file_descriptor_proto())
955        })
956    }
957}
958
959impl ::std::marker::Copy for GpioParams_EnumMode {
960}
961
962impl ::std::default::Default for GpioParams_EnumMode {
963    fn default() -> Self {
964        GpioParams_EnumMode::INPUT
965    }
966}
967
968impl ::protobuf::reflect::ProtobufValue for GpioParams_EnumMode {
969    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
970        ::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self))
971    }
972}
973
974#[derive(PartialEq,Clone,Default)]
975pub struct MicArrayParams {
976    // message fields
977    pub gain: i32,
978    pub azimutal_angle: f32,
979    pub polar_angle: f32,
980    pub radial_distance_mm: f32,
981    pub sound_speed_mmseg: f32,
982    pub sampling_frequency_hz: u32,
983    // special fields
984    pub unknown_fields: ::protobuf::UnknownFields,
985    pub cached_size: ::protobuf::CachedSize,
986}
987
988impl<'a> ::std::default::Default for &'a MicArrayParams {
989    fn default() -> &'a MicArrayParams {
990        <MicArrayParams as ::protobuf::Message>::default_instance()
991    }
992}
993
994impl MicArrayParams {
995    pub fn new() -> MicArrayParams {
996        ::std::default::Default::default()
997    }
998
999    // int32 gain = 1;
1000
1001
1002    pub fn get_gain(&self) -> i32 {
1003        self.gain
1004    }
1005    pub fn clear_gain(&mut self) {
1006        self.gain = 0;
1007    }
1008
1009    // Param is passed by value, moved
1010    pub fn set_gain(&mut self, v: i32) {
1011        self.gain = v;
1012    }
1013
1014    // float azimutal_angle = 2;
1015
1016
1017    pub fn get_azimutal_angle(&self) -> f32 {
1018        self.azimutal_angle
1019    }
1020    pub fn clear_azimutal_angle(&mut self) {
1021        self.azimutal_angle = 0.;
1022    }
1023
1024    // Param is passed by value, moved
1025    pub fn set_azimutal_angle(&mut self, v: f32) {
1026        self.azimutal_angle = v;
1027    }
1028
1029    // float polar_angle = 3;
1030
1031
1032    pub fn get_polar_angle(&self) -> f32 {
1033        self.polar_angle
1034    }
1035    pub fn clear_polar_angle(&mut self) {
1036        self.polar_angle = 0.;
1037    }
1038
1039    // Param is passed by value, moved
1040    pub fn set_polar_angle(&mut self, v: f32) {
1041        self.polar_angle = v;
1042    }
1043
1044    // float radial_distance_mm = 4;
1045
1046
1047    pub fn get_radial_distance_mm(&self) -> f32 {
1048        self.radial_distance_mm
1049    }
1050    pub fn clear_radial_distance_mm(&mut self) {
1051        self.radial_distance_mm = 0.;
1052    }
1053
1054    // Param is passed by value, moved
1055    pub fn set_radial_distance_mm(&mut self, v: f32) {
1056        self.radial_distance_mm = v;
1057    }
1058
1059    // float sound_speed_mmseg = 5;
1060
1061
1062    pub fn get_sound_speed_mmseg(&self) -> f32 {
1063        self.sound_speed_mmseg
1064    }
1065    pub fn clear_sound_speed_mmseg(&mut self) {
1066        self.sound_speed_mmseg = 0.;
1067    }
1068
1069    // Param is passed by value, moved
1070    pub fn set_sound_speed_mmseg(&mut self, v: f32) {
1071        self.sound_speed_mmseg = v;
1072    }
1073
1074    // uint32 sampling_frequency_hz = 6;
1075
1076
1077    pub fn get_sampling_frequency_hz(&self) -> u32 {
1078        self.sampling_frequency_hz
1079    }
1080    pub fn clear_sampling_frequency_hz(&mut self) {
1081        self.sampling_frequency_hz = 0;
1082    }
1083
1084    // Param is passed by value, moved
1085    pub fn set_sampling_frequency_hz(&mut self, v: u32) {
1086        self.sampling_frequency_hz = v;
1087    }
1088}
1089
1090impl ::protobuf::Message for MicArrayParams {
1091    fn is_initialized(&self) -> bool {
1092        true
1093    }
1094
1095    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1096        while !is.eof()? {
1097            let (field_number, wire_type) = is.read_tag_unpack()?;
1098            match field_number {
1099                1 => {
1100                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
1101                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
1102                    }
1103                    let tmp = is.read_int32()?;
1104                    self.gain = tmp;
1105                },
1106                2 => {
1107                    if wire_type != ::protobuf::wire_format::WireTypeFixed32 {
1108                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
1109                    }
1110                    let tmp = is.read_float()?;
1111                    self.azimutal_angle = tmp;
1112                },
1113                3 => {
1114                    if wire_type != ::protobuf::wire_format::WireTypeFixed32 {
1115                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
1116                    }
1117                    let tmp = is.read_float()?;
1118                    self.polar_angle = tmp;
1119                },
1120                4 => {
1121                    if wire_type != ::protobuf::wire_format::WireTypeFixed32 {
1122                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
1123                    }
1124                    let tmp = is.read_float()?;
1125                    self.radial_distance_mm = tmp;
1126                },
1127                5 => {
1128                    if wire_type != ::protobuf::wire_format::WireTypeFixed32 {
1129                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
1130                    }
1131                    let tmp = is.read_float()?;
1132                    self.sound_speed_mmseg = tmp;
1133                },
1134                6 => {
1135                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
1136                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
1137                    }
1138                    let tmp = is.read_uint32()?;
1139                    self.sampling_frequency_hz = tmp;
1140                },
1141                _ => {
1142                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1143                },
1144            };
1145        }
1146        ::std::result::Result::Ok(())
1147    }
1148
1149    // Compute sizes of nested messages
1150    #[allow(unused_variables)]
1151    fn compute_size(&self) -> u32 {
1152        let mut my_size = 0;
1153        if self.gain != 0 {
1154            my_size += ::protobuf::rt::value_size(1, self.gain, ::protobuf::wire_format::WireTypeVarint);
1155        }
1156        if self.azimutal_angle != 0. {
1157            my_size += 5;
1158        }
1159        if self.polar_angle != 0. {
1160            my_size += 5;
1161        }
1162        if self.radial_distance_mm != 0. {
1163            my_size += 5;
1164        }
1165        if self.sound_speed_mmseg != 0. {
1166            my_size += 5;
1167        }
1168        if self.sampling_frequency_hz != 0 {
1169            my_size += ::protobuf::rt::value_size(6, self.sampling_frequency_hz, ::protobuf::wire_format::WireTypeVarint);
1170        }
1171        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1172        self.cached_size.set(my_size);
1173        my_size
1174    }
1175
1176    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1177        if self.gain != 0 {
1178            os.write_int32(1, self.gain)?;
1179        }
1180        if self.azimutal_angle != 0. {
1181            os.write_float(2, self.azimutal_angle)?;
1182        }
1183        if self.polar_angle != 0. {
1184            os.write_float(3, self.polar_angle)?;
1185        }
1186        if self.radial_distance_mm != 0. {
1187            os.write_float(4, self.radial_distance_mm)?;
1188        }
1189        if self.sound_speed_mmseg != 0. {
1190            os.write_float(5, self.sound_speed_mmseg)?;
1191        }
1192        if self.sampling_frequency_hz != 0 {
1193            os.write_uint32(6, self.sampling_frequency_hz)?;
1194        }
1195        os.write_unknown_fields(self.get_unknown_fields())?;
1196        ::std::result::Result::Ok(())
1197    }
1198
1199    fn get_cached_size(&self) -> u32 {
1200        self.cached_size.get()
1201    }
1202
1203    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1204        &self.unknown_fields
1205    }
1206
1207    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1208        &mut self.unknown_fields
1209    }
1210
1211    fn as_any(&self) -> &dyn (::std::any::Any) {
1212        self as &dyn (::std::any::Any)
1213    }
1214    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1215        self as &mut dyn (::std::any::Any)
1216    }
1217    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1218        self
1219    }
1220
1221    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1222        Self::descriptor_static()
1223    }
1224
1225    fn new() -> MicArrayParams {
1226        MicArrayParams::new()
1227    }
1228
1229    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1230        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
1231        descriptor.get(|| {
1232            let mut fields = ::std::vec::Vec::new();
1233            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt32>(
1234                "gain",
1235                |m: &MicArrayParams| { &m.gain },
1236                |m: &mut MicArrayParams| { &mut m.gain },
1237            ));
1238            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeFloat>(
1239                "azimutal_angle",
1240                |m: &MicArrayParams| { &m.azimutal_angle },
1241                |m: &mut MicArrayParams| { &mut m.azimutal_angle },
1242            ));
1243            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeFloat>(
1244                "polar_angle",
1245                |m: &MicArrayParams| { &m.polar_angle },
1246                |m: &mut MicArrayParams| { &mut m.polar_angle },
1247            ));
1248            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeFloat>(
1249                "radial_distance_mm",
1250                |m: &MicArrayParams| { &m.radial_distance_mm },
1251                |m: &mut MicArrayParams| { &mut m.radial_distance_mm },
1252            ));
1253            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeFloat>(
1254                "sound_speed_mmseg",
1255                |m: &MicArrayParams| { &m.sound_speed_mmseg },
1256                |m: &mut MicArrayParams| { &mut m.sound_speed_mmseg },
1257            ));
1258            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
1259                "sampling_frequency_hz",
1260                |m: &MicArrayParams| { &m.sampling_frequency_hz },
1261                |m: &mut MicArrayParams| { &mut m.sampling_frequency_hz },
1262            ));
1263            ::protobuf::reflect::MessageDescriptor::new_pb_name::<MicArrayParams>(
1264                "MicArrayParams",
1265                fields,
1266                file_descriptor_proto()
1267            )
1268        })
1269    }
1270
1271    fn default_instance() -> &'static MicArrayParams {
1272        static instance: ::protobuf::rt::LazyV2<MicArrayParams> = ::protobuf::rt::LazyV2::INIT;
1273        instance.get(MicArrayParams::new)
1274    }
1275}
1276
1277impl ::protobuf::Clear for MicArrayParams {
1278    fn clear(&mut self) {
1279        self.gain = 0;
1280        self.azimutal_angle = 0.;
1281        self.polar_angle = 0.;
1282        self.radial_distance_mm = 0.;
1283        self.sound_speed_mmseg = 0.;
1284        self.sampling_frequency_hz = 0;
1285        self.unknown_fields.clear();
1286    }
1287}
1288
1289impl ::std::fmt::Debug for MicArrayParams {
1290    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1291        ::protobuf::text_format::fmt(self, f)
1292    }
1293}
1294
1295impl ::protobuf::reflect::ProtobufValue for MicArrayParams {
1296    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1297        ::protobuf::reflect::ReflectValueRef::Message(self)
1298    }
1299}
1300
1301#[derive(PartialEq,Clone,Default)]
1302pub struct WakeWordParams {
1303    // message fields
1304    pub wake_word: ::std::string::String,
1305    pub channel: WakeWordParams_MicChannel,
1306    pub lm_path: ::std::string::String,
1307    pub dic_path: ::std::string::String,
1308    pub enable_verbose: bool,
1309    pub stop_recognition: bool,
1310    // special fields
1311    pub unknown_fields: ::protobuf::UnknownFields,
1312    pub cached_size: ::protobuf::CachedSize,
1313}
1314
1315impl<'a> ::std::default::Default for &'a WakeWordParams {
1316    fn default() -> &'a WakeWordParams {
1317        <WakeWordParams as ::protobuf::Message>::default_instance()
1318    }
1319}
1320
1321impl WakeWordParams {
1322    pub fn new() -> WakeWordParams {
1323        ::std::default::Default::default()
1324    }
1325
1326    // string wake_word = 1;
1327
1328
1329    pub fn get_wake_word(&self) -> &str {
1330        &self.wake_word
1331    }
1332    pub fn clear_wake_word(&mut self) {
1333        self.wake_word.clear();
1334    }
1335
1336    // Param is passed by value, moved
1337    pub fn set_wake_word(&mut self, v: ::std::string::String) {
1338        self.wake_word = v;
1339    }
1340
1341    // Mutable pointer to the field.
1342    // If field is not initialized, it is initialized with default value first.
1343    pub fn mut_wake_word(&mut self) -> &mut ::std::string::String {
1344        &mut self.wake_word
1345    }
1346
1347    // Take field
1348    pub fn take_wake_word(&mut self) -> ::std::string::String {
1349        ::std::mem::replace(&mut self.wake_word, ::std::string::String::new())
1350    }
1351
1352    // .matrix_io.malos.v1.io.WakeWordParams.MicChannel channel = 2;
1353
1354
1355    pub fn get_channel(&self) -> WakeWordParams_MicChannel {
1356        self.channel
1357    }
1358    pub fn clear_channel(&mut self) {
1359        self.channel = WakeWordParams_MicChannel::channel0;
1360    }
1361
1362    // Param is passed by value, moved
1363    pub fn set_channel(&mut self, v: WakeWordParams_MicChannel) {
1364        self.channel = v;
1365    }
1366
1367    // string lm_path = 3;
1368
1369
1370    pub fn get_lm_path(&self) -> &str {
1371        &self.lm_path
1372    }
1373    pub fn clear_lm_path(&mut self) {
1374        self.lm_path.clear();
1375    }
1376
1377    // Param is passed by value, moved
1378    pub fn set_lm_path(&mut self, v: ::std::string::String) {
1379        self.lm_path = v;
1380    }
1381
1382    // Mutable pointer to the field.
1383    // If field is not initialized, it is initialized with default value first.
1384    pub fn mut_lm_path(&mut self) -> &mut ::std::string::String {
1385        &mut self.lm_path
1386    }
1387
1388    // Take field
1389    pub fn take_lm_path(&mut self) -> ::std::string::String {
1390        ::std::mem::replace(&mut self.lm_path, ::std::string::String::new())
1391    }
1392
1393    // string dic_path = 4;
1394
1395
1396    pub fn get_dic_path(&self) -> &str {
1397        &self.dic_path
1398    }
1399    pub fn clear_dic_path(&mut self) {
1400        self.dic_path.clear();
1401    }
1402
1403    // Param is passed by value, moved
1404    pub fn set_dic_path(&mut self, v: ::std::string::String) {
1405        self.dic_path = v;
1406    }
1407
1408    // Mutable pointer to the field.
1409    // If field is not initialized, it is initialized with default value first.
1410    pub fn mut_dic_path(&mut self) -> &mut ::std::string::String {
1411        &mut self.dic_path
1412    }
1413
1414    // Take field
1415    pub fn take_dic_path(&mut self) -> ::std::string::String {
1416        ::std::mem::replace(&mut self.dic_path, ::std::string::String::new())
1417    }
1418
1419    // bool enable_verbose = 5;
1420
1421
1422    pub fn get_enable_verbose(&self) -> bool {
1423        self.enable_verbose
1424    }
1425    pub fn clear_enable_verbose(&mut self) {
1426        self.enable_verbose = false;
1427    }
1428
1429    // Param is passed by value, moved
1430    pub fn set_enable_verbose(&mut self, v: bool) {
1431        self.enable_verbose = v;
1432    }
1433
1434    // bool stop_recognition = 6;
1435
1436
1437    pub fn get_stop_recognition(&self) -> bool {
1438        self.stop_recognition
1439    }
1440    pub fn clear_stop_recognition(&mut self) {
1441        self.stop_recognition = false;
1442    }
1443
1444    // Param is passed by value, moved
1445    pub fn set_stop_recognition(&mut self, v: bool) {
1446        self.stop_recognition = v;
1447    }
1448}
1449
1450impl ::protobuf::Message for WakeWordParams {
1451    fn is_initialized(&self) -> bool {
1452        true
1453    }
1454
1455    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1456        while !is.eof()? {
1457            let (field_number, wire_type) = is.read_tag_unpack()?;
1458            match field_number {
1459                1 => {
1460                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.wake_word)?;
1461                },
1462                2 => {
1463                    ::protobuf::rt::read_proto3_enum_with_unknown_fields_into(wire_type, is, &mut self.channel, 2, &mut self.unknown_fields)?
1464                },
1465                3 => {
1466                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.lm_path)?;
1467                },
1468                4 => {
1469                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.dic_path)?;
1470                },
1471                5 => {
1472                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
1473                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
1474                    }
1475                    let tmp = is.read_bool()?;
1476                    self.enable_verbose = tmp;
1477                },
1478                6 => {
1479                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
1480                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
1481                    }
1482                    let tmp = is.read_bool()?;
1483                    self.stop_recognition = tmp;
1484                },
1485                _ => {
1486                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1487                },
1488            };
1489        }
1490        ::std::result::Result::Ok(())
1491    }
1492
1493    // Compute sizes of nested messages
1494    #[allow(unused_variables)]
1495    fn compute_size(&self) -> u32 {
1496        let mut my_size = 0;
1497        if !self.wake_word.is_empty() {
1498            my_size += ::protobuf::rt::string_size(1, &self.wake_word);
1499        }
1500        if self.channel != WakeWordParams_MicChannel::channel0 {
1501            my_size += ::protobuf::rt::enum_size(2, self.channel);
1502        }
1503        if !self.lm_path.is_empty() {
1504            my_size += ::protobuf::rt::string_size(3, &self.lm_path);
1505        }
1506        if !self.dic_path.is_empty() {
1507            my_size += ::protobuf::rt::string_size(4, &self.dic_path);
1508        }
1509        if self.enable_verbose != false {
1510            my_size += 2;
1511        }
1512        if self.stop_recognition != false {
1513            my_size += 2;
1514        }
1515        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1516        self.cached_size.set(my_size);
1517        my_size
1518    }
1519
1520    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1521        if !self.wake_word.is_empty() {
1522            os.write_string(1, &self.wake_word)?;
1523        }
1524        if self.channel != WakeWordParams_MicChannel::channel0 {
1525            os.write_enum(2, ::protobuf::ProtobufEnum::value(&self.channel))?;
1526        }
1527        if !self.lm_path.is_empty() {
1528            os.write_string(3, &self.lm_path)?;
1529        }
1530        if !self.dic_path.is_empty() {
1531            os.write_string(4, &self.dic_path)?;
1532        }
1533        if self.enable_verbose != false {
1534            os.write_bool(5, self.enable_verbose)?;
1535        }
1536        if self.stop_recognition != false {
1537            os.write_bool(6, self.stop_recognition)?;
1538        }
1539        os.write_unknown_fields(self.get_unknown_fields())?;
1540        ::std::result::Result::Ok(())
1541    }
1542
1543    fn get_cached_size(&self) -> u32 {
1544        self.cached_size.get()
1545    }
1546
1547    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1548        &self.unknown_fields
1549    }
1550
1551    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1552        &mut self.unknown_fields
1553    }
1554
1555    fn as_any(&self) -> &dyn (::std::any::Any) {
1556        self as &dyn (::std::any::Any)
1557    }
1558    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1559        self as &mut dyn (::std::any::Any)
1560    }
1561    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1562        self
1563    }
1564
1565    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1566        Self::descriptor_static()
1567    }
1568
1569    fn new() -> WakeWordParams {
1570        WakeWordParams::new()
1571    }
1572
1573    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1574        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
1575        descriptor.get(|| {
1576            let mut fields = ::std::vec::Vec::new();
1577            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
1578                "wake_word",
1579                |m: &WakeWordParams| { &m.wake_word },
1580                |m: &mut WakeWordParams| { &mut m.wake_word },
1581            ));
1582            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum<WakeWordParams_MicChannel>>(
1583                "channel",
1584                |m: &WakeWordParams| { &m.channel },
1585                |m: &mut WakeWordParams| { &mut m.channel },
1586            ));
1587            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
1588                "lm_path",
1589                |m: &WakeWordParams| { &m.lm_path },
1590                |m: &mut WakeWordParams| { &mut m.lm_path },
1591            ));
1592            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
1593                "dic_path",
1594                |m: &WakeWordParams| { &m.dic_path },
1595                |m: &mut WakeWordParams| { &mut m.dic_path },
1596            ));
1597            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
1598                "enable_verbose",
1599                |m: &WakeWordParams| { &m.enable_verbose },
1600                |m: &mut WakeWordParams| { &mut m.enable_verbose },
1601            ));
1602            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
1603                "stop_recognition",
1604                |m: &WakeWordParams| { &m.stop_recognition },
1605                |m: &mut WakeWordParams| { &mut m.stop_recognition },
1606            ));
1607            ::protobuf::reflect::MessageDescriptor::new_pb_name::<WakeWordParams>(
1608                "WakeWordParams",
1609                fields,
1610                file_descriptor_proto()
1611            )
1612        })
1613    }
1614
1615    fn default_instance() -> &'static WakeWordParams {
1616        static instance: ::protobuf::rt::LazyV2<WakeWordParams> = ::protobuf::rt::LazyV2::INIT;
1617        instance.get(WakeWordParams::new)
1618    }
1619}
1620
1621impl ::protobuf::Clear for WakeWordParams {
1622    fn clear(&mut self) {
1623        self.wake_word.clear();
1624        self.channel = WakeWordParams_MicChannel::channel0;
1625        self.lm_path.clear();
1626        self.dic_path.clear();
1627        self.enable_verbose = false;
1628        self.stop_recognition = false;
1629        self.unknown_fields.clear();
1630    }
1631}
1632
1633impl ::std::fmt::Debug for WakeWordParams {
1634    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1635        ::protobuf::text_format::fmt(self, f)
1636    }
1637}
1638
1639impl ::protobuf::reflect::ProtobufValue for WakeWordParams {
1640    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1641        ::protobuf::reflect::ReflectValueRef::Message(self)
1642    }
1643}
1644
1645#[derive(Clone,PartialEq,Eq,Debug,Hash)]
1646pub enum WakeWordParams_MicChannel {
1647    channel0 = 0,
1648    channel1 = 1,
1649    channel2 = 2,
1650    channel3 = 3,
1651    channel4 = 4,
1652    channel5 = 5,
1653    channel6 = 6,
1654    channel7 = 7,
1655    channel8 = 8,
1656}
1657
1658impl ::protobuf::ProtobufEnum for WakeWordParams_MicChannel {
1659    fn value(&self) -> i32 {
1660        *self as i32
1661    }
1662
1663    fn from_i32(value: i32) -> ::std::option::Option<WakeWordParams_MicChannel> {
1664        match value {
1665            0 => ::std::option::Option::Some(WakeWordParams_MicChannel::channel0),
1666            1 => ::std::option::Option::Some(WakeWordParams_MicChannel::channel1),
1667            2 => ::std::option::Option::Some(WakeWordParams_MicChannel::channel2),
1668            3 => ::std::option::Option::Some(WakeWordParams_MicChannel::channel3),
1669            4 => ::std::option::Option::Some(WakeWordParams_MicChannel::channel4),
1670            5 => ::std::option::Option::Some(WakeWordParams_MicChannel::channel5),
1671            6 => ::std::option::Option::Some(WakeWordParams_MicChannel::channel6),
1672            7 => ::std::option::Option::Some(WakeWordParams_MicChannel::channel7),
1673            8 => ::std::option::Option::Some(WakeWordParams_MicChannel::channel8),
1674            _ => ::std::option::Option::None
1675        }
1676    }
1677
1678    fn values() -> &'static [Self] {
1679        static values: &'static [WakeWordParams_MicChannel] = &[
1680            WakeWordParams_MicChannel::channel0,
1681            WakeWordParams_MicChannel::channel1,
1682            WakeWordParams_MicChannel::channel2,
1683            WakeWordParams_MicChannel::channel3,
1684            WakeWordParams_MicChannel::channel4,
1685            WakeWordParams_MicChannel::channel5,
1686            WakeWordParams_MicChannel::channel6,
1687            WakeWordParams_MicChannel::channel7,
1688            WakeWordParams_MicChannel::channel8,
1689        ];
1690        values
1691    }
1692
1693    fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
1694        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT;
1695        descriptor.get(|| {
1696            ::protobuf::reflect::EnumDescriptor::new_pb_name::<WakeWordParams_MicChannel>("WakeWordParams.MicChannel", file_descriptor_proto())
1697        })
1698    }
1699}
1700
1701impl ::std::marker::Copy for WakeWordParams_MicChannel {
1702}
1703
1704impl ::std::default::Default for WakeWordParams_MicChannel {
1705    fn default() -> Self {
1706        WakeWordParams_MicChannel::channel0
1707    }
1708}
1709
1710impl ::protobuf::reflect::ProtobufValue for WakeWordParams_MicChannel {
1711    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1712        ::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self))
1713    }
1714}
1715
1716#[derive(PartialEq,Clone,Default)]
1717pub struct MatrixDeviceParams {
1718    // message fields
1719    pub device_type: EnumMatrixDeviceType,
1720    // special fields
1721    pub unknown_fields: ::protobuf::UnknownFields,
1722    pub cached_size: ::protobuf::CachedSize,
1723}
1724
1725impl<'a> ::std::default::Default for &'a MatrixDeviceParams {
1726    fn default() -> &'a MatrixDeviceParams {
1727        <MatrixDeviceParams as ::protobuf::Message>::default_instance()
1728    }
1729}
1730
1731impl MatrixDeviceParams {
1732    pub fn new() -> MatrixDeviceParams {
1733        ::std::default::Default::default()
1734    }
1735
1736    // .matrix_io.malos.v1.io.EnumMatrixDeviceType device_type = 1;
1737
1738
1739    pub fn get_device_type(&self) -> EnumMatrixDeviceType {
1740        self.device_type
1741    }
1742    pub fn clear_device_type(&mut self) {
1743        self.device_type = EnumMatrixDeviceType::UNDETECTED;
1744    }
1745
1746    // Param is passed by value, moved
1747    pub fn set_device_type(&mut self, v: EnumMatrixDeviceType) {
1748        self.device_type = v;
1749    }
1750}
1751
1752impl ::protobuf::Message for MatrixDeviceParams {
1753    fn is_initialized(&self) -> bool {
1754        true
1755    }
1756
1757    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1758        while !is.eof()? {
1759            let (field_number, wire_type) = is.read_tag_unpack()?;
1760            match field_number {
1761                1 => {
1762                    ::protobuf::rt::read_proto3_enum_with_unknown_fields_into(wire_type, is, &mut self.device_type, 1, &mut self.unknown_fields)?
1763                },
1764                _ => {
1765                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1766                },
1767            };
1768        }
1769        ::std::result::Result::Ok(())
1770    }
1771
1772    // Compute sizes of nested messages
1773    #[allow(unused_variables)]
1774    fn compute_size(&self) -> u32 {
1775        let mut my_size = 0;
1776        if self.device_type != EnumMatrixDeviceType::UNDETECTED {
1777            my_size += ::protobuf::rt::enum_size(1, self.device_type);
1778        }
1779        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1780        self.cached_size.set(my_size);
1781        my_size
1782    }
1783
1784    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1785        if self.device_type != EnumMatrixDeviceType::UNDETECTED {
1786            os.write_enum(1, ::protobuf::ProtobufEnum::value(&self.device_type))?;
1787        }
1788        os.write_unknown_fields(self.get_unknown_fields())?;
1789        ::std::result::Result::Ok(())
1790    }
1791
1792    fn get_cached_size(&self) -> u32 {
1793        self.cached_size.get()
1794    }
1795
1796    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1797        &self.unknown_fields
1798    }
1799
1800    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1801        &mut self.unknown_fields
1802    }
1803
1804    fn as_any(&self) -> &dyn (::std::any::Any) {
1805        self as &dyn (::std::any::Any)
1806    }
1807    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1808        self as &mut dyn (::std::any::Any)
1809    }
1810    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1811        self
1812    }
1813
1814    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1815        Self::descriptor_static()
1816    }
1817
1818    fn new() -> MatrixDeviceParams {
1819        MatrixDeviceParams::new()
1820    }
1821
1822    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1823        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
1824        descriptor.get(|| {
1825            let mut fields = ::std::vec::Vec::new();
1826            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum<EnumMatrixDeviceType>>(
1827                "device_type",
1828                |m: &MatrixDeviceParams| { &m.device_type },
1829                |m: &mut MatrixDeviceParams| { &mut m.device_type },
1830            ));
1831            ::protobuf::reflect::MessageDescriptor::new_pb_name::<MatrixDeviceParams>(
1832                "MatrixDeviceParams",
1833                fields,
1834                file_descriptor_proto()
1835            )
1836        })
1837    }
1838
1839    fn default_instance() -> &'static MatrixDeviceParams {
1840        static instance: ::protobuf::rt::LazyV2<MatrixDeviceParams> = ::protobuf::rt::LazyV2::INIT;
1841        instance.get(MatrixDeviceParams::new)
1842    }
1843}
1844
1845impl ::protobuf::Clear for MatrixDeviceParams {
1846    fn clear(&mut self) {
1847        self.device_type = EnumMatrixDeviceType::UNDETECTED;
1848        self.unknown_fields.clear();
1849    }
1850}
1851
1852impl ::std::fmt::Debug for MatrixDeviceParams {
1853    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1854        ::protobuf::text_format::fmt(self, f)
1855    }
1856}
1857
1858impl ::protobuf::reflect::ProtobufValue for MatrixDeviceParams {
1859    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1860        ::protobuf::reflect::ReflectValueRef::Message(self)
1861    }
1862}
1863
1864#[derive(Clone,PartialEq,Eq,Debug,Hash)]
1865pub enum EnumMatrixDeviceType {
1866    UNDETECTED = 0,
1867    CREATOR = 1,
1868    VOICE = 2,
1869}
1870
1871impl ::protobuf::ProtobufEnum for EnumMatrixDeviceType {
1872    fn value(&self) -> i32 {
1873        *self as i32
1874    }
1875
1876    fn from_i32(value: i32) -> ::std::option::Option<EnumMatrixDeviceType> {
1877        match value {
1878            0 => ::std::option::Option::Some(EnumMatrixDeviceType::UNDETECTED),
1879            1 => ::std::option::Option::Some(EnumMatrixDeviceType::CREATOR),
1880            2 => ::std::option::Option::Some(EnumMatrixDeviceType::VOICE),
1881            _ => ::std::option::Option::None
1882        }
1883    }
1884
1885    fn values() -> &'static [Self] {
1886        static values: &'static [EnumMatrixDeviceType] = &[
1887            EnumMatrixDeviceType::UNDETECTED,
1888            EnumMatrixDeviceType::CREATOR,
1889            EnumMatrixDeviceType::VOICE,
1890        ];
1891        values
1892    }
1893
1894    fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
1895        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT;
1896        descriptor.get(|| {
1897            ::protobuf::reflect::EnumDescriptor::new_pb_name::<EnumMatrixDeviceType>("EnumMatrixDeviceType", file_descriptor_proto())
1898        })
1899    }
1900}
1901
1902impl ::std::marker::Copy for EnumMatrixDeviceType {
1903}
1904
1905impl ::std::default::Default for EnumMatrixDeviceType {
1906    fn default() -> Self {
1907        EnumMatrixDeviceType::UNDETECTED
1908    }
1909}
1910
1911impl ::protobuf::reflect::ProtobufValue for EnumMatrixDeviceType {
1912    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1913        ::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self))
1914    }
1915}
1916
1917static file_descriptor_proto_data: &'static [u8] = b"\
1918    \n\x1bmatrix_io/malos/v1/io.proto\x12\x15matrix_io.malos.v1.io\"f\n\x08L\
1919    edValue\x12\x12\n\x03red\x18\x01\x20\x01(\rR\x03redB\0\x12\x16\n\x05gree\
1920    n\x18\x02\x20\x01(\rR\x05greenB\0\x12\x14\n\x04blue\x18\x03\x20\x01(\rR\
1921    \x04blueB\0\x12\x16\n\x05white\x18\x04\x20\x01(\rR\x05whiteB\0:\0\"q\n\r\
1922    EverloopImage\x123\n\x03led\x18\x01\x20\x03(\x0b2\x1f.matrix_io.malos.v1\
1923    .io.LedValueR\x03ledB\0\x12)\n\x0feverloop_length\x18\x02\x20\x01(\x05R\
1924    \x0eeverloopLengthB\0:\0\";\n\x0bServoParams\x12\x12\n\x03pin\x18\x01\
1925    \x20\x01(\rR\x03pinB\0\x12\x16\n\x05angle\x18\x02\x20\x01(\rR\x05angleB\
1926    \0:\0\"\xbb\x01\n\nGpioParams\x12\x12\n\x03pin\x18\x01\x20\x01(\rR\x03pi\
1927    nB\0\x12@\n\x04mode\x18\x02\x20\x01(\x0e2*.matrix_io.malos.v1.io.GpioPar\
1928    ams.EnumModeR\x04modeB\0\x12\x16\n\x05value\x18\x03\x20\x01(\rR\x05value\
1929    B\0\x12\x18\n\x06values\x18\x04\x20\x01(\rR\x06valuesB\0\"#\n\x08EnumMod\
1930    e\x12\t\n\x05INPUT\x10\0\x12\n\n\x06OUTPUT\x10\x01\x1a\0:\0\"\x88\x02\n\
1931    \x0eMicArrayParams\x12\x14\n\x04gain\x18\x01\x20\x01(\x05R\x04gainB\0\
1932    \x12'\n\x0eazimutal_angle\x18\x02\x20\x01(\x02R\razimutalAngleB\0\x12!\n\
1933    \x0bpolar_angle\x18\x03\x20\x01(\x02R\npolarAngleB\0\x12.\n\x12radial_di\
1934    stance_mm\x18\x04\x20\x01(\x02R\x10radialDistanceMmB\0\x12,\n\x11sound_s\
1935    peed_mmseg\x18\x05\x20\x01(\x02R\x0fsoundSpeedMmsegB\0\x124\n\x15samplin\
1936    g_frequency_hz\x18\x06\x20\x01(\rR\x13samplingFrequencyHzB\0:\0\"\x9c\
1937    \x03\n\x0eWakeWordParams\x12\x1d\n\twake_word\x18\x01\x20\x01(\tR\x08wak\
1938    eWordB\0\x12L\n\x07channel\x18\x02\x20\x01(\x0e20.matrix_io.malos.v1.io.\
1939    WakeWordParams.MicChannelR\x07channelB\0\x12\x19\n\x07lm_path\x18\x03\
1940    \x20\x01(\tR\x06lmPathB\0\x12\x1b\n\x08dic_path\x18\x04\x20\x01(\tR\x07d\
1941    icPathB\0\x12'\n\x0eenable_verbose\x18\x05\x20\x01(\x08R\renableVerboseB\
1942    \0\x12+\n\x10stop_recognition\x18\x06\x20\x01(\x08R\x0fstopRecognitionB\
1943    \0\"\x8c\x01\n\nMicChannel\x12\x0c\n\x08channel0\x10\0\x12\x0c\n\x08chan\
1944    nel1\x10\x01\x12\x0c\n\x08channel2\x10\x02\x12\x0c\n\x08channel3\x10\x03\
1945    \x12\x0c\n\x08channel4\x10\x04\x12\x0c\n\x08channel5\x10\x05\x12\x0c\n\
1946    \x08channel6\x10\x06\x12\x0c\n\x08channel7\x10\x07\x12\x0c\n\x08channel8\
1947    \x10\x08\x1a\0:\0\"f\n\x12MatrixDeviceParams\x12N\n\x0bdevice_type\x18\
1948    \x01\x20\x01(\x0e2+.matrix_io.malos.v1.io.EnumMatrixDeviceTypeR\ndeviceT\
1949    ypeB\0:\0*@\n\x14EnumMatrixDeviceType\x12\x0e\n\nUNDETECTED\x10\0\x12\
1950    \x0b\n\x07CREATOR\x10\x01\x12\t\n\x05VOICE\x10\x02\x1a\0B\0b\x06proto3\
1951";
1952
1953static file_descriptor_proto_lazy: ::protobuf::rt::LazyV2<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::rt::LazyV2::INIT;
1954
1955fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto {
1956    ::protobuf::Message::parse_from_bytes(file_descriptor_proto_data).unwrap()
1957}
1958
1959pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto {
1960    file_descriptor_proto_lazy.get(|| {
1961        parse_descriptor_proto()
1962    })
1963}