gz_msgs/gz_msgs10/
particle_emitter.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 `gz/msgs/particle_emitter.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::GzMessage)]
28// @@protoc_insertion_point(message:gz.msgs.ParticleEmitter)
29#[derive(PartialEq,Clone,Default,Debug)]
30pub struct ParticleEmitter {
31    // message fields
32    // @@protoc_insertion_point(field:gz.msgs.ParticleEmitter.header)
33    pub header: ::protobuf::MessageField<super::header::Header>,
34    // @@protoc_insertion_point(field:gz.msgs.ParticleEmitter.name)
35    pub name: ::std::string::String,
36    // @@protoc_insertion_point(field:gz.msgs.ParticleEmitter.id)
37    pub id: u32,
38    // @@protoc_insertion_point(field:gz.msgs.ParticleEmitter.type)
39    pub type_: ::protobuf::EnumOrUnknown<particle_emitter::EmitterType>,
40    // @@protoc_insertion_point(field:gz.msgs.ParticleEmitter.pose)
41    pub pose: ::protobuf::MessageField<super::pose::Pose>,
42    // @@protoc_insertion_point(field:gz.msgs.ParticleEmitter.size)
43    pub size: ::protobuf::MessageField<super::vector3d::Vector3d>,
44    // @@protoc_insertion_point(field:gz.msgs.ParticleEmitter.rate)
45    pub rate: ::protobuf::MessageField<super::float::Float>,
46    // @@protoc_insertion_point(field:gz.msgs.ParticleEmitter.duration)
47    pub duration: ::protobuf::MessageField<super::float::Float>,
48    // @@protoc_insertion_point(field:gz.msgs.ParticleEmitter.emitting)
49    pub emitting: ::protobuf::MessageField<super::boolean::Boolean>,
50    // @@protoc_insertion_point(field:gz.msgs.ParticleEmitter.particle_size)
51    pub particle_size: ::protobuf::MessageField<super::vector3d::Vector3d>,
52    // @@protoc_insertion_point(field:gz.msgs.ParticleEmitter.lifetime)
53    pub lifetime: ::protobuf::MessageField<super::float::Float>,
54    // @@protoc_insertion_point(field:gz.msgs.ParticleEmitter.material)
55    pub material: ::protobuf::MessageField<super::material::Material>,
56    // @@protoc_insertion_point(field:gz.msgs.ParticleEmitter.min_velocity)
57    pub min_velocity: ::protobuf::MessageField<super::float::Float>,
58    // @@protoc_insertion_point(field:gz.msgs.ParticleEmitter.max_velocity)
59    pub max_velocity: ::protobuf::MessageField<super::float::Float>,
60    // @@protoc_insertion_point(field:gz.msgs.ParticleEmitter.color_start)
61    pub color_start: ::protobuf::MessageField<super::color::Color>,
62    // @@protoc_insertion_point(field:gz.msgs.ParticleEmitter.color_end)
63    pub color_end: ::protobuf::MessageField<super::color::Color>,
64    // @@protoc_insertion_point(field:gz.msgs.ParticleEmitter.scale_rate)
65    pub scale_rate: ::protobuf::MessageField<super::float::Float>,
66    // @@protoc_insertion_point(field:gz.msgs.ParticleEmitter.color_range_image)
67    pub color_range_image: ::protobuf::MessageField<super::stringmsg::StringMsg>,
68    // @@protoc_insertion_point(field:gz.msgs.ParticleEmitter.topic)
69    pub topic: ::protobuf::MessageField<super::stringmsg::StringMsg>,
70    // @@protoc_insertion_point(field:gz.msgs.ParticleEmitter.particle_scatter_ratio)
71    pub particle_scatter_ratio: ::protobuf::MessageField<super::float::Float>,
72    // special fields
73    // @@protoc_insertion_point(special_field:gz.msgs.ParticleEmitter.special_fields)
74    pub special_fields: ::protobuf::SpecialFields,
75}
76
77impl<'a> ::std::default::Default for &'a ParticleEmitter {
78    fn default() -> &'a ParticleEmitter {
79        <ParticleEmitter as ::protobuf::Message>::default_instance()
80    }
81}
82
83impl ParticleEmitter {
84    pub fn new() -> ParticleEmitter {
85        ::std::default::Default::default()
86    }
87
88    fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
89        let mut fields = ::std::vec::Vec::with_capacity(20);
90        let mut oneofs = ::std::vec::Vec::with_capacity(0);
91        fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, super::header::Header>(
92            "header",
93            |m: &ParticleEmitter| { &m.header },
94            |m: &mut ParticleEmitter| { &mut m.header },
95        ));
96        fields.push(::protobuf::reflect::rt::v2::make_simpler_field_accessor::<_, _>(
97            "name",
98            |m: &ParticleEmitter| { &m.name },
99            |m: &mut ParticleEmitter| { &mut m.name },
100        ));
101        fields.push(::protobuf::reflect::rt::v2::make_simpler_field_accessor::<_, _>(
102            "id",
103            |m: &ParticleEmitter| { &m.id },
104            |m: &mut ParticleEmitter| { &mut m.id },
105        ));
106        fields.push(::protobuf::reflect::rt::v2::make_simpler_field_accessor::<_, _>(
107            "type",
108            |m: &ParticleEmitter| { &m.type_ },
109            |m: &mut ParticleEmitter| { &mut m.type_ },
110        ));
111        fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, super::pose::Pose>(
112            "pose",
113            |m: &ParticleEmitter| { &m.pose },
114            |m: &mut ParticleEmitter| { &mut m.pose },
115        ));
116        fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, super::vector3d::Vector3d>(
117            "size",
118            |m: &ParticleEmitter| { &m.size },
119            |m: &mut ParticleEmitter| { &mut m.size },
120        ));
121        fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, super::float::Float>(
122            "rate",
123            |m: &ParticleEmitter| { &m.rate },
124            |m: &mut ParticleEmitter| { &mut m.rate },
125        ));
126        fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, super::float::Float>(
127            "duration",
128            |m: &ParticleEmitter| { &m.duration },
129            |m: &mut ParticleEmitter| { &mut m.duration },
130        ));
131        fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, super::boolean::Boolean>(
132            "emitting",
133            |m: &ParticleEmitter| { &m.emitting },
134            |m: &mut ParticleEmitter| { &mut m.emitting },
135        ));
136        fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, super::vector3d::Vector3d>(
137            "particle_size",
138            |m: &ParticleEmitter| { &m.particle_size },
139            |m: &mut ParticleEmitter| { &mut m.particle_size },
140        ));
141        fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, super::float::Float>(
142            "lifetime",
143            |m: &ParticleEmitter| { &m.lifetime },
144            |m: &mut ParticleEmitter| { &mut m.lifetime },
145        ));
146        fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, super::material::Material>(
147            "material",
148            |m: &ParticleEmitter| { &m.material },
149            |m: &mut ParticleEmitter| { &mut m.material },
150        ));
151        fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, super::float::Float>(
152            "min_velocity",
153            |m: &ParticleEmitter| { &m.min_velocity },
154            |m: &mut ParticleEmitter| { &mut m.min_velocity },
155        ));
156        fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, super::float::Float>(
157            "max_velocity",
158            |m: &ParticleEmitter| { &m.max_velocity },
159            |m: &mut ParticleEmitter| { &mut m.max_velocity },
160        ));
161        fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, super::color::Color>(
162            "color_start",
163            |m: &ParticleEmitter| { &m.color_start },
164            |m: &mut ParticleEmitter| { &mut m.color_start },
165        ));
166        fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, super::color::Color>(
167            "color_end",
168            |m: &ParticleEmitter| { &m.color_end },
169            |m: &mut ParticleEmitter| { &mut m.color_end },
170        ));
171        fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, super::float::Float>(
172            "scale_rate",
173            |m: &ParticleEmitter| { &m.scale_rate },
174            |m: &mut ParticleEmitter| { &mut m.scale_rate },
175        ));
176        fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, super::stringmsg::StringMsg>(
177            "color_range_image",
178            |m: &ParticleEmitter| { &m.color_range_image },
179            |m: &mut ParticleEmitter| { &mut m.color_range_image },
180        ));
181        fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, super::stringmsg::StringMsg>(
182            "topic",
183            |m: &ParticleEmitter| { &m.topic },
184            |m: &mut ParticleEmitter| { &mut m.topic },
185        ));
186        fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, super::float::Float>(
187            "particle_scatter_ratio",
188            |m: &ParticleEmitter| { &m.particle_scatter_ratio },
189            |m: &mut ParticleEmitter| { &mut m.particle_scatter_ratio },
190        ));
191        ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<ParticleEmitter>(
192            "ParticleEmitter",
193            fields,
194            oneofs,
195        )
196    }
197}
198
199impl ::protobuf::Message for ParticleEmitter {
200    const NAME: &'static str = "ParticleEmitter";
201
202    fn is_initialized(&self) -> bool {
203        true
204    }
205
206    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
207        while let Some(tag) = is.read_raw_tag_or_eof()? {
208            match tag {
209                10 => {
210                    ::protobuf::rt::read_singular_message_into_field(is, &mut self.header)?;
211                },
212                18 => {
213                    self.name = is.read_string()?;
214                },
215                24 => {
216                    self.id = is.read_uint32()?;
217                },
218                32 => {
219                    self.type_ = is.read_enum_or_unknown()?;
220                },
221                42 => {
222                    ::protobuf::rt::read_singular_message_into_field(is, &mut self.pose)?;
223                },
224                50 => {
225                    ::protobuf::rt::read_singular_message_into_field(is, &mut self.size)?;
226                },
227                58 => {
228                    ::protobuf::rt::read_singular_message_into_field(is, &mut self.rate)?;
229                },
230                66 => {
231                    ::protobuf::rt::read_singular_message_into_field(is, &mut self.duration)?;
232                },
233                74 => {
234                    ::protobuf::rt::read_singular_message_into_field(is, &mut self.emitting)?;
235                },
236                82 => {
237                    ::protobuf::rt::read_singular_message_into_field(is, &mut self.particle_size)?;
238                },
239                90 => {
240                    ::protobuf::rt::read_singular_message_into_field(is, &mut self.lifetime)?;
241                },
242                98 => {
243                    ::protobuf::rt::read_singular_message_into_field(is, &mut self.material)?;
244                },
245                106 => {
246                    ::protobuf::rt::read_singular_message_into_field(is, &mut self.min_velocity)?;
247                },
248                114 => {
249                    ::protobuf::rt::read_singular_message_into_field(is, &mut self.max_velocity)?;
250                },
251                122 => {
252                    ::protobuf::rt::read_singular_message_into_field(is, &mut self.color_start)?;
253                },
254                130 => {
255                    ::protobuf::rt::read_singular_message_into_field(is, &mut self.color_end)?;
256                },
257                138 => {
258                    ::protobuf::rt::read_singular_message_into_field(is, &mut self.scale_rate)?;
259                },
260                146 => {
261                    ::protobuf::rt::read_singular_message_into_field(is, &mut self.color_range_image)?;
262                },
263                154 => {
264                    ::protobuf::rt::read_singular_message_into_field(is, &mut self.topic)?;
265                },
266                162 => {
267                    ::protobuf::rt::read_singular_message_into_field(is, &mut self.particle_scatter_ratio)?;
268                },
269                tag => {
270                    ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
271                },
272            };
273        }
274        ::std::result::Result::Ok(())
275    }
276
277    // Compute sizes of nested messages
278    #[allow(unused_variables)]
279    fn compute_size(&self) -> u64 {
280        let mut my_size = 0;
281        if let Some(v) = self.header.as_ref() {
282            let len = v.compute_size();
283            my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
284        }
285        if !self.name.is_empty() {
286            my_size += ::protobuf::rt::string_size(2, &self.name);
287        }
288        if self.id != 0 {
289            my_size += ::protobuf::rt::uint32_size(3, self.id);
290        }
291        if self.type_ != ::protobuf::EnumOrUnknown::new(particle_emitter::EmitterType::POINT) {
292            my_size += ::protobuf::rt::int32_size(4, self.type_.value());
293        }
294        if let Some(v) = self.pose.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.size.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.rate.as_ref() {
303            let len = v.compute_size();
304            my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
305        }
306        if let Some(v) = self.duration.as_ref() {
307            let len = v.compute_size();
308            my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
309        }
310        if let Some(v) = self.emitting.as_ref() {
311            let len = v.compute_size();
312            my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
313        }
314        if let Some(v) = self.particle_size.as_ref() {
315            let len = v.compute_size();
316            my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
317        }
318        if let Some(v) = self.lifetime.as_ref() {
319            let len = v.compute_size();
320            my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
321        }
322        if let Some(v) = self.material.as_ref() {
323            let len = v.compute_size();
324            my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
325        }
326        if let Some(v) = self.min_velocity.as_ref() {
327            let len = v.compute_size();
328            my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
329        }
330        if let Some(v) = self.max_velocity.as_ref() {
331            let len = v.compute_size();
332            my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
333        }
334        if let Some(v) = self.color_start.as_ref() {
335            let len = v.compute_size();
336            my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
337        }
338        if let Some(v) = self.color_end.as_ref() {
339            let len = v.compute_size();
340            my_size += 2 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
341        }
342        if let Some(v) = self.scale_rate.as_ref() {
343            let len = v.compute_size();
344            my_size += 2 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
345        }
346        if let Some(v) = self.color_range_image.as_ref() {
347            let len = v.compute_size();
348            my_size += 2 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
349        }
350        if let Some(v) = self.topic.as_ref() {
351            let len = v.compute_size();
352            my_size += 2 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
353        }
354        if let Some(v) = self.particle_scatter_ratio.as_ref() {
355            let len = v.compute_size();
356            my_size += 2 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
357        }
358        my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
359        self.special_fields.cached_size().set(my_size as u32);
360        my_size
361    }
362
363    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
364        if let Some(v) = self.header.as_ref() {
365            ::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
366        }
367        if !self.name.is_empty() {
368            os.write_string(2, &self.name)?;
369        }
370        if self.id != 0 {
371            os.write_uint32(3, self.id)?;
372        }
373        if self.type_ != ::protobuf::EnumOrUnknown::new(particle_emitter::EmitterType::POINT) {
374            os.write_enum(4, ::protobuf::EnumOrUnknown::value(&self.type_))?;
375        }
376        if let Some(v) = self.pose.as_ref() {
377            ::protobuf::rt::write_message_field_with_cached_size(5, v, os)?;
378        }
379        if let Some(v) = self.size.as_ref() {
380            ::protobuf::rt::write_message_field_with_cached_size(6, v, os)?;
381        }
382        if let Some(v) = self.rate.as_ref() {
383            ::protobuf::rt::write_message_field_with_cached_size(7, v, os)?;
384        }
385        if let Some(v) = self.duration.as_ref() {
386            ::protobuf::rt::write_message_field_with_cached_size(8, v, os)?;
387        }
388        if let Some(v) = self.emitting.as_ref() {
389            ::protobuf::rt::write_message_field_with_cached_size(9, v, os)?;
390        }
391        if let Some(v) = self.particle_size.as_ref() {
392            ::protobuf::rt::write_message_field_with_cached_size(10, v, os)?;
393        }
394        if let Some(v) = self.lifetime.as_ref() {
395            ::protobuf::rt::write_message_field_with_cached_size(11, v, os)?;
396        }
397        if let Some(v) = self.material.as_ref() {
398            ::protobuf::rt::write_message_field_with_cached_size(12, v, os)?;
399        }
400        if let Some(v) = self.min_velocity.as_ref() {
401            ::protobuf::rt::write_message_field_with_cached_size(13, v, os)?;
402        }
403        if let Some(v) = self.max_velocity.as_ref() {
404            ::protobuf::rt::write_message_field_with_cached_size(14, v, os)?;
405        }
406        if let Some(v) = self.color_start.as_ref() {
407            ::protobuf::rt::write_message_field_with_cached_size(15, v, os)?;
408        }
409        if let Some(v) = self.color_end.as_ref() {
410            ::protobuf::rt::write_message_field_with_cached_size(16, v, os)?;
411        }
412        if let Some(v) = self.scale_rate.as_ref() {
413            ::protobuf::rt::write_message_field_with_cached_size(17, v, os)?;
414        }
415        if let Some(v) = self.color_range_image.as_ref() {
416            ::protobuf::rt::write_message_field_with_cached_size(18, v, os)?;
417        }
418        if let Some(v) = self.topic.as_ref() {
419            ::protobuf::rt::write_message_field_with_cached_size(19, v, os)?;
420        }
421        if let Some(v) = self.particle_scatter_ratio.as_ref() {
422            ::protobuf::rt::write_message_field_with_cached_size(20, v, os)?;
423        }
424        os.write_unknown_fields(self.special_fields.unknown_fields())?;
425        ::std::result::Result::Ok(())
426    }
427
428    fn special_fields(&self) -> &::protobuf::SpecialFields {
429        &self.special_fields
430    }
431
432    fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
433        &mut self.special_fields
434    }
435
436    fn new() -> ParticleEmitter {
437        ParticleEmitter::new()
438    }
439
440    fn clear(&mut self) {
441        self.header.clear();
442        self.name.clear();
443        self.id = 0;
444        self.type_ = ::protobuf::EnumOrUnknown::new(particle_emitter::EmitterType::POINT);
445        self.pose.clear();
446        self.size.clear();
447        self.rate.clear();
448        self.duration.clear();
449        self.emitting.clear();
450        self.particle_size.clear();
451        self.lifetime.clear();
452        self.material.clear();
453        self.min_velocity.clear();
454        self.max_velocity.clear();
455        self.color_start.clear();
456        self.color_end.clear();
457        self.scale_rate.clear();
458        self.color_range_image.clear();
459        self.topic.clear();
460        self.particle_scatter_ratio.clear();
461        self.special_fields.clear();
462    }
463
464    fn default_instance() -> &'static ParticleEmitter {
465        static instance: ParticleEmitter = ParticleEmitter {
466            header: ::protobuf::MessageField::none(),
467            name: ::std::string::String::new(),
468            id: 0,
469            type_: ::protobuf::EnumOrUnknown::from_i32(0),
470            pose: ::protobuf::MessageField::none(),
471            size: ::protobuf::MessageField::none(),
472            rate: ::protobuf::MessageField::none(),
473            duration: ::protobuf::MessageField::none(),
474            emitting: ::protobuf::MessageField::none(),
475            particle_size: ::protobuf::MessageField::none(),
476            lifetime: ::protobuf::MessageField::none(),
477            material: ::protobuf::MessageField::none(),
478            min_velocity: ::protobuf::MessageField::none(),
479            max_velocity: ::protobuf::MessageField::none(),
480            color_start: ::protobuf::MessageField::none(),
481            color_end: ::protobuf::MessageField::none(),
482            scale_rate: ::protobuf::MessageField::none(),
483            color_range_image: ::protobuf::MessageField::none(),
484            topic: ::protobuf::MessageField::none(),
485            particle_scatter_ratio: ::protobuf::MessageField::none(),
486            special_fields: ::protobuf::SpecialFields::new(),
487        };
488        &instance
489    }
490}
491
492impl ::protobuf::MessageFull for ParticleEmitter {
493    fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
494        static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
495        descriptor.get(|| file_descriptor().message_by_package_relative_name("ParticleEmitter").unwrap()).clone()
496    }
497}
498
499impl ::std::fmt::Display for ParticleEmitter {
500    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
501        ::protobuf::text_format::fmt(self, f)
502    }
503}
504
505impl ::protobuf::reflect::ProtobufValue for ParticleEmitter {
506    type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
507}
508
509/// Nested message and enums of message `ParticleEmitter`
510pub mod particle_emitter {
511    #[derive(Clone,Copy,PartialEq,Eq,Debug,Hash)]
512    // @@protoc_insertion_point(enum:gz.msgs.ParticleEmitter.EmitterType)
513    pub enum EmitterType {
514        // @@protoc_insertion_point(enum_value:gz.msgs.ParticleEmitter.EmitterType.POINT)
515        POINT = 0,
516        // @@protoc_insertion_point(enum_value:gz.msgs.ParticleEmitter.EmitterType.BOX)
517        BOX = 1,
518        // @@protoc_insertion_point(enum_value:gz.msgs.ParticleEmitter.EmitterType.CYLINDER)
519        CYLINDER = 2,
520        // @@protoc_insertion_point(enum_value:gz.msgs.ParticleEmitter.EmitterType.ELLIPSOID)
521        ELLIPSOID = 3,
522    }
523
524    impl ::protobuf::Enum for EmitterType {
525        const NAME: &'static str = "EmitterType";
526
527        fn value(&self) -> i32 {
528            *self as i32
529        }
530
531        fn from_i32(value: i32) -> ::std::option::Option<EmitterType> {
532            match value {
533                0 => ::std::option::Option::Some(EmitterType::POINT),
534                1 => ::std::option::Option::Some(EmitterType::BOX),
535                2 => ::std::option::Option::Some(EmitterType::CYLINDER),
536                3 => ::std::option::Option::Some(EmitterType::ELLIPSOID),
537                _ => ::std::option::Option::None
538            }
539        }
540
541        fn from_str(str: &str) -> ::std::option::Option<EmitterType> {
542            match str {
543                "POINT" => ::std::option::Option::Some(EmitterType::POINT),
544                "BOX" => ::std::option::Option::Some(EmitterType::BOX),
545                "CYLINDER" => ::std::option::Option::Some(EmitterType::CYLINDER),
546                "ELLIPSOID" => ::std::option::Option::Some(EmitterType::ELLIPSOID),
547                _ => ::std::option::Option::None
548            }
549        }
550
551        const VALUES: &'static [EmitterType] = &[
552            EmitterType::POINT,
553            EmitterType::BOX,
554            EmitterType::CYLINDER,
555            EmitterType::ELLIPSOID,
556        ];
557    }
558
559    impl ::protobuf::EnumFull for EmitterType {
560        fn enum_descriptor() -> ::protobuf::reflect::EnumDescriptor {
561            static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::Lazy::new();
562            descriptor.get(|| super::file_descriptor().enum_by_package_relative_name("ParticleEmitter.EmitterType").unwrap()).clone()
563        }
564
565        fn descriptor(&self) -> ::protobuf::reflect::EnumValueDescriptor {
566            let index = *self as usize;
567            Self::enum_descriptor().value_by_index(index)
568        }
569    }
570
571    impl ::std::default::Default for EmitterType {
572        fn default() -> Self {
573            EmitterType::POINT
574        }
575    }
576
577    impl EmitterType {
578        pub(in super) fn generated_enum_descriptor_data() -> ::protobuf::reflect::GeneratedEnumDescriptorData {
579            ::protobuf::reflect::GeneratedEnumDescriptorData::new::<EmitterType>("ParticleEmitter.EmitterType")
580        }
581    }
582}
583
584static file_descriptor_proto_data: &'static [u8] = b"\
585    \n\x1egz/msgs/particle_emitter.proto\x12\x07gz.msgs\x1a\x15gz/msgs/boole\
586    an.proto\x1a\x13gz/msgs/color.proto\x1a\x13gz/msgs/float.proto\x1a\x14gz\
587    /msgs/header.proto\x1a\x16gz/msgs/material.proto\x1a\x12gz/msgs/pose.pro\
588    to\x1a\x17gz/msgs/stringmsg.proto\x1a\x16gz/msgs/vector3d.proto\"\xd6\
589    \x07\n\x0fParticleEmitter\x12'\n\x06header\x18\x01\x20\x01(\x0b2\x0f.gz.\
590    msgs.HeaderR\x06header\x12\x12\n\x04name\x18\x02\x20\x01(\tR\x04name\x12\
591    \x0e\n\x02id\x18\x03\x20\x01(\rR\x02id\x128\n\x04type\x18\x04\x20\x01(\
592    \x0e2$.gz.msgs.ParticleEmitter.EmitterTypeR\x04type\x12!\n\x04pose\x18\
593    \x05\x20\x01(\x0b2\r.gz.msgs.PoseR\x04pose\x12%\n\x04size\x18\x06\x20\
594    \x01(\x0b2\x11.gz.msgs.Vector3dR\x04size\x12\"\n\x04rate\x18\x07\x20\x01\
595    (\x0b2\x0e.gz.msgs.FloatR\x04rate\x12*\n\x08duration\x18\x08\x20\x01(\
596    \x0b2\x0e.gz.msgs.FloatR\x08duration\x12,\n\x08emitting\x18\t\x20\x01(\
597    \x0b2\x10.gz.msgs.BooleanR\x08emitting\x126\n\rparticle_size\x18\n\x20\
598    \x01(\x0b2\x11.gz.msgs.Vector3dR\x0cparticleSize\x12*\n\x08lifetime\x18\
599    \x0b\x20\x01(\x0b2\x0e.gz.msgs.FloatR\x08lifetime\x12-\n\x08material\x18\
600    \x0c\x20\x01(\x0b2\x11.gz.msgs.MaterialR\x08material\x121\n\x0cmin_veloc\
601    ity\x18\r\x20\x01(\x0b2\x0e.gz.msgs.FloatR\x0bminVelocity\x121\n\x0cmax_\
602    velocity\x18\x0e\x20\x01(\x0b2\x0e.gz.msgs.FloatR\x0bmaxVelocity\x12/\n\
603    \x0bcolor_start\x18\x0f\x20\x01(\x0b2\x0e.gz.msgs.ColorR\ncolorStart\x12\
604    +\n\tcolor_end\x18\x10\x20\x01(\x0b2\x0e.gz.msgs.ColorR\x08colorEnd\x12-\
605    \n\nscale_rate\x18\x11\x20\x01(\x0b2\x0e.gz.msgs.FloatR\tscaleRate\x12>\
606    \n\x11color_range_image\x18\x12\x20\x01(\x0b2\x12.gz.msgs.StringMsgR\x0f\
607    colorRangeImage\x12(\n\x05topic\x18\x13\x20\x01(\x0b2\x12.gz.msgs.String\
608    MsgR\x05topic\x12D\n\x16particle_scatter_ratio\x18\x14\x20\x01(\x0b2\x0e\
609    .gz.msgs.FloatR\x14particleScatterRatio\">\n\x0bEmitterType\x12\t\n\x05P\
610    OINT\x10\0\x12\x07\n\x03BOX\x10\x01\x12\x0c\n\x08CYLINDER\x10\x02\x12\r\
611    \n\tELLIPSOID\x10\x03B$\n\x0bcom.gz.msgsB\x15ParticleEmitterProtosb\x06p\
612    roto3\
613";
614
615/// `FileDescriptorProto` object which was a source for this generated file
616fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto {
617    static file_descriptor_proto_lazy: ::protobuf::rt::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::rt::Lazy::new();
618    file_descriptor_proto_lazy.get(|| {
619        ::protobuf::Message::parse_from_bytes(file_descriptor_proto_data).unwrap()
620    })
621}
622
623/// `FileDescriptor` object which allows dynamic access to files
624pub fn file_descriptor() -> &'static ::protobuf::reflect::FileDescriptor {
625    static generated_file_descriptor_lazy: ::protobuf::rt::Lazy<::protobuf::reflect::GeneratedFileDescriptor> = ::protobuf::rt::Lazy::new();
626    static file_descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::FileDescriptor> = ::protobuf::rt::Lazy::new();
627    file_descriptor.get(|| {
628        let generated_file_descriptor = generated_file_descriptor_lazy.get(|| {
629            let mut deps = ::std::vec::Vec::with_capacity(8);
630            deps.push(super::boolean::file_descriptor().clone());
631            deps.push(super::color::file_descriptor().clone());
632            deps.push(super::float::file_descriptor().clone());
633            deps.push(super::header::file_descriptor().clone());
634            deps.push(super::material::file_descriptor().clone());
635            deps.push(super::pose::file_descriptor().clone());
636            deps.push(super::stringmsg::file_descriptor().clone());
637            deps.push(super::vector3d::file_descriptor().clone());
638            let mut messages = ::std::vec::Vec::with_capacity(1);
639            messages.push(ParticleEmitter::generated_message_descriptor_data());
640            let mut enums = ::std::vec::Vec::with_capacity(1);
641            enums.push(particle_emitter::EmitterType::generated_enum_descriptor_data());
642            ::protobuf::reflect::GeneratedFileDescriptor::new_generated(
643                file_descriptor_proto(),
644                deps,
645                messages,
646                enums,
647            )
648        });
649        ::protobuf::reflect::FileDescriptor::new_generated_2(generated_file_descriptor)
650    })
651}