View Javadoc
1   // Generated by the protocol buffer compiler.  DO NOT EDIT!
2   // source: ots-aimsun.proto
3   
4   package org.opentrafficsim.aimsun.proto;
5   
6   public final class AimsunControlProtoBuf {
7     private AimsunControlProtoBuf() {}
8     public static void registerAllExtensions(
9         com.google.protobuf.ExtensionRegistryLite registry) {
10    }
11  
12    public static void registerAllExtensions(
13        com.google.protobuf.ExtensionRegistry registry) {
14      registerAllExtensions(
15          (com.google.protobuf.ExtensionRegistryLite) registry);
16    }
17    public interface CreateSimulationOrBuilder extends
18        // @@protoc_insertion_point(interface_extends:org.opentrafficsim.aimsun.proto.CreateSimulation)
19        com.google.protobuf.MessageOrBuilder {
20  
21      /**
22       * <code>required double runTime = 1;</code>
23       */
24      boolean hasRunTime();
25      /**
26       * <code>required double runTime = 1;</code>
27       */
28      double getRunTime();
29  
30      /**
31       * <code>required double warmUpTime = 2;</code>
32       */
33      boolean hasWarmUpTime();
34      /**
35       * <code>required double warmUpTime = 2;</code>
36       */
37      double getWarmUpTime();
38  
39      /**
40       * <code>optional string networkXML = 3;</code>
41       */
42      boolean hasNetworkXML();
43      /**
44       * <code>optional string networkXML = 3;</code>
45       */
46      java.lang.String getNetworkXML();
47      /**
48       * <code>optional string networkXML = 3;</code>
49       */
50      com.google.protobuf.ByteString
51          getNetworkXMLBytes();
52    }
53    /**
54     * Protobuf type {@code org.opentrafficsim.aimsun.proto.CreateSimulation}
55     */
56    public  static final class CreateSimulation extends
57        com.google.protobuf.GeneratedMessageV3 implements
58        // @@protoc_insertion_point(message_implements:org.opentrafficsim.aimsun.proto.CreateSimulation)
59        CreateSimulationOrBuilder {
60      // Use CreateSimulation.newBuilder() to construct.
61      private CreateSimulation(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
62        super(builder);
63      }
64      private CreateSimulation() {
65        runTime_ = 0D;
66        warmUpTime_ = 0D;
67        networkXML_ = "";
68      }
69  
70      @java.lang.Override
71      public final com.google.protobuf.UnknownFieldSet
72      getUnknownFields() {
73        return this.unknownFields;
74      }
75      private CreateSimulation(
76          com.google.protobuf.CodedInputStream input,
77          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
78          throws com.google.protobuf.InvalidProtocolBufferException {
79        this();
80        int mutable_bitField0_ = 0;
81        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
82            com.google.protobuf.UnknownFieldSet.newBuilder();
83        try {
84          boolean done = false;
85          while (!done) {
86            int tag = input.readTag();
87            switch (tag) {
88              case 0:
89                done = true;
90                break;
91              default: {
92                if (!parseUnknownField(input, unknownFields,
93                                       extensionRegistry, tag)) {
94                  done = true;
95                }
96                break;
97              }
98              case 9: {
99                bitField0_ |= 0x00000001;
100               runTime_ = input.readDouble();
101               break;
102             }
103             case 17: {
104               bitField0_ |= 0x00000002;
105               warmUpTime_ = input.readDouble();
106               break;
107             }
108             case 26: {
109               com.google.protobuf.ByteString bs = input.readBytes();
110               bitField0_ |= 0x00000004;
111               networkXML_ = bs;
112               break;
113             }
114           }
115         }
116       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
117         throw e.setUnfinishedMessage(this);
118       } catch (java.io.IOException e) {
119         throw new com.google.protobuf.InvalidProtocolBufferException(
120             e).setUnfinishedMessage(this);
121       } finally {
122         this.unknownFields = unknownFields.build();
123         makeExtensionsImmutable();
124       }
125     }
126     public static final com.google.protobuf.Descriptors.Descriptor
127         getDescriptor() {
128       return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.internal_static_org_opentrafficsim_aimsun_proto_CreateSimulation_descriptor;
129     }
130 
131     protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
132         internalGetFieldAccessorTable() {
133       return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.internal_static_org_opentrafficsim_aimsun_proto_CreateSimulation_fieldAccessorTable
134           .ensureFieldAccessorsInitialized(
135               org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation.class, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation.Builder.class);
136     }
137 
138     private int bitField0_;
139     public static final int RUNTIME_FIELD_NUMBER = 1;
140     private double runTime_;
141     /**
142      * <code>required double runTime = 1;</code>
143      */
144     public boolean hasRunTime() {
145       return ((bitField0_ & 0x00000001) == 0x00000001);
146     }
147     /**
148      * <code>required double runTime = 1;</code>
149      */
150     public double getRunTime() {
151       return runTime_;
152     }
153 
154     public static final int WARMUPTIME_FIELD_NUMBER = 2;
155     private double warmUpTime_;
156     /**
157      * <code>required double warmUpTime = 2;</code>
158      */
159     public boolean hasWarmUpTime() {
160       return ((bitField0_ & 0x00000002) == 0x00000002);
161     }
162     /**
163      * <code>required double warmUpTime = 2;</code>
164      */
165     public double getWarmUpTime() {
166       return warmUpTime_;
167     }
168 
169     public static final int NETWORKXML_FIELD_NUMBER = 3;
170     private volatile java.lang.Object networkXML_;
171     /**
172      * <code>optional string networkXML = 3;</code>
173      */
174     public boolean hasNetworkXML() {
175       return ((bitField0_ & 0x00000004) == 0x00000004);
176     }
177     /**
178      * <code>optional string networkXML = 3;</code>
179      */
180     public java.lang.String getNetworkXML() {
181       java.lang.Object ref = networkXML_;
182       if (ref instanceof java.lang.String) {
183         return (java.lang.String) ref;
184       } else {
185         com.google.protobuf.ByteString bs = 
186             (com.google.protobuf.ByteString) ref;
187         java.lang.String s = bs.toStringUtf8();
188         if (bs.isValidUtf8()) {
189           networkXML_ = s;
190         }
191         return s;
192       }
193     }
194     /**
195      * <code>optional string networkXML = 3;</code>
196      */
197     public com.google.protobuf.ByteString
198         getNetworkXMLBytes() {
199       java.lang.Object ref = networkXML_;
200       if (ref instanceof java.lang.String) {
201         com.google.protobuf.ByteString b = 
202             com.google.protobuf.ByteString.copyFromUtf8(
203                 (java.lang.String) ref);
204         networkXML_ = b;
205         return b;
206       } else {
207         return (com.google.protobuf.ByteString) ref;
208       }
209     }
210 
211     private byte memoizedIsInitialized = -1;
212     public final boolean isInitialized() {
213       byte isInitialized = memoizedIsInitialized;
214       if (isInitialized == 1) return true;
215       if (isInitialized == 0) return false;
216 
217       if (!hasRunTime()) {
218         memoizedIsInitialized = 0;
219         return false;
220       }
221       if (!hasWarmUpTime()) {
222         memoizedIsInitialized = 0;
223         return false;
224       }
225       memoizedIsInitialized = 1;
226       return true;
227     }
228 
229     public void writeTo(com.google.protobuf.CodedOutputStream output)
230                         throws java.io.IOException {
231       if (((bitField0_ & 0x00000001) == 0x00000001)) {
232         output.writeDouble(1, runTime_);
233       }
234       if (((bitField0_ & 0x00000002) == 0x00000002)) {
235         output.writeDouble(2, warmUpTime_);
236       }
237       if (((bitField0_ & 0x00000004) == 0x00000004)) {
238         com.google.protobuf.GeneratedMessageV3.writeString(output, 3, networkXML_);
239       }
240       unknownFields.writeTo(output);
241     }
242 
243     public int getSerializedSize() {
244       int size = memoizedSize;
245       if (size != -1) return size;
246 
247       size = 0;
248       if (((bitField0_ & 0x00000001) == 0x00000001)) {
249         size += com.google.protobuf.CodedOutputStream
250           .computeDoubleSize(1, runTime_);
251       }
252       if (((bitField0_ & 0x00000002) == 0x00000002)) {
253         size += com.google.protobuf.CodedOutputStream
254           .computeDoubleSize(2, warmUpTime_);
255       }
256       if (((bitField0_ & 0x00000004) == 0x00000004)) {
257         size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, networkXML_);
258       }
259       size += unknownFields.getSerializedSize();
260       memoizedSize = size;
261       return size;
262     }
263 
264     private static final long serialVersionUID = 0L;
265     @java.lang.Override
266     public boolean equals(final java.lang.Object obj) {
267       if (obj == this) {
268        return true;
269       }
270       if (!(obj instanceof org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation)) {
271         return super.equals(obj);
272       }
273       org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation other = (org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation) obj;
274 
275       boolean result = true;
276       result = result && (hasRunTime() == other.hasRunTime());
277       if (hasRunTime()) {
278         result = result && (
279             java.lang.Double.doubleToLongBits(getRunTime())
280             == java.lang.Double.doubleToLongBits(
281                 other.getRunTime()));
282       }
283       result = result && (hasWarmUpTime() == other.hasWarmUpTime());
284       if (hasWarmUpTime()) {
285         result = result && (
286             java.lang.Double.doubleToLongBits(getWarmUpTime())
287             == java.lang.Double.doubleToLongBits(
288                 other.getWarmUpTime()));
289       }
290       result = result && (hasNetworkXML() == other.hasNetworkXML());
291       if (hasNetworkXML()) {
292         result = result && getNetworkXML()
293             .equals(other.getNetworkXML());
294       }
295       result = result && unknownFields.equals(other.unknownFields);
296       return result;
297     }
298 
299     @java.lang.Override
300     public int hashCode() {
301       if (memoizedHashCode != 0) {
302         return memoizedHashCode;
303       }
304       int hash = 41;
305       hash = (19 * hash) + getDescriptor().hashCode();
306       if (hasRunTime()) {
307         hash = (37 * hash) + RUNTIME_FIELD_NUMBER;
308         hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
309             java.lang.Double.doubleToLongBits(getRunTime()));
310       }
311       if (hasWarmUpTime()) {
312         hash = (37 * hash) + WARMUPTIME_FIELD_NUMBER;
313         hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
314             java.lang.Double.doubleToLongBits(getWarmUpTime()));
315       }
316       if (hasNetworkXML()) {
317         hash = (37 * hash) + NETWORKXML_FIELD_NUMBER;
318         hash = (53 * hash) + getNetworkXML().hashCode();
319       }
320       hash = (29 * hash) + unknownFields.hashCode();
321       memoizedHashCode = hash;
322       return hash;
323     }
324 
325     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation parseFrom(
326         com.google.protobuf.ByteString data)
327         throws com.google.protobuf.InvalidProtocolBufferException {
328       return PARSER.parseFrom(data);
329     }
330     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation parseFrom(
331         com.google.protobuf.ByteString data,
332         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
333         throws com.google.protobuf.InvalidProtocolBufferException {
334       return PARSER.parseFrom(data, extensionRegistry);
335     }
336     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation parseFrom(byte[] data)
337         throws com.google.protobuf.InvalidProtocolBufferException {
338       return PARSER.parseFrom(data);
339     }
340     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation parseFrom(
341         byte[] data,
342         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
343         throws com.google.protobuf.InvalidProtocolBufferException {
344       return PARSER.parseFrom(data, extensionRegistry);
345     }
346     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation parseFrom(java.io.InputStream input)
347         throws java.io.IOException {
348       return com.google.protobuf.GeneratedMessageV3
349           .parseWithIOException(PARSER, input);
350     }
351     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation parseFrom(
352         java.io.InputStream input,
353         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
354         throws java.io.IOException {
355       return com.google.protobuf.GeneratedMessageV3
356           .parseWithIOException(PARSER, input, extensionRegistry);
357     }
358     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation parseDelimitedFrom(java.io.InputStream input)
359         throws java.io.IOException {
360       return com.google.protobuf.GeneratedMessageV3
361           .parseDelimitedWithIOException(PARSER, input);
362     }
363     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation parseDelimitedFrom(
364         java.io.InputStream input,
365         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
366         throws java.io.IOException {
367       return com.google.protobuf.GeneratedMessageV3
368           .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
369     }
370     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation parseFrom(
371         com.google.protobuf.CodedInputStream input)
372         throws java.io.IOException {
373       return com.google.protobuf.GeneratedMessageV3
374           .parseWithIOException(PARSER, input);
375     }
376     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation parseFrom(
377         com.google.protobuf.CodedInputStream input,
378         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
379         throws java.io.IOException {
380       return com.google.protobuf.GeneratedMessageV3
381           .parseWithIOException(PARSER, input, extensionRegistry);
382     }
383 
384     public Builder newBuilderForType() { return newBuilder(); }
385     public static Builder newBuilder() {
386       return DEFAULT_INSTANCE.toBuilder();
387     }
388     public static Builder newBuilder(org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation prototype) {
389       return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
390     }
391     public Builder toBuilder() {
392       return this == DEFAULT_INSTANCE
393           ? new Builder() : new Builder().mergeFrom(this);
394     }
395 
396     @java.lang.Override
397     protected Builder newBuilderForType(
398         com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
399       Builder builder = new Builder(parent);
400       return builder;
401     }
402     /**
403      * Protobuf type {@code org.opentrafficsim.aimsun.proto.CreateSimulation}
404      */
405     public static final class Builder extends
406         com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
407         // @@protoc_insertion_point(builder_implements:org.opentrafficsim.aimsun.proto.CreateSimulation)
408         org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulationOrBuilder {
409       public static final com.google.protobuf.Descriptors.Descriptor
410           getDescriptor() {
411         return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.internal_static_org_opentrafficsim_aimsun_proto_CreateSimulation_descriptor;
412       }
413 
414       protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
415           internalGetFieldAccessorTable() {
416         return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.internal_static_org_opentrafficsim_aimsun_proto_CreateSimulation_fieldAccessorTable
417             .ensureFieldAccessorsInitialized(
418                 org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation.class, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation.Builder.class);
419       }
420 
421       // Construct using org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation.newBuilder()
422       private Builder() {
423         maybeForceBuilderInitialization();
424       }
425 
426       private Builder(
427           com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
428         super(parent);
429         maybeForceBuilderInitialization();
430       }
431       private void maybeForceBuilderInitialization() {
432         if (com.google.protobuf.GeneratedMessageV3
433                 .alwaysUseFieldBuilders) {
434         }
435       }
436       public Builder clear() {
437         super.clear();
438         runTime_ = 0D;
439         bitField0_ = (bitField0_ & ~0x00000001);
440         warmUpTime_ = 0D;
441         bitField0_ = (bitField0_ & ~0x00000002);
442         networkXML_ = "";
443         bitField0_ = (bitField0_ & ~0x00000004);
444         return this;
445       }
446 
447       public com.google.protobuf.Descriptors.Descriptor
448           getDescriptorForType() {
449         return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.internal_static_org_opentrafficsim_aimsun_proto_CreateSimulation_descriptor;
450       }
451 
452       public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation getDefaultInstanceForType() {
453         return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation.getDefaultInstance();
454       }
455 
456       public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation build() {
457         org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation result = buildPartial();
458         if (!result.isInitialized()) {
459           throw newUninitializedMessageException(result);
460         }
461         return result;
462       }
463 
464       public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation buildPartial() {
465         org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation result = new org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation(this);
466         int from_bitField0_ = bitField0_;
467         int to_bitField0_ = 0;
468         if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
469           to_bitField0_ |= 0x00000001;
470         }
471         result.runTime_ = runTime_;
472         if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
473           to_bitField0_ |= 0x00000002;
474         }
475         result.warmUpTime_ = warmUpTime_;
476         if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
477           to_bitField0_ |= 0x00000004;
478         }
479         result.networkXML_ = networkXML_;
480         result.bitField0_ = to_bitField0_;
481         onBuilt();
482         return result;
483       }
484 
485       public Builder clone() {
486         return (Builder) super.clone();
487       }
488       public Builder setField(
489           com.google.protobuf.Descriptors.FieldDescriptor field,
490           Object value) {
491         return (Builder) super.setField(field, value);
492       }
493       public Builder clearField(
494           com.google.protobuf.Descriptors.FieldDescriptor field) {
495         return (Builder) super.clearField(field);
496       }
497       public Builder clearOneof(
498           com.google.protobuf.Descriptors.OneofDescriptor oneof) {
499         return (Builder) super.clearOneof(oneof);
500       }
501       public Builder setRepeatedField(
502           com.google.protobuf.Descriptors.FieldDescriptor field,
503           int index, Object value) {
504         return (Builder) super.setRepeatedField(field, index, value);
505       }
506       public Builder addRepeatedField(
507           com.google.protobuf.Descriptors.FieldDescriptor field,
508           Object value) {
509         return (Builder) super.addRepeatedField(field, value);
510       }
511       public Builder mergeFrom(com.google.protobuf.Message other) {
512         if (other instanceof org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation) {
513           return mergeFrom((org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation)other);
514         } else {
515           super.mergeFrom(other);
516           return this;
517         }
518       }
519 
520       public Builder mergeFrom(org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation other) {
521         if (other == org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation.getDefaultInstance()) return this;
522         if (other.hasRunTime()) {
523           setRunTime(other.getRunTime());
524         }
525         if (other.hasWarmUpTime()) {
526           setWarmUpTime(other.getWarmUpTime());
527         }
528         if (other.hasNetworkXML()) {
529           bitField0_ |= 0x00000004;
530           networkXML_ = other.networkXML_;
531           onChanged();
532         }
533         this.mergeUnknownFields(other.unknownFields);
534         onChanged();
535         return this;
536       }
537 
538       public final boolean isInitialized() {
539         if (!hasRunTime()) {
540           return false;
541         }
542         if (!hasWarmUpTime()) {
543           return false;
544         }
545         return true;
546       }
547 
548       public Builder mergeFrom(
549           com.google.protobuf.CodedInputStream input,
550           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
551           throws java.io.IOException {
552         org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation parsedMessage = null;
553         try {
554           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
555         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
556           parsedMessage = (org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation) e.getUnfinishedMessage();
557           throw e.unwrapIOException();
558         } finally {
559           if (parsedMessage != null) {
560             mergeFrom(parsedMessage);
561           }
562         }
563         return this;
564       }
565       private int bitField0_;
566 
567       private double runTime_ ;
568       /**
569        * <code>required double runTime = 1;</code>
570        */
571       public boolean hasRunTime() {
572         return ((bitField0_ & 0x00000001) == 0x00000001);
573       }
574       /**
575        * <code>required double runTime = 1;</code>
576        */
577       public double getRunTime() {
578         return runTime_;
579       }
580       /**
581        * <code>required double runTime = 1;</code>
582        */
583       public Builder setRunTime(double value) {
584         bitField0_ |= 0x00000001;
585         runTime_ = value;
586         onChanged();
587         return this;
588       }
589       /**
590        * <code>required double runTime = 1;</code>
591        */
592       public Builder clearRunTime() {
593         bitField0_ = (bitField0_ & ~0x00000001);
594         runTime_ = 0D;
595         onChanged();
596         return this;
597       }
598 
599       private double warmUpTime_ ;
600       /**
601        * <code>required double warmUpTime = 2;</code>
602        */
603       public boolean hasWarmUpTime() {
604         return ((bitField0_ & 0x00000002) == 0x00000002);
605       }
606       /**
607        * <code>required double warmUpTime = 2;</code>
608        */
609       public double getWarmUpTime() {
610         return warmUpTime_;
611       }
612       /**
613        * <code>required double warmUpTime = 2;</code>
614        */
615       public Builder setWarmUpTime(double value) {
616         bitField0_ |= 0x00000002;
617         warmUpTime_ = value;
618         onChanged();
619         return this;
620       }
621       /**
622        * <code>required double warmUpTime = 2;</code>
623        */
624       public Builder clearWarmUpTime() {
625         bitField0_ = (bitField0_ & ~0x00000002);
626         warmUpTime_ = 0D;
627         onChanged();
628         return this;
629       }
630 
631       private java.lang.Object networkXML_ = "";
632       /**
633        * <code>optional string networkXML = 3;</code>
634        */
635       public boolean hasNetworkXML() {
636         return ((bitField0_ & 0x00000004) == 0x00000004);
637       }
638       /**
639        * <code>optional string networkXML = 3;</code>
640        */
641       public java.lang.String getNetworkXML() {
642         java.lang.Object ref = networkXML_;
643         if (!(ref instanceof java.lang.String)) {
644           com.google.protobuf.ByteString bs =
645               (com.google.protobuf.ByteString) ref;
646           java.lang.String s = bs.toStringUtf8();
647           if (bs.isValidUtf8()) {
648             networkXML_ = s;
649           }
650           return s;
651         } else {
652           return (java.lang.String) ref;
653         }
654       }
655       /**
656        * <code>optional string networkXML = 3;</code>
657        */
658       public com.google.protobuf.ByteString
659           getNetworkXMLBytes() {
660         java.lang.Object ref = networkXML_;
661         if (ref instanceof String) {
662           com.google.protobuf.ByteString b = 
663               com.google.protobuf.ByteString.copyFromUtf8(
664                   (java.lang.String) ref);
665           networkXML_ = b;
666           return b;
667         } else {
668           return (com.google.protobuf.ByteString) ref;
669         }
670       }
671       /**
672        * <code>optional string networkXML = 3;</code>
673        */
674       public Builder setNetworkXML(
675           java.lang.String value) {
676         if (value == null) {
677     throw new NullPointerException();
678   }
679   bitField0_ |= 0x00000004;
680         networkXML_ = value;
681         onChanged();
682         return this;
683       }
684       /**
685        * <code>optional string networkXML = 3;</code>
686        */
687       public Builder clearNetworkXML() {
688         bitField0_ = (bitField0_ & ~0x00000004);
689         networkXML_ = getDefaultInstance().getNetworkXML();
690         onChanged();
691         return this;
692       }
693       /**
694        * <code>optional string networkXML = 3;</code>
695        */
696       public Builder setNetworkXMLBytes(
697           com.google.protobuf.ByteString value) {
698         if (value == null) {
699     throw new NullPointerException();
700   }
701   bitField0_ |= 0x00000004;
702         networkXML_ = value;
703         onChanged();
704         return this;
705       }
706       public final Builder setUnknownFields(
707           final com.google.protobuf.UnknownFieldSet unknownFields) {
708         return super.setUnknownFields(unknownFields);
709       }
710 
711       public final Builder mergeUnknownFields(
712           final com.google.protobuf.UnknownFieldSet unknownFields) {
713         return super.mergeUnknownFields(unknownFields);
714       }
715 
716 
717       // @@protoc_insertion_point(builder_scope:org.opentrafficsim.aimsun.proto.CreateSimulation)
718     }
719 
720     // @@protoc_insertion_point(class_scope:org.opentrafficsim.aimsun.proto.CreateSimulation)
721     private static final org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation DEFAULT_INSTANCE;
722     static {
723       DEFAULT_INSTANCE = new org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation();
724     }
725 
726     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation getDefaultInstance() {
727       return DEFAULT_INSTANCE;
728     }
729 
730     @java.lang.Deprecated public static final com.google.protobuf.Parser<CreateSimulation>
731         PARSER = new com.google.protobuf.AbstractParser<CreateSimulation>() {
732       public CreateSimulation parsePartialFrom(
733           com.google.protobuf.CodedInputStream input,
734           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
735           throws com.google.protobuf.InvalidProtocolBufferException {
736           return new CreateSimulation(input, extensionRegistry);
737       }
738     };
739 
740     public static com.google.protobuf.Parser<CreateSimulation> parser() {
741       return PARSER;
742     }
743 
744     @java.lang.Override
745     public com.google.protobuf.Parser<CreateSimulation> getParserForType() {
746       return PARSER;
747     }
748 
749     public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation getDefaultInstanceForType() {
750       return DEFAULT_INSTANCE;
751     }
752 
753   }
754 
755   public interface SimulateUntilOrBuilder extends
756       // @@protoc_insertion_point(interface_extends:org.opentrafficsim.aimsun.proto.SimulateUntil)
757       com.google.protobuf.MessageOrBuilder {
758 
759     /**
760      * <code>required double time = 1;</code>
761      */
762     boolean hasTime();
763     /**
764      * <code>required double time = 1;</code>
765      */
766     double getTime();
767   }
768   /**
769    * Protobuf type {@code org.opentrafficsim.aimsun.proto.SimulateUntil}
770    */
771   public  static final class SimulateUntil extends
772       com.google.protobuf.GeneratedMessageV3 implements
773       // @@protoc_insertion_point(message_implements:org.opentrafficsim.aimsun.proto.SimulateUntil)
774       SimulateUntilOrBuilder {
775     // Use SimulateUntil.newBuilder() to construct.
776     private SimulateUntil(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
777       super(builder);
778     }
779     private SimulateUntil() {
780       time_ = 0D;
781     }
782 
783     @java.lang.Override
784     public final com.google.protobuf.UnknownFieldSet
785     getUnknownFields() {
786       return this.unknownFields;
787     }
788     private SimulateUntil(
789         com.google.protobuf.CodedInputStream input,
790         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
791         throws com.google.protobuf.InvalidProtocolBufferException {
792       this();
793       int mutable_bitField0_ = 0;
794       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
795           com.google.protobuf.UnknownFieldSet.newBuilder();
796       try {
797         boolean done = false;
798         while (!done) {
799           int tag = input.readTag();
800           switch (tag) {
801             case 0:
802               done = true;
803               break;
804             default: {
805               if (!parseUnknownField(input, unknownFields,
806                                      extensionRegistry, tag)) {
807                 done = true;
808               }
809               break;
810             }
811             case 9: {
812               bitField0_ |= 0x00000001;
813               time_ = input.readDouble();
814               break;
815             }
816           }
817         }
818       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
819         throw e.setUnfinishedMessage(this);
820       } catch (java.io.IOException e) {
821         throw new com.google.protobuf.InvalidProtocolBufferException(
822             e).setUnfinishedMessage(this);
823       } finally {
824         this.unknownFields = unknownFields.build();
825         makeExtensionsImmutable();
826       }
827     }
828     public static final com.google.protobuf.Descriptors.Descriptor
829         getDescriptor() {
830       return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.internal_static_org_opentrafficsim_aimsun_proto_SimulateUntil_descriptor;
831     }
832 
833     protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
834         internalGetFieldAccessorTable() {
835       return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.internal_static_org_opentrafficsim_aimsun_proto_SimulateUntil_fieldAccessorTable
836           .ensureFieldAccessorsInitialized(
837               org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil.class, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil.Builder.class);
838     }
839 
840     private int bitField0_;
841     public static final int TIME_FIELD_NUMBER = 1;
842     private double time_;
843     /**
844      * <code>required double time = 1;</code>
845      */
846     public boolean hasTime() {
847       return ((bitField0_ & 0x00000001) == 0x00000001);
848     }
849     /**
850      * <code>required double time = 1;</code>
851      */
852     public double getTime() {
853       return time_;
854     }
855 
856     private byte memoizedIsInitialized = -1;
857     public final boolean isInitialized() {
858       byte isInitialized = memoizedIsInitialized;
859       if (isInitialized == 1) return true;
860       if (isInitialized == 0) return false;
861 
862       if (!hasTime()) {
863         memoizedIsInitialized = 0;
864         return false;
865       }
866       memoizedIsInitialized = 1;
867       return true;
868     }
869 
870     public void writeTo(com.google.protobuf.CodedOutputStream output)
871                         throws java.io.IOException {
872       if (((bitField0_ & 0x00000001) == 0x00000001)) {
873         output.writeDouble(1, time_);
874       }
875       unknownFields.writeTo(output);
876     }
877 
878     public int getSerializedSize() {
879       int size = memoizedSize;
880       if (size != -1) return size;
881 
882       size = 0;
883       if (((bitField0_ & 0x00000001) == 0x00000001)) {
884         size += com.google.protobuf.CodedOutputStream
885           .computeDoubleSize(1, time_);
886       }
887       size += unknownFields.getSerializedSize();
888       memoizedSize = size;
889       return size;
890     }
891 
892     private static final long serialVersionUID = 0L;
893     @java.lang.Override
894     public boolean equals(final java.lang.Object obj) {
895       if (obj == this) {
896        return true;
897       }
898       if (!(obj instanceof org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil)) {
899         return super.equals(obj);
900       }
901       org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil other = (org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil) obj;
902 
903       boolean result = true;
904       result = result && (hasTime() == other.hasTime());
905       if (hasTime()) {
906         result = result && (
907             java.lang.Double.doubleToLongBits(getTime())
908             == java.lang.Double.doubleToLongBits(
909                 other.getTime()));
910       }
911       result = result && unknownFields.equals(other.unknownFields);
912       return result;
913     }
914 
915     @java.lang.Override
916     public int hashCode() {
917       if (memoizedHashCode != 0) {
918         return memoizedHashCode;
919       }
920       int hash = 41;
921       hash = (19 * hash) + getDescriptor().hashCode();
922       if (hasTime()) {
923         hash = (37 * hash) + TIME_FIELD_NUMBER;
924         hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
925             java.lang.Double.doubleToLongBits(getTime()));
926       }
927       hash = (29 * hash) + unknownFields.hashCode();
928       memoizedHashCode = hash;
929       return hash;
930     }
931 
932     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil parseFrom(
933         com.google.protobuf.ByteString data)
934         throws com.google.protobuf.InvalidProtocolBufferException {
935       return PARSER.parseFrom(data);
936     }
937     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil parseFrom(
938         com.google.protobuf.ByteString data,
939         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
940         throws com.google.protobuf.InvalidProtocolBufferException {
941       return PARSER.parseFrom(data, extensionRegistry);
942     }
943     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil parseFrom(byte[] data)
944         throws com.google.protobuf.InvalidProtocolBufferException {
945       return PARSER.parseFrom(data);
946     }
947     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil parseFrom(
948         byte[] data,
949         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
950         throws com.google.protobuf.InvalidProtocolBufferException {
951       return PARSER.parseFrom(data, extensionRegistry);
952     }
953     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil parseFrom(java.io.InputStream input)
954         throws java.io.IOException {
955       return com.google.protobuf.GeneratedMessageV3
956           .parseWithIOException(PARSER, input);
957     }
958     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil parseFrom(
959         java.io.InputStream input,
960         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
961         throws java.io.IOException {
962       return com.google.protobuf.GeneratedMessageV3
963           .parseWithIOException(PARSER, input, extensionRegistry);
964     }
965     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil parseDelimitedFrom(java.io.InputStream input)
966         throws java.io.IOException {
967       return com.google.protobuf.GeneratedMessageV3
968           .parseDelimitedWithIOException(PARSER, input);
969     }
970     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil parseDelimitedFrom(
971         java.io.InputStream input,
972         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
973         throws java.io.IOException {
974       return com.google.protobuf.GeneratedMessageV3
975           .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
976     }
977     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil parseFrom(
978         com.google.protobuf.CodedInputStream input)
979         throws java.io.IOException {
980       return com.google.protobuf.GeneratedMessageV3
981           .parseWithIOException(PARSER, input);
982     }
983     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil parseFrom(
984         com.google.protobuf.CodedInputStream input,
985         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
986         throws java.io.IOException {
987       return com.google.protobuf.GeneratedMessageV3
988           .parseWithIOException(PARSER, input, extensionRegistry);
989     }
990 
991     public Builder newBuilderForType() { return newBuilder(); }
992     public static Builder newBuilder() {
993       return DEFAULT_INSTANCE.toBuilder();
994     }
995     public static Builder newBuilder(org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil prototype) {
996       return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
997     }
998     public Builder toBuilder() {
999       return this == DEFAULT_INSTANCE
1000           ? new Builder() : new Builder().mergeFrom(this);
1001     }
1002 
1003     @java.lang.Override
1004     protected Builder newBuilderForType(
1005         com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
1006       Builder builder = new Builder(parent);
1007       return builder;
1008     }
1009     /**
1010      * Protobuf type {@code org.opentrafficsim.aimsun.proto.SimulateUntil}
1011      */
1012     public static final class Builder extends
1013         com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
1014         // @@protoc_insertion_point(builder_implements:org.opentrafficsim.aimsun.proto.SimulateUntil)
1015         org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntilOrBuilder {
1016       public static final com.google.protobuf.Descriptors.Descriptor
1017           getDescriptor() {
1018         return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.internal_static_org_opentrafficsim_aimsun_proto_SimulateUntil_descriptor;
1019       }
1020 
1021       protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
1022           internalGetFieldAccessorTable() {
1023         return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.internal_static_org_opentrafficsim_aimsun_proto_SimulateUntil_fieldAccessorTable
1024             .ensureFieldAccessorsInitialized(
1025                 org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil.class, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil.Builder.class);
1026       }
1027 
1028       // Construct using org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil.newBuilder()
1029       private Builder() {
1030         maybeForceBuilderInitialization();
1031       }
1032 
1033       private Builder(
1034           com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
1035         super(parent);
1036         maybeForceBuilderInitialization();
1037       }
1038       private void maybeForceBuilderInitialization() {
1039         if (com.google.protobuf.GeneratedMessageV3
1040                 .alwaysUseFieldBuilders) {
1041         }
1042       }
1043       public Builder clear() {
1044         super.clear();
1045         time_ = 0D;
1046         bitField0_ = (bitField0_ & ~0x00000001);
1047         return this;
1048       }
1049 
1050       public com.google.protobuf.Descriptors.Descriptor
1051           getDescriptorForType() {
1052         return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.internal_static_org_opentrafficsim_aimsun_proto_SimulateUntil_descriptor;
1053       }
1054 
1055       public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil getDefaultInstanceForType() {
1056         return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil.getDefaultInstance();
1057       }
1058 
1059       public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil build() {
1060         org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil result = buildPartial();
1061         if (!result.isInitialized()) {
1062           throw newUninitializedMessageException(result);
1063         }
1064         return result;
1065       }
1066 
1067       public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil buildPartial() {
1068         org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil result = new org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil(this);
1069         int from_bitField0_ = bitField0_;
1070         int to_bitField0_ = 0;
1071         if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
1072           to_bitField0_ |= 0x00000001;
1073         }
1074         result.time_ = time_;
1075         result.bitField0_ = to_bitField0_;
1076         onBuilt();
1077         return result;
1078       }
1079 
1080       public Builder clone() {
1081         return (Builder) super.clone();
1082       }
1083       public Builder setField(
1084           com.google.protobuf.Descriptors.FieldDescriptor field,
1085           Object value) {
1086         return (Builder) super.setField(field, value);
1087       }
1088       public Builder clearField(
1089           com.google.protobuf.Descriptors.FieldDescriptor field) {
1090         return (Builder) super.clearField(field);
1091       }
1092       public Builder clearOneof(
1093           com.google.protobuf.Descriptors.OneofDescriptor oneof) {
1094         return (Builder) super.clearOneof(oneof);
1095       }
1096       public Builder setRepeatedField(
1097           com.google.protobuf.Descriptors.FieldDescriptor field,
1098           int index, Object value) {
1099         return (Builder) super.setRepeatedField(field, index, value);
1100       }
1101       public Builder addRepeatedField(
1102           com.google.protobuf.Descriptors.FieldDescriptor field,
1103           Object value) {
1104         return (Builder) super.addRepeatedField(field, value);
1105       }
1106       public Builder mergeFrom(com.google.protobuf.Message other) {
1107         if (other instanceof org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil) {
1108           return mergeFrom((org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil)other);
1109         } else {
1110           super.mergeFrom(other);
1111           return this;
1112         }
1113       }
1114 
1115       public Builder mergeFrom(org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil other) {
1116         if (other == org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil.getDefaultInstance()) return this;
1117         if (other.hasTime()) {
1118           setTime(other.getTime());
1119         }
1120         this.mergeUnknownFields(other.unknownFields);
1121         onChanged();
1122         return this;
1123       }
1124 
1125       public final boolean isInitialized() {
1126         if (!hasTime()) {
1127           return false;
1128         }
1129         return true;
1130       }
1131 
1132       public Builder mergeFrom(
1133           com.google.protobuf.CodedInputStream input,
1134           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1135           throws java.io.IOException {
1136         org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil parsedMessage = null;
1137         try {
1138           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
1139         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
1140           parsedMessage = (org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil) e.getUnfinishedMessage();
1141           throw e.unwrapIOException();
1142         } finally {
1143           if (parsedMessage != null) {
1144             mergeFrom(parsedMessage);
1145           }
1146         }
1147         return this;
1148       }
1149       private int bitField0_;
1150 
1151       private double time_ ;
1152       /**
1153        * <code>required double time = 1;</code>
1154        */
1155       public boolean hasTime() {
1156         return ((bitField0_ & 0x00000001) == 0x00000001);
1157       }
1158       /**
1159        * <code>required double time = 1;</code>
1160        */
1161       public double getTime() {
1162         return time_;
1163       }
1164       /**
1165        * <code>required double time = 1;</code>
1166        */
1167       public Builder setTime(double value) {
1168         bitField0_ |= 0x00000001;
1169         time_ = value;
1170         onChanged();
1171         return this;
1172       }
1173       /**
1174        * <code>required double time = 1;</code>
1175        */
1176       public Builder clearTime() {
1177         bitField0_ = (bitField0_ & ~0x00000001);
1178         time_ = 0D;
1179         onChanged();
1180         return this;
1181       }
1182       public final Builder setUnknownFields(
1183           final com.google.protobuf.UnknownFieldSet unknownFields) {
1184         return super.setUnknownFields(unknownFields);
1185       }
1186 
1187       public final Builder mergeUnknownFields(
1188           final com.google.protobuf.UnknownFieldSet unknownFields) {
1189         return super.mergeUnknownFields(unknownFields);
1190       }
1191 
1192 
1193       // @@protoc_insertion_point(builder_scope:org.opentrafficsim.aimsun.proto.SimulateUntil)
1194     }
1195 
1196     // @@protoc_insertion_point(class_scope:org.opentrafficsim.aimsun.proto.SimulateUntil)
1197     private static final org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil DEFAULT_INSTANCE;
1198     static {
1199       DEFAULT_INSTANCE = new org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil();
1200     }
1201 
1202     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil getDefaultInstance() {
1203       return DEFAULT_INSTANCE;
1204     }
1205 
1206     @java.lang.Deprecated public static final com.google.protobuf.Parser<SimulateUntil>
1207         PARSER = new com.google.protobuf.AbstractParser<SimulateUntil>() {
1208       public SimulateUntil parsePartialFrom(
1209           com.google.protobuf.CodedInputStream input,
1210           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1211           throws com.google.protobuf.InvalidProtocolBufferException {
1212           return new SimulateUntil(input, extensionRegistry);
1213       }
1214     };
1215 
1216     public static com.google.protobuf.Parser<SimulateUntil> parser() {
1217       return PARSER;
1218     }
1219 
1220     @java.lang.Override
1221     public com.google.protobuf.Parser<SimulateUntil> getParserForType() {
1222       return PARSER;
1223     }
1224 
1225     public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil getDefaultInstanceForType() {
1226       return DEFAULT_INSTANCE;
1227     }
1228 
1229   }
1230 
1231   public interface GTUPositionsOrBuilder extends
1232       // @@protoc_insertion_point(interface_extends:org.opentrafficsim.aimsun.proto.GTUPositions)
1233       com.google.protobuf.MessageOrBuilder {
1234 
1235     /**
1236      * <code>repeated .org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition gtuPos = 1;</code>
1237      */
1238     java.util.List<org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition> 
1239         getGtuPosList();
1240     /**
1241      * <code>repeated .org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition gtuPos = 1;</code>
1242      */
1243     org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition getGtuPos(int index);
1244     /**
1245      * <code>repeated .org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition gtuPos = 1;</code>
1246      */
1247     int getGtuPosCount();
1248     /**
1249      * <code>repeated .org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition gtuPos = 1;</code>
1250      */
1251     java.util.List<? extends org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPositionOrBuilder> 
1252         getGtuPosOrBuilderList();
1253     /**
1254      * <code>repeated .org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition gtuPos = 1;</code>
1255      */
1256     org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPositionOrBuilder getGtuPosOrBuilder(
1257         int index);
1258 
1259     /**
1260      * <code>required string status = 2;</code>
1261      */
1262     boolean hasStatus();
1263     /**
1264      * <code>required string status = 2;</code>
1265      */
1266     java.lang.String getStatus();
1267     /**
1268      * <code>required string status = 2;</code>
1269      */
1270     com.google.protobuf.ByteString
1271         getStatusBytes();
1272   }
1273   /**
1274    * Protobuf type {@code org.opentrafficsim.aimsun.proto.GTUPositions}
1275    */
1276   public  static final class GTUPositions extends
1277       com.google.protobuf.GeneratedMessageV3 implements
1278       // @@protoc_insertion_point(message_implements:org.opentrafficsim.aimsun.proto.GTUPositions)
1279       GTUPositionsOrBuilder {
1280     // Use GTUPositions.newBuilder() to construct.
1281     private GTUPositions(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
1282       super(builder);
1283     }
1284     private GTUPositions() {
1285       gtuPos_ = java.util.Collections.emptyList();
1286       status_ = "";
1287     }
1288 
1289     @java.lang.Override
1290     public final com.google.protobuf.UnknownFieldSet
1291     getUnknownFields() {
1292       return this.unknownFields;
1293     }
1294     private GTUPositions(
1295         com.google.protobuf.CodedInputStream input,
1296         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1297         throws com.google.protobuf.InvalidProtocolBufferException {
1298       this();
1299       int mutable_bitField0_ = 0;
1300       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
1301           com.google.protobuf.UnknownFieldSet.newBuilder();
1302       try {
1303         boolean done = false;
1304         while (!done) {
1305           int tag = input.readTag();
1306           switch (tag) {
1307             case 0:
1308               done = true;
1309               break;
1310             default: {
1311               if (!parseUnknownField(input, unknownFields,
1312                                      extensionRegistry, tag)) {
1313                 done = true;
1314               }
1315               break;
1316             }
1317             case 10: {
1318               if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
1319                 gtuPos_ = new java.util.ArrayList<org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition>();
1320                 mutable_bitField0_ |= 0x00000001;
1321               }
1322               gtuPos_.add(
1323                   input.readMessage(org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition.PARSER, extensionRegistry));
1324               break;
1325             }
1326             case 18: {
1327               com.google.protobuf.ByteString bs = input.readBytes();
1328               bitField0_ |= 0x00000001;
1329               status_ = bs;
1330               break;
1331             }
1332           }
1333         }
1334       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
1335         throw e.setUnfinishedMessage(this);
1336       } catch (java.io.IOException e) {
1337         throw new com.google.protobuf.InvalidProtocolBufferException(
1338             e).setUnfinishedMessage(this);
1339       } finally {
1340         if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
1341           gtuPos_ = java.util.Collections.unmodifiableList(gtuPos_);
1342         }
1343         this.unknownFields = unknownFields.build();
1344         makeExtensionsImmutable();
1345       }
1346     }
1347     public static final com.google.protobuf.Descriptors.Descriptor
1348         getDescriptor() {
1349       return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.internal_static_org_opentrafficsim_aimsun_proto_GTUPositions_descriptor;
1350     }
1351 
1352     protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
1353         internalGetFieldAccessorTable() {
1354       return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.internal_static_org_opentrafficsim_aimsun_proto_GTUPositions_fieldAccessorTable
1355           .ensureFieldAccessorsInitialized(
1356               org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.class, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.Builder.class);
1357     }
1358 
1359     public interface GTUPositionOrBuilder extends
1360         // @@protoc_insertion_point(interface_extends:org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition)
1361         com.google.protobuf.MessageOrBuilder {
1362 
1363       /**
1364        * <code>required string gtuId = 1;</code>
1365        */
1366       boolean hasGtuId();
1367       /**
1368        * <code>required string gtuId = 1;</code>
1369        */
1370       java.lang.String getGtuId();
1371       /**
1372        * <code>required string gtuId = 1;</code>
1373        */
1374       com.google.protobuf.ByteString
1375           getGtuIdBytes();
1376 
1377       /**
1378        * <code>required double x = 2;</code>
1379        */
1380       boolean hasX();
1381       /**
1382        * <code>required double x = 2;</code>
1383        */
1384       double getX();
1385 
1386       /**
1387        * <code>required double y = 3;</code>
1388        */
1389       boolean hasY();
1390       /**
1391        * <code>required double y = 3;</code>
1392        */
1393       double getY();
1394 
1395       /**
1396        * <code>optional double z = 4;</code>
1397        */
1398       boolean hasZ();
1399       /**
1400        * <code>optional double z = 4;</code>
1401        */
1402       double getZ();
1403 
1404       /**
1405        * <code>required double angle = 5;</code>
1406        */
1407       boolean hasAngle();
1408       /**
1409        * <code>required double angle = 5;</code>
1410        */
1411       double getAngle();
1412 
1413       /**
1414        * <code>required double width = 6;</code>
1415        */
1416       boolean hasWidth();
1417       /**
1418        * <code>required double width = 6;</code>
1419        */
1420       double getWidth();
1421 
1422       /**
1423        * <code>required double length = 7;</code>
1424        */
1425       boolean hasLength();
1426       /**
1427        * <code>required double length = 7;</code>
1428        */
1429       double getLength();
1430 
1431       /**
1432        * <code>required int32 gtuTypeId = 8;</code>
1433        */
1434       boolean hasGtuTypeId();
1435       /**
1436        * <code>required int32 gtuTypeId = 8;</code>
1437        */
1438       int getGtuTypeId();
1439 
1440       /**
1441        * <code>required double speed = 9;</code>
1442        */
1443       boolean hasSpeed();
1444       /**
1445        * <code>required double speed = 9;</code>
1446        */
1447       double getSpeed();
1448     }
1449     /**
1450      * Protobuf type {@code org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition}
1451      */
1452     public  static final class GTUPosition extends
1453         com.google.protobuf.GeneratedMessageV3 implements
1454         // @@protoc_insertion_point(message_implements:org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition)
1455         GTUPositionOrBuilder {
1456       // Use GTUPosition.newBuilder() to construct.
1457       private GTUPosition(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
1458         super(builder);
1459       }
1460       private GTUPosition() {
1461         gtuId_ = "";
1462         x_ = 0D;
1463         y_ = 0D;
1464         z_ = 0D;
1465         angle_ = 0D;
1466         width_ = 0D;
1467         length_ = 0D;
1468         gtuTypeId_ = 0;
1469         speed_ = 0D;
1470       }
1471 
1472       @java.lang.Override
1473       public final com.google.protobuf.UnknownFieldSet
1474       getUnknownFields() {
1475         return this.unknownFields;
1476       }
1477       private GTUPosition(
1478           com.google.protobuf.CodedInputStream input,
1479           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1480           throws com.google.protobuf.InvalidProtocolBufferException {
1481         this();
1482         int mutable_bitField0_ = 0;
1483         com.google.protobuf.UnknownFieldSet.Builder unknownFields =
1484             com.google.protobuf.UnknownFieldSet.newBuilder();
1485         try {
1486           boolean done = false;
1487           while (!done) {
1488             int tag = input.readTag();
1489             switch (tag) {
1490               case 0:
1491                 done = true;
1492                 break;
1493               default: {
1494                 if (!parseUnknownField(input, unknownFields,
1495                                        extensionRegistry, tag)) {
1496                   done = true;
1497                 }
1498                 break;
1499               }
1500               case 10: {
1501                 com.google.protobuf.ByteString bs = input.readBytes();
1502                 bitField0_ |= 0x00000001;
1503                 gtuId_ = bs;
1504                 break;
1505               }
1506               case 17: {
1507                 bitField0_ |= 0x00000002;
1508                 x_ = input.readDouble();
1509                 break;
1510               }
1511               case 25: {
1512                 bitField0_ |= 0x00000004;
1513                 y_ = input.readDouble();
1514                 break;
1515               }
1516               case 33: {
1517                 bitField0_ |= 0x00000008;
1518                 z_ = input.readDouble();
1519                 break;
1520               }
1521               case 41: {
1522                 bitField0_ |= 0x00000010;
1523                 angle_ = input.readDouble();
1524                 break;
1525               }
1526               case 49: {
1527                 bitField0_ |= 0x00000020;
1528                 width_ = input.readDouble();
1529                 break;
1530               }
1531               case 57: {
1532                 bitField0_ |= 0x00000040;
1533                 length_ = input.readDouble();
1534                 break;
1535               }
1536               case 64: {
1537                 bitField0_ |= 0x00000080;
1538                 gtuTypeId_ = input.readInt32();
1539                 break;
1540               }
1541               case 73: {
1542                 bitField0_ |= 0x00000100;
1543                 speed_ = input.readDouble();
1544                 break;
1545               }
1546             }
1547           }
1548         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
1549           throw e.setUnfinishedMessage(this);
1550         } catch (java.io.IOException e) {
1551           throw new com.google.protobuf.InvalidProtocolBufferException(
1552               e).setUnfinishedMessage(this);
1553         } finally {
1554           this.unknownFields = unknownFields.build();
1555           makeExtensionsImmutable();
1556         }
1557       }
1558       public static final com.google.protobuf.Descriptors.Descriptor
1559           getDescriptor() {
1560         return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.internal_static_org_opentrafficsim_aimsun_proto_GTUPositions_GTUPosition_descriptor;
1561       }
1562 
1563       protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
1564           internalGetFieldAccessorTable() {
1565         return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.internal_static_org_opentrafficsim_aimsun_proto_GTUPositions_GTUPosition_fieldAccessorTable
1566             .ensureFieldAccessorsInitialized(
1567                 org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition.class, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition.Builder.class);
1568       }
1569 
1570       private int bitField0_;
1571       public static final int GTUID_FIELD_NUMBER = 1;
1572       private volatile java.lang.Object gtuId_;
1573       /**
1574        * <code>required string gtuId = 1;</code>
1575        */
1576       public boolean hasGtuId() {
1577         return ((bitField0_ & 0x00000001) == 0x00000001);
1578       }
1579       /**
1580        * <code>required string gtuId = 1;</code>
1581        */
1582       public java.lang.String getGtuId() {
1583         java.lang.Object ref = gtuId_;
1584         if (ref instanceof java.lang.String) {
1585           return (java.lang.String) ref;
1586         } else {
1587           com.google.protobuf.ByteString bs = 
1588               (com.google.protobuf.ByteString) ref;
1589           java.lang.String s = bs.toStringUtf8();
1590           if (bs.isValidUtf8()) {
1591             gtuId_ = s;
1592           }
1593           return s;
1594         }
1595       }
1596       /**
1597        * <code>required string gtuId = 1;</code>
1598        */
1599       public com.google.protobuf.ByteString
1600           getGtuIdBytes() {
1601         java.lang.Object ref = gtuId_;
1602         if (ref instanceof java.lang.String) {
1603           com.google.protobuf.ByteString b = 
1604               com.google.protobuf.ByteString.copyFromUtf8(
1605                   (java.lang.String) ref);
1606           gtuId_ = b;
1607           return b;
1608         } else {
1609           return (com.google.protobuf.ByteString) ref;
1610         }
1611       }
1612 
1613       public static final int X_FIELD_NUMBER = 2;
1614       private double x_;
1615       /**
1616        * <code>required double x = 2;</code>
1617        */
1618       public boolean hasX() {
1619         return ((bitField0_ & 0x00000002) == 0x00000002);
1620       }
1621       /**
1622        * <code>required double x = 2;</code>
1623        */
1624       public double getX() {
1625         return x_;
1626       }
1627 
1628       public static final int Y_FIELD_NUMBER = 3;
1629       private double y_;
1630       /**
1631        * <code>required double y = 3;</code>
1632        */
1633       public boolean hasY() {
1634         return ((bitField0_ & 0x00000004) == 0x00000004);
1635       }
1636       /**
1637        * <code>required double y = 3;</code>
1638        */
1639       public double getY() {
1640         return y_;
1641       }
1642 
1643       public static final int Z_FIELD_NUMBER = 4;
1644       private double z_;
1645       /**
1646        * <code>optional double z = 4;</code>
1647        */
1648       public boolean hasZ() {
1649         return ((bitField0_ & 0x00000008) == 0x00000008);
1650       }
1651       /**
1652        * <code>optional double z = 4;</code>
1653        */
1654       public double getZ() {
1655         return z_;
1656       }
1657 
1658       public static final int ANGLE_FIELD_NUMBER = 5;
1659       private double angle_;
1660       /**
1661        * <code>required double angle = 5;</code>
1662        */
1663       public boolean hasAngle() {
1664         return ((bitField0_ & 0x00000010) == 0x00000010);
1665       }
1666       /**
1667        * <code>required double angle = 5;</code>
1668        */
1669       public double getAngle() {
1670         return angle_;
1671       }
1672 
1673       public static final int WIDTH_FIELD_NUMBER = 6;
1674       private double width_;
1675       /**
1676        * <code>required double width = 6;</code>
1677        */
1678       public boolean hasWidth() {
1679         return ((bitField0_ & 0x00000020) == 0x00000020);
1680       }
1681       /**
1682        * <code>required double width = 6;</code>
1683        */
1684       public double getWidth() {
1685         return width_;
1686       }
1687 
1688       public static final int LENGTH_FIELD_NUMBER = 7;
1689       private double length_;
1690       /**
1691        * <code>required double length = 7;</code>
1692        */
1693       public boolean hasLength() {
1694         return ((bitField0_ & 0x00000040) == 0x00000040);
1695       }
1696       /**
1697        * <code>required double length = 7;</code>
1698        */
1699       public double getLength() {
1700         return length_;
1701       }
1702 
1703       public static final int GTUTYPEID_FIELD_NUMBER = 8;
1704       private int gtuTypeId_;
1705       /**
1706        * <code>required int32 gtuTypeId = 8;</code>
1707        */
1708       public boolean hasGtuTypeId() {
1709         return ((bitField0_ & 0x00000080) == 0x00000080);
1710       }
1711       /**
1712        * <code>required int32 gtuTypeId = 8;</code>
1713        */
1714       public int getGtuTypeId() {
1715         return gtuTypeId_;
1716       }
1717 
1718       public static final int SPEED_FIELD_NUMBER = 9;
1719       private double speed_;
1720       /**
1721        * <code>required double speed = 9;</code>
1722        */
1723       public boolean hasSpeed() {
1724         return ((bitField0_ & 0x00000100) == 0x00000100);
1725       }
1726       /**
1727        * <code>required double speed = 9;</code>
1728        */
1729       public double getSpeed() {
1730         return speed_;
1731       }
1732 
1733       private byte memoizedIsInitialized = -1;
1734       public final boolean isInitialized() {
1735         byte isInitialized = memoizedIsInitialized;
1736         if (isInitialized == 1) return true;
1737         if (isInitialized == 0) return false;
1738 
1739         if (!hasGtuId()) {
1740           memoizedIsInitialized = 0;
1741           return false;
1742         }
1743         if (!hasX()) {
1744           memoizedIsInitialized = 0;
1745           return false;
1746         }
1747         if (!hasY()) {
1748           memoizedIsInitialized = 0;
1749           return false;
1750         }
1751         if (!hasAngle()) {
1752           memoizedIsInitialized = 0;
1753           return false;
1754         }
1755         if (!hasWidth()) {
1756           memoizedIsInitialized = 0;
1757           return false;
1758         }
1759         if (!hasLength()) {
1760           memoizedIsInitialized = 0;
1761           return false;
1762         }
1763         if (!hasGtuTypeId()) {
1764           memoizedIsInitialized = 0;
1765           return false;
1766         }
1767         if (!hasSpeed()) {
1768           memoizedIsInitialized = 0;
1769           return false;
1770         }
1771         memoizedIsInitialized = 1;
1772         return true;
1773       }
1774 
1775       public void writeTo(com.google.protobuf.CodedOutputStream output)
1776                           throws java.io.IOException {
1777         if (((bitField0_ & 0x00000001) == 0x00000001)) {
1778           com.google.protobuf.GeneratedMessageV3.writeString(output, 1, gtuId_);
1779         }
1780         if (((bitField0_ & 0x00000002) == 0x00000002)) {
1781           output.writeDouble(2, x_);
1782         }
1783         if (((bitField0_ & 0x00000004) == 0x00000004)) {
1784           output.writeDouble(3, y_);
1785         }
1786         if (((bitField0_ & 0x00000008) == 0x00000008)) {
1787           output.writeDouble(4, z_);
1788         }
1789         if (((bitField0_ & 0x00000010) == 0x00000010)) {
1790           output.writeDouble(5, angle_);
1791         }
1792         if (((bitField0_ & 0x00000020) == 0x00000020)) {
1793           output.writeDouble(6, width_);
1794         }
1795         if (((bitField0_ & 0x00000040) == 0x00000040)) {
1796           output.writeDouble(7, length_);
1797         }
1798         if (((bitField0_ & 0x00000080) == 0x00000080)) {
1799           output.writeInt32(8, gtuTypeId_);
1800         }
1801         if (((bitField0_ & 0x00000100) == 0x00000100)) {
1802           output.writeDouble(9, speed_);
1803         }
1804         unknownFields.writeTo(output);
1805       }
1806 
1807       public int getSerializedSize() {
1808         int size = memoizedSize;
1809         if (size != -1) return size;
1810 
1811         size = 0;
1812         if (((bitField0_ & 0x00000001) == 0x00000001)) {
1813           size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, gtuId_);
1814         }
1815         if (((bitField0_ & 0x00000002) == 0x00000002)) {
1816           size += com.google.protobuf.CodedOutputStream
1817             .computeDoubleSize(2, x_);
1818         }
1819         if (((bitField0_ & 0x00000004) == 0x00000004)) {
1820           size += com.google.protobuf.CodedOutputStream
1821             .computeDoubleSize(3, y_);
1822         }
1823         if (((bitField0_ & 0x00000008) == 0x00000008)) {
1824           size += com.google.protobuf.CodedOutputStream
1825             .computeDoubleSize(4, z_);
1826         }
1827         if (((bitField0_ & 0x00000010) == 0x00000010)) {
1828           size += com.google.protobuf.CodedOutputStream
1829             .computeDoubleSize(5, angle_);
1830         }
1831         if (((bitField0_ & 0x00000020) == 0x00000020)) {
1832           size += com.google.protobuf.CodedOutputStream
1833             .computeDoubleSize(6, width_);
1834         }
1835         if (((bitField0_ & 0x00000040) == 0x00000040)) {
1836           size += com.google.protobuf.CodedOutputStream
1837             .computeDoubleSize(7, length_);
1838         }
1839         if (((bitField0_ & 0x00000080) == 0x00000080)) {
1840           size += com.google.protobuf.CodedOutputStream
1841             .computeInt32Size(8, gtuTypeId_);
1842         }
1843         if (((bitField0_ & 0x00000100) == 0x00000100)) {
1844           size += com.google.protobuf.CodedOutputStream
1845             .computeDoubleSize(9, speed_);
1846         }
1847         size += unknownFields.getSerializedSize();
1848         memoizedSize = size;
1849         return size;
1850       }
1851 
1852       private static final long serialVersionUID = 0L;
1853       @java.lang.Override
1854       public boolean equals(final java.lang.Object obj) {
1855         if (obj == this) {
1856          return true;
1857         }
1858         if (!(obj instanceof org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition)) {
1859           return super.equals(obj);
1860         }
1861         org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition other = (org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition) obj;
1862 
1863         boolean result = true;
1864         result = result && (hasGtuId() == other.hasGtuId());
1865         if (hasGtuId()) {
1866           result = result && getGtuId()
1867               .equals(other.getGtuId());
1868         }
1869         result = result && (hasX() == other.hasX());
1870         if (hasX()) {
1871           result = result && (
1872               java.lang.Double.doubleToLongBits(getX())
1873               == java.lang.Double.doubleToLongBits(
1874                   other.getX()));
1875         }
1876         result = result && (hasY() == other.hasY());
1877         if (hasY()) {
1878           result = result && (
1879               java.lang.Double.doubleToLongBits(getY())
1880               == java.lang.Double.doubleToLongBits(
1881                   other.getY()));
1882         }
1883         result = result && (hasZ() == other.hasZ());
1884         if (hasZ()) {
1885           result = result && (
1886               java.lang.Double.doubleToLongBits(getZ())
1887               == java.lang.Double.doubleToLongBits(
1888                   other.getZ()));
1889         }
1890         result = result && (hasAngle() == other.hasAngle());
1891         if (hasAngle()) {
1892           result = result && (
1893               java.lang.Double.doubleToLongBits(getAngle())
1894               == java.lang.Double.doubleToLongBits(
1895                   other.getAngle()));
1896         }
1897         result = result && (hasWidth() == other.hasWidth());
1898         if (hasWidth()) {
1899           result = result && (
1900               java.lang.Double.doubleToLongBits(getWidth())
1901               == java.lang.Double.doubleToLongBits(
1902                   other.getWidth()));
1903         }
1904         result = result && (hasLength() == other.hasLength());
1905         if (hasLength()) {
1906           result = result && (
1907               java.lang.Double.doubleToLongBits(getLength())
1908               == java.lang.Double.doubleToLongBits(
1909                   other.getLength()));
1910         }
1911         result = result && (hasGtuTypeId() == other.hasGtuTypeId());
1912         if (hasGtuTypeId()) {
1913           result = result && (getGtuTypeId()
1914               == other.getGtuTypeId());
1915         }
1916         result = result && (hasSpeed() == other.hasSpeed());
1917         if (hasSpeed()) {
1918           result = result && (
1919               java.lang.Double.doubleToLongBits(getSpeed())
1920               == java.lang.Double.doubleToLongBits(
1921                   other.getSpeed()));
1922         }
1923         result = result && unknownFields.equals(other.unknownFields);
1924         return result;
1925       }
1926 
1927       @java.lang.Override
1928       public int hashCode() {
1929         if (memoizedHashCode != 0) {
1930           return memoizedHashCode;
1931         }
1932         int hash = 41;
1933         hash = (19 * hash) + getDescriptor().hashCode();
1934         if (hasGtuId()) {
1935           hash = (37 * hash) + GTUID_FIELD_NUMBER;
1936           hash = (53 * hash) + getGtuId().hashCode();
1937         }
1938         if (hasX()) {
1939           hash = (37 * hash) + X_FIELD_NUMBER;
1940           hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
1941               java.lang.Double.doubleToLongBits(getX()));
1942         }
1943         if (hasY()) {
1944           hash = (37 * hash) + Y_FIELD_NUMBER;
1945           hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
1946               java.lang.Double.doubleToLongBits(getY()));
1947         }
1948         if (hasZ()) {
1949           hash = (37 * hash) + Z_FIELD_NUMBER;
1950           hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
1951               java.lang.Double.doubleToLongBits(getZ()));
1952         }
1953         if (hasAngle()) {
1954           hash = (37 * hash) + ANGLE_FIELD_NUMBER;
1955           hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
1956               java.lang.Double.doubleToLongBits(getAngle()));
1957         }
1958         if (hasWidth()) {
1959           hash = (37 * hash) + WIDTH_FIELD_NUMBER;
1960           hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
1961               java.lang.Double.doubleToLongBits(getWidth()));
1962         }
1963         if (hasLength()) {
1964           hash = (37 * hash) + LENGTH_FIELD_NUMBER;
1965           hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
1966               java.lang.Double.doubleToLongBits(getLength()));
1967         }
1968         if (hasGtuTypeId()) {
1969           hash = (37 * hash) + GTUTYPEID_FIELD_NUMBER;
1970           hash = (53 * hash) + getGtuTypeId();
1971         }
1972         if (hasSpeed()) {
1973           hash = (37 * hash) + SPEED_FIELD_NUMBER;
1974           hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
1975               java.lang.Double.doubleToLongBits(getSpeed()));
1976         }
1977         hash = (29 * hash) + unknownFields.hashCode();
1978         memoizedHashCode = hash;
1979         return hash;
1980       }
1981 
1982       public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition parseFrom(
1983           com.google.protobuf.ByteString data)
1984           throws com.google.protobuf.InvalidProtocolBufferException {
1985         return PARSER.parseFrom(data);
1986       }
1987       public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition parseFrom(
1988           com.google.protobuf.ByteString data,
1989           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1990           throws com.google.protobuf.InvalidProtocolBufferException {
1991         return PARSER.parseFrom(data, extensionRegistry);
1992       }
1993       public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition parseFrom(byte[] data)
1994           throws com.google.protobuf.InvalidProtocolBufferException {
1995         return PARSER.parseFrom(data);
1996       }
1997       public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition parseFrom(
1998           byte[] data,
1999           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2000           throws com.google.protobuf.InvalidProtocolBufferException {
2001         return PARSER.parseFrom(data, extensionRegistry);
2002       }
2003       public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition parseFrom(java.io.InputStream input)
2004           throws java.io.IOException {
2005         return com.google.protobuf.GeneratedMessageV3
2006             .parseWithIOException(PARSER, input);
2007       }
2008       public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition parseFrom(
2009           java.io.InputStream input,
2010           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2011           throws java.io.IOException {
2012         return com.google.protobuf.GeneratedMessageV3
2013             .parseWithIOException(PARSER, input, extensionRegistry);
2014       }
2015       public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition parseDelimitedFrom(java.io.InputStream input)
2016           throws java.io.IOException {
2017         return com.google.protobuf.GeneratedMessageV3
2018             .parseDelimitedWithIOException(PARSER, input);
2019       }
2020       public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition parseDelimitedFrom(
2021           java.io.InputStream input,
2022           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2023           throws java.io.IOException {
2024         return com.google.protobuf.GeneratedMessageV3
2025             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
2026       }
2027       public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition parseFrom(
2028           com.google.protobuf.CodedInputStream input)
2029           throws java.io.IOException {
2030         return com.google.protobuf.GeneratedMessageV3
2031             .parseWithIOException(PARSER, input);
2032       }
2033       public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition parseFrom(
2034           com.google.protobuf.CodedInputStream input,
2035           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2036           throws java.io.IOException {
2037         return com.google.protobuf.GeneratedMessageV3
2038             .parseWithIOException(PARSER, input, extensionRegistry);
2039       }
2040 
2041       public Builder newBuilderForType() { return newBuilder(); }
2042       public static Builder newBuilder() {
2043         return DEFAULT_INSTANCE.toBuilder();
2044       }
2045       public static Builder newBuilder(org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition prototype) {
2046         return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
2047       }
2048       public Builder toBuilder() {
2049         return this == DEFAULT_INSTANCE
2050             ? new Builder() : new Builder().mergeFrom(this);
2051       }
2052 
2053       @java.lang.Override
2054       protected Builder newBuilderForType(
2055           com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
2056         Builder builder = new Builder(parent);
2057         return builder;
2058       }
2059       /**
2060        * Protobuf type {@code org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition}
2061        */
2062       public static final class Builder extends
2063           com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
2064           // @@protoc_insertion_point(builder_implements:org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition)
2065           org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPositionOrBuilder {
2066         public static final com.google.protobuf.Descriptors.Descriptor
2067             getDescriptor() {
2068           return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.internal_static_org_opentrafficsim_aimsun_proto_GTUPositions_GTUPosition_descriptor;
2069         }
2070 
2071         protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
2072             internalGetFieldAccessorTable() {
2073           return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.internal_static_org_opentrafficsim_aimsun_proto_GTUPositions_GTUPosition_fieldAccessorTable
2074               .ensureFieldAccessorsInitialized(
2075                   org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition.class, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition.Builder.class);
2076         }
2077 
2078         // Construct using org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition.newBuilder()
2079         private Builder() {
2080           maybeForceBuilderInitialization();
2081         }
2082 
2083         private Builder(
2084             com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
2085           super(parent);
2086           maybeForceBuilderInitialization();
2087         }
2088         private void maybeForceBuilderInitialization() {
2089           if (com.google.protobuf.GeneratedMessageV3
2090                   .alwaysUseFieldBuilders) {
2091           }
2092         }
2093         public Builder clear() {
2094           super.clear();
2095           gtuId_ = "";
2096           bitField0_ = (bitField0_ & ~0x00000001);
2097           x_ = 0D;
2098           bitField0_ = (bitField0_ & ~0x00000002);
2099           y_ = 0D;
2100           bitField0_ = (bitField0_ & ~0x00000004);
2101           z_ = 0D;
2102           bitField0_ = (bitField0_ & ~0x00000008);
2103           angle_ = 0D;
2104           bitField0_ = (bitField0_ & ~0x00000010);
2105           width_ = 0D;
2106           bitField0_ = (bitField0_ & ~0x00000020);
2107           length_ = 0D;
2108           bitField0_ = (bitField0_ & ~0x00000040);
2109           gtuTypeId_ = 0;
2110           bitField0_ = (bitField0_ & ~0x00000080);
2111           speed_ = 0D;
2112           bitField0_ = (bitField0_ & ~0x00000100);
2113           return this;
2114         }
2115 
2116         public com.google.protobuf.Descriptors.Descriptor
2117             getDescriptorForType() {
2118           return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.internal_static_org_opentrafficsim_aimsun_proto_GTUPositions_GTUPosition_descriptor;
2119         }
2120 
2121         public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition getDefaultInstanceForType() {
2122           return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition.getDefaultInstance();
2123         }
2124 
2125         public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition build() {
2126           org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition result = buildPartial();
2127           if (!result.isInitialized()) {
2128             throw newUninitializedMessageException(result);
2129           }
2130           return result;
2131         }
2132 
2133         public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition buildPartial() {
2134           org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition result = new org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition(this);
2135           int from_bitField0_ = bitField0_;
2136           int to_bitField0_ = 0;
2137           if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
2138             to_bitField0_ |= 0x00000001;
2139           }
2140           result.gtuId_ = gtuId_;
2141           if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
2142             to_bitField0_ |= 0x00000002;
2143           }
2144           result.x_ = x_;
2145           if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
2146             to_bitField0_ |= 0x00000004;
2147           }
2148           result.y_ = y_;
2149           if (((from_bitField0_ & 0x00000008) == 0x00000008)) {
2150             to_bitField0_ |= 0x00000008;
2151           }
2152           result.z_ = z_;
2153           if (((from_bitField0_ & 0x00000010) == 0x00000010)) {
2154             to_bitField0_ |= 0x00000010;
2155           }
2156           result.angle_ = angle_;
2157           if (((from_bitField0_ & 0x00000020) == 0x00000020)) {
2158             to_bitField0_ |= 0x00000020;
2159           }
2160           result.width_ = width_;
2161           if (((from_bitField0_ & 0x00000040) == 0x00000040)) {
2162             to_bitField0_ |= 0x00000040;
2163           }
2164           result.length_ = length_;
2165           if (((from_bitField0_ & 0x00000080) == 0x00000080)) {
2166             to_bitField0_ |= 0x00000080;
2167           }
2168           result.gtuTypeId_ = gtuTypeId_;
2169           if (((from_bitField0_ & 0x00000100) == 0x00000100)) {
2170             to_bitField0_ |= 0x00000100;
2171           }
2172           result.speed_ = speed_;
2173           result.bitField0_ = to_bitField0_;
2174           onBuilt();
2175           return result;
2176         }
2177 
2178         public Builder clone() {
2179           return (Builder) super.clone();
2180         }
2181         public Builder setField(
2182             com.google.protobuf.Descriptors.FieldDescriptor field,
2183             Object value) {
2184           return (Builder) super.setField(field, value);
2185         }
2186         public Builder clearField(
2187             com.google.protobuf.Descriptors.FieldDescriptor field) {
2188           return (Builder) super.clearField(field);
2189         }
2190         public Builder clearOneof(
2191             com.google.protobuf.Descriptors.OneofDescriptor oneof) {
2192           return (Builder) super.clearOneof(oneof);
2193         }
2194         public Builder setRepeatedField(
2195             com.google.protobuf.Descriptors.FieldDescriptor field,
2196             int index, Object value) {
2197           return (Builder) super.setRepeatedField(field, index, value);
2198         }
2199         public Builder addRepeatedField(
2200             com.google.protobuf.Descriptors.FieldDescriptor field,
2201             Object value) {
2202           return (Builder) super.addRepeatedField(field, value);
2203         }
2204         public Builder mergeFrom(com.google.protobuf.Message other) {
2205           if (other instanceof org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition) {
2206             return mergeFrom((org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition)other);
2207           } else {
2208             super.mergeFrom(other);
2209             return this;
2210           }
2211         }
2212 
2213         public Builder mergeFrom(org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition other) {
2214           if (other == org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition.getDefaultInstance()) return this;
2215           if (other.hasGtuId()) {
2216             bitField0_ |= 0x00000001;
2217             gtuId_ = other.gtuId_;
2218             onChanged();
2219           }
2220           if (other.hasX()) {
2221             setX(other.getX());
2222           }
2223           if (other.hasY()) {
2224             setY(other.getY());
2225           }
2226           if (other.hasZ()) {
2227             setZ(other.getZ());
2228           }
2229           if (other.hasAngle()) {
2230             setAngle(other.getAngle());
2231           }
2232           if (other.hasWidth()) {
2233             setWidth(other.getWidth());
2234           }
2235           if (other.hasLength()) {
2236             setLength(other.getLength());
2237           }
2238           if (other.hasGtuTypeId()) {
2239             setGtuTypeId(other.getGtuTypeId());
2240           }
2241           if (other.hasSpeed()) {
2242             setSpeed(other.getSpeed());
2243           }
2244           this.mergeUnknownFields(other.unknownFields);
2245           onChanged();
2246           return this;
2247         }
2248 
2249         public final boolean isInitialized() {
2250           if (!hasGtuId()) {
2251             return false;
2252           }
2253           if (!hasX()) {
2254             return false;
2255           }
2256           if (!hasY()) {
2257             return false;
2258           }
2259           if (!hasAngle()) {
2260             return false;
2261           }
2262           if (!hasWidth()) {
2263             return false;
2264           }
2265           if (!hasLength()) {
2266             return false;
2267           }
2268           if (!hasGtuTypeId()) {
2269             return false;
2270           }
2271           if (!hasSpeed()) {
2272             return false;
2273           }
2274           return true;
2275         }
2276 
2277         public Builder mergeFrom(
2278             com.google.protobuf.CodedInputStream input,
2279             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2280             throws java.io.IOException {
2281           org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition parsedMessage = null;
2282           try {
2283             parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
2284           } catch (com.google.protobuf.InvalidProtocolBufferException e) {
2285             parsedMessage = (org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition) e.getUnfinishedMessage();
2286             throw e.unwrapIOException();
2287           } finally {
2288             if (parsedMessage != null) {
2289               mergeFrom(parsedMessage);
2290             }
2291           }
2292           return this;
2293         }
2294         private int bitField0_;
2295 
2296         private java.lang.Object gtuId_ = "";
2297         /**
2298          * <code>required string gtuId = 1;</code>
2299          */
2300         public boolean hasGtuId() {
2301           return ((bitField0_ & 0x00000001) == 0x00000001);
2302         }
2303         /**
2304          * <code>required string gtuId = 1;</code>
2305          */
2306         public java.lang.String getGtuId() {
2307           java.lang.Object ref = gtuId_;
2308           if (!(ref instanceof java.lang.String)) {
2309             com.google.protobuf.ByteString bs =
2310                 (com.google.protobuf.ByteString) ref;
2311             java.lang.String s = bs.toStringUtf8();
2312             if (bs.isValidUtf8()) {
2313               gtuId_ = s;
2314             }
2315             return s;
2316           } else {
2317             return (java.lang.String) ref;
2318           }
2319         }
2320         /**
2321          * <code>required string gtuId = 1;</code>
2322          */
2323         public com.google.protobuf.ByteString
2324             getGtuIdBytes() {
2325           java.lang.Object ref = gtuId_;
2326           if (ref instanceof String) {
2327             com.google.protobuf.ByteString b = 
2328                 com.google.protobuf.ByteString.copyFromUtf8(
2329                     (java.lang.String) ref);
2330             gtuId_ = b;
2331             return b;
2332           } else {
2333             return (com.google.protobuf.ByteString) ref;
2334           }
2335         }
2336         /**
2337          * <code>required string gtuId = 1;</code>
2338          */
2339         public Builder setGtuId(
2340             java.lang.String value) {
2341           if (value == null) {
2342     throw new NullPointerException();
2343   }
2344   bitField0_ |= 0x00000001;
2345           gtuId_ = value;
2346           onChanged();
2347           return this;
2348         }
2349         /**
2350          * <code>required string gtuId = 1;</code>
2351          */
2352         public Builder clearGtuId() {
2353           bitField0_ = (bitField0_ & ~0x00000001);
2354           gtuId_ = getDefaultInstance().getGtuId();
2355           onChanged();
2356           return this;
2357         }
2358         /**
2359          * <code>required string gtuId = 1;</code>
2360          */
2361         public Builder setGtuIdBytes(
2362             com.google.protobuf.ByteString value) {
2363           if (value == null) {
2364     throw new NullPointerException();
2365   }
2366   bitField0_ |= 0x00000001;
2367           gtuId_ = value;
2368           onChanged();
2369           return this;
2370         }
2371 
2372         private double x_ ;
2373         /**
2374          * <code>required double x = 2;</code>
2375          */
2376         public boolean hasX() {
2377           return ((bitField0_ & 0x00000002) == 0x00000002);
2378         }
2379         /**
2380          * <code>required double x = 2;</code>
2381          */
2382         public double getX() {
2383           return x_;
2384         }
2385         /**
2386          * <code>required double x = 2;</code>
2387          */
2388         public Builder setX(double value) {
2389           bitField0_ |= 0x00000002;
2390           x_ = value;
2391           onChanged();
2392           return this;
2393         }
2394         /**
2395          * <code>required double x = 2;</code>
2396          */
2397         public Builder clearX() {
2398           bitField0_ = (bitField0_ & ~0x00000002);
2399           x_ = 0D;
2400           onChanged();
2401           return this;
2402         }
2403 
2404         private double y_ ;
2405         /**
2406          * <code>required double y = 3;</code>
2407          */
2408         public boolean hasY() {
2409           return ((bitField0_ & 0x00000004) == 0x00000004);
2410         }
2411         /**
2412          * <code>required double y = 3;</code>
2413          */
2414         public double getY() {
2415           return y_;
2416         }
2417         /**
2418          * <code>required double y = 3;</code>
2419          */
2420         public Builder setY(double value) {
2421           bitField0_ |= 0x00000004;
2422           y_ = value;
2423           onChanged();
2424           return this;
2425         }
2426         /**
2427          * <code>required double y = 3;</code>
2428          */
2429         public Builder clearY() {
2430           bitField0_ = (bitField0_ & ~0x00000004);
2431           y_ = 0D;
2432           onChanged();
2433           return this;
2434         }
2435 
2436         private double z_ ;
2437         /**
2438          * <code>optional double z = 4;</code>
2439          */
2440         public boolean hasZ() {
2441           return ((bitField0_ & 0x00000008) == 0x00000008);
2442         }
2443         /**
2444          * <code>optional double z = 4;</code>
2445          */
2446         public double getZ() {
2447           return z_;
2448         }
2449         /**
2450          * <code>optional double z = 4;</code>
2451          */
2452         public Builder setZ(double value) {
2453           bitField0_ |= 0x00000008;
2454           z_ = value;
2455           onChanged();
2456           return this;
2457         }
2458         /**
2459          * <code>optional double z = 4;</code>
2460          */
2461         public Builder clearZ() {
2462           bitField0_ = (bitField0_ & ~0x00000008);
2463           z_ = 0D;
2464           onChanged();
2465           return this;
2466         }
2467 
2468         private double angle_ ;
2469         /**
2470          * <code>required double angle = 5;</code>
2471          */
2472         public boolean hasAngle() {
2473           return ((bitField0_ & 0x00000010) == 0x00000010);
2474         }
2475         /**
2476          * <code>required double angle = 5;</code>
2477          */
2478         public double getAngle() {
2479           return angle_;
2480         }
2481         /**
2482          * <code>required double angle = 5;</code>
2483          */
2484         public Builder setAngle(double value) {
2485           bitField0_ |= 0x00000010;
2486           angle_ = value;
2487           onChanged();
2488           return this;
2489         }
2490         /**
2491          * <code>required double angle = 5;</code>
2492          */
2493         public Builder clearAngle() {
2494           bitField0_ = (bitField0_ & ~0x00000010);
2495           angle_ = 0D;
2496           onChanged();
2497           return this;
2498         }
2499 
2500         private double width_ ;
2501         /**
2502          * <code>required double width = 6;</code>
2503          */
2504         public boolean hasWidth() {
2505           return ((bitField0_ & 0x00000020) == 0x00000020);
2506         }
2507         /**
2508          * <code>required double width = 6;</code>
2509          */
2510         public double getWidth() {
2511           return width_;
2512         }
2513         /**
2514          * <code>required double width = 6;</code>
2515          */
2516         public Builder setWidth(double value) {
2517           bitField0_ |= 0x00000020;
2518           width_ = value;
2519           onChanged();
2520           return this;
2521         }
2522         /**
2523          * <code>required double width = 6;</code>
2524          */
2525         public Builder clearWidth() {
2526           bitField0_ = (bitField0_ & ~0x00000020);
2527           width_ = 0D;
2528           onChanged();
2529           return this;
2530         }
2531 
2532         private double length_ ;
2533         /**
2534          * <code>required double length = 7;</code>
2535          */
2536         public boolean hasLength() {
2537           return ((bitField0_ & 0x00000040) == 0x00000040);
2538         }
2539         /**
2540          * <code>required double length = 7;</code>
2541          */
2542         public double getLength() {
2543           return length_;
2544         }
2545         /**
2546          * <code>required double length = 7;</code>
2547          */
2548         public Builder setLength(double value) {
2549           bitField0_ |= 0x00000040;
2550           length_ = value;
2551           onChanged();
2552           return this;
2553         }
2554         /**
2555          * <code>required double length = 7;</code>
2556          */
2557         public Builder clearLength() {
2558           bitField0_ = (bitField0_ & ~0x00000040);
2559           length_ = 0D;
2560           onChanged();
2561           return this;
2562         }
2563 
2564         private int gtuTypeId_ ;
2565         /**
2566          * <code>required int32 gtuTypeId = 8;</code>
2567          */
2568         public boolean hasGtuTypeId() {
2569           return ((bitField0_ & 0x00000080) == 0x00000080);
2570         }
2571         /**
2572          * <code>required int32 gtuTypeId = 8;</code>
2573          */
2574         public int getGtuTypeId() {
2575           return gtuTypeId_;
2576         }
2577         /**
2578          * <code>required int32 gtuTypeId = 8;</code>
2579          */
2580         public Builder setGtuTypeId(int value) {
2581           bitField0_ |= 0x00000080;
2582           gtuTypeId_ = value;
2583           onChanged();
2584           return this;
2585         }
2586         /**
2587          * <code>required int32 gtuTypeId = 8;</code>
2588          */
2589         public Builder clearGtuTypeId() {
2590           bitField0_ = (bitField0_ & ~0x00000080);
2591           gtuTypeId_ = 0;
2592           onChanged();
2593           return this;
2594         }
2595 
2596         private double speed_ ;
2597         /**
2598          * <code>required double speed = 9;</code>
2599          */
2600         public boolean hasSpeed() {
2601           return ((bitField0_ & 0x00000100) == 0x00000100);
2602         }
2603         /**
2604          * <code>required double speed = 9;</code>
2605          */
2606         public double getSpeed() {
2607           return speed_;
2608         }
2609         /**
2610          * <code>required double speed = 9;</code>
2611          */
2612         public Builder setSpeed(double value) {
2613           bitField0_ |= 0x00000100;
2614           speed_ = value;
2615           onChanged();
2616           return this;
2617         }
2618         /**
2619          * <code>required double speed = 9;</code>
2620          */
2621         public Builder clearSpeed() {
2622           bitField0_ = (bitField0_ & ~0x00000100);
2623           speed_ = 0D;
2624           onChanged();
2625           return this;
2626         }
2627         public final Builder setUnknownFields(
2628             final com.google.protobuf.UnknownFieldSet unknownFields) {
2629           return super.setUnknownFields(unknownFields);
2630         }
2631 
2632         public final Builder mergeUnknownFields(
2633             final com.google.protobuf.UnknownFieldSet unknownFields) {
2634           return super.mergeUnknownFields(unknownFields);
2635         }
2636 
2637 
2638         // @@protoc_insertion_point(builder_scope:org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition)
2639       }
2640 
2641       // @@protoc_insertion_point(class_scope:org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition)
2642       private static final org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition DEFAULT_INSTANCE;
2643       static {
2644         DEFAULT_INSTANCE = new org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition();
2645       }
2646 
2647       public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition getDefaultInstance() {
2648         return DEFAULT_INSTANCE;
2649       }
2650 
2651       @java.lang.Deprecated public static final com.google.protobuf.Parser<GTUPosition>
2652           PARSER = new com.google.protobuf.AbstractParser<GTUPosition>() {
2653         public GTUPosition parsePartialFrom(
2654             com.google.protobuf.CodedInputStream input,
2655             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2656             throws com.google.protobuf.InvalidProtocolBufferException {
2657             return new GTUPosition(input, extensionRegistry);
2658         }
2659       };
2660 
2661       public static com.google.protobuf.Parser<GTUPosition> parser() {
2662         return PARSER;
2663       }
2664 
2665       @java.lang.Override
2666       public com.google.protobuf.Parser<GTUPosition> getParserForType() {
2667         return PARSER;
2668       }
2669 
2670       public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition getDefaultInstanceForType() {
2671         return DEFAULT_INSTANCE;
2672       }
2673 
2674     }
2675 
2676     private int bitField0_;
2677     public static final int GTUPOS_FIELD_NUMBER = 1;
2678     private java.util.List<org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition> gtuPos_;
2679     /**
2680      * <code>repeated .org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition gtuPos = 1;</code>
2681      */
2682     public java.util.List<org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition> getGtuPosList() {
2683       return gtuPos_;
2684     }
2685     /**
2686      * <code>repeated .org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition gtuPos = 1;</code>
2687      */
2688     public java.util.List<? extends org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPositionOrBuilder> 
2689         getGtuPosOrBuilderList() {
2690       return gtuPos_;
2691     }
2692     /**
2693      * <code>repeated .org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition gtuPos = 1;</code>
2694      */
2695     public int getGtuPosCount() {
2696       return gtuPos_.size();
2697     }
2698     /**
2699      * <code>repeated .org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition gtuPos = 1;</code>
2700      */
2701     public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition getGtuPos(int index) {
2702       return gtuPos_.get(index);
2703     }
2704     /**
2705      * <code>repeated .org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition gtuPos = 1;</code>
2706      */
2707     public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPositionOrBuilder getGtuPosOrBuilder(
2708         int index) {
2709       return gtuPos_.get(index);
2710     }
2711 
2712     public static final int STATUS_FIELD_NUMBER = 2;
2713     private volatile java.lang.Object status_;
2714     /**
2715      * <code>required string status = 2;</code>
2716      */
2717     public boolean hasStatus() {
2718       return ((bitField0_ & 0x00000001) == 0x00000001);
2719     }
2720     /**
2721      * <code>required string status = 2;</code>
2722      */
2723     public java.lang.String getStatus() {
2724       java.lang.Object ref = status_;
2725       if (ref instanceof java.lang.String) {
2726         return (java.lang.String) ref;
2727       } else {
2728         com.google.protobuf.ByteString bs = 
2729             (com.google.protobuf.ByteString) ref;
2730         java.lang.String s = bs.toStringUtf8();
2731         if (bs.isValidUtf8()) {
2732           status_ = s;
2733         }
2734         return s;
2735       }
2736     }
2737     /**
2738      * <code>required string status = 2;</code>
2739      */
2740     public com.google.protobuf.ByteString
2741         getStatusBytes() {
2742       java.lang.Object ref = status_;
2743       if (ref instanceof java.lang.String) {
2744         com.google.protobuf.ByteString b = 
2745             com.google.protobuf.ByteString.copyFromUtf8(
2746                 (java.lang.String) ref);
2747         status_ = b;
2748         return b;
2749       } else {
2750         return (com.google.protobuf.ByteString) ref;
2751       }
2752     }
2753 
2754     private byte memoizedIsInitialized = -1;
2755     public final boolean isInitialized() {
2756       byte isInitialized = memoizedIsInitialized;
2757       if (isInitialized == 1) return true;
2758       if (isInitialized == 0) return false;
2759 
2760       if (!hasStatus()) {
2761         memoizedIsInitialized = 0;
2762         return false;
2763       }
2764       for (int i = 0; i < getGtuPosCount(); i++) {
2765         if (!getGtuPos(i).isInitialized()) {
2766           memoizedIsInitialized = 0;
2767           return false;
2768         }
2769       }
2770       memoizedIsInitialized = 1;
2771       return true;
2772     }
2773 
2774     public void writeTo(com.google.protobuf.CodedOutputStream output)
2775                         throws java.io.IOException {
2776       for (int i = 0; i < gtuPos_.size(); i++) {
2777         output.writeMessage(1, gtuPos_.get(i));
2778       }
2779       if (((bitField0_ & 0x00000001) == 0x00000001)) {
2780         com.google.protobuf.GeneratedMessageV3.writeString(output, 2, status_);
2781       }
2782       unknownFields.writeTo(output);
2783     }
2784 
2785     public int getSerializedSize() {
2786       int size = memoizedSize;
2787       if (size != -1) return size;
2788 
2789       size = 0;
2790       for (int i = 0; i < gtuPos_.size(); i++) {
2791         size += com.google.protobuf.CodedOutputStream
2792           .computeMessageSize(1, gtuPos_.get(i));
2793       }
2794       if (((bitField0_ & 0x00000001) == 0x00000001)) {
2795         size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, status_);
2796       }
2797       size += unknownFields.getSerializedSize();
2798       memoizedSize = size;
2799       return size;
2800     }
2801 
2802     private static final long serialVersionUID = 0L;
2803     @java.lang.Override
2804     public boolean equals(final java.lang.Object obj) {
2805       if (obj == this) {
2806        return true;
2807       }
2808       if (!(obj instanceof org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions)) {
2809         return super.equals(obj);
2810       }
2811       org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions other = (org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions) obj;
2812 
2813       boolean result = true;
2814       result = result && getGtuPosList()
2815           .equals(other.getGtuPosList());
2816       result = result && (hasStatus() == other.hasStatus());
2817       if (hasStatus()) {
2818         result = result && getStatus()
2819             .equals(other.getStatus());
2820       }
2821       result = result && unknownFields.equals(other.unknownFields);
2822       return result;
2823     }
2824 
2825     @java.lang.Override
2826     public int hashCode() {
2827       if (memoizedHashCode != 0) {
2828         return memoizedHashCode;
2829       }
2830       int hash = 41;
2831       hash = (19 * hash) + getDescriptor().hashCode();
2832       if (getGtuPosCount() > 0) {
2833         hash = (37 * hash) + GTUPOS_FIELD_NUMBER;
2834         hash = (53 * hash) + getGtuPosList().hashCode();
2835       }
2836       if (hasStatus()) {
2837         hash = (37 * hash) + STATUS_FIELD_NUMBER;
2838         hash = (53 * hash) + getStatus().hashCode();
2839       }
2840       hash = (29 * hash) + unknownFields.hashCode();
2841       memoizedHashCode = hash;
2842       return hash;
2843     }
2844 
2845     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions parseFrom(
2846         com.google.protobuf.ByteString data)
2847         throws com.google.protobuf.InvalidProtocolBufferException {
2848       return PARSER.parseFrom(data);
2849     }
2850     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions parseFrom(
2851         com.google.protobuf.ByteString data,
2852         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2853         throws com.google.protobuf.InvalidProtocolBufferException {
2854       return PARSER.parseFrom(data, extensionRegistry);
2855     }
2856     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions parseFrom(byte[] data)
2857         throws com.google.protobuf.InvalidProtocolBufferException {
2858       return PARSER.parseFrom(data);
2859     }
2860     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions parseFrom(
2861         byte[] data,
2862         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2863         throws com.google.protobuf.InvalidProtocolBufferException {
2864       return PARSER.parseFrom(data, extensionRegistry);
2865     }
2866     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions parseFrom(java.io.InputStream input)
2867         throws java.io.IOException {
2868       return com.google.protobuf.GeneratedMessageV3
2869           .parseWithIOException(PARSER, input);
2870     }
2871     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions parseFrom(
2872         java.io.InputStream input,
2873         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2874         throws java.io.IOException {
2875       return com.google.protobuf.GeneratedMessageV3
2876           .parseWithIOException(PARSER, input, extensionRegistry);
2877     }
2878     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions parseDelimitedFrom(java.io.InputStream input)
2879         throws java.io.IOException {
2880       return com.google.protobuf.GeneratedMessageV3
2881           .parseDelimitedWithIOException(PARSER, input);
2882     }
2883     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions parseDelimitedFrom(
2884         java.io.InputStream input,
2885         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2886         throws java.io.IOException {
2887       return com.google.protobuf.GeneratedMessageV3
2888           .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
2889     }
2890     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions parseFrom(
2891         com.google.protobuf.CodedInputStream input)
2892         throws java.io.IOException {
2893       return com.google.protobuf.GeneratedMessageV3
2894           .parseWithIOException(PARSER, input);
2895     }
2896     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions parseFrom(
2897         com.google.protobuf.CodedInputStream input,
2898         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2899         throws java.io.IOException {
2900       return com.google.protobuf.GeneratedMessageV3
2901           .parseWithIOException(PARSER, input, extensionRegistry);
2902     }
2903 
2904     public Builder newBuilderForType() { return newBuilder(); }
2905     public static Builder newBuilder() {
2906       return DEFAULT_INSTANCE.toBuilder();
2907     }
2908     public static Builder newBuilder(org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions prototype) {
2909       return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
2910     }
2911     public Builder toBuilder() {
2912       return this == DEFAULT_INSTANCE
2913           ? new Builder() : new Builder().mergeFrom(this);
2914     }
2915 
2916     @java.lang.Override
2917     protected Builder newBuilderForType(
2918         com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
2919       Builder builder = new Builder(parent);
2920       return builder;
2921     }
2922     /**
2923      * Protobuf type {@code org.opentrafficsim.aimsun.proto.GTUPositions}
2924      */
2925     public static final class Builder extends
2926         com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
2927         // @@protoc_insertion_point(builder_implements:org.opentrafficsim.aimsun.proto.GTUPositions)
2928         org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositionsOrBuilder {
2929       public static final com.google.protobuf.Descriptors.Descriptor
2930           getDescriptor() {
2931         return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.internal_static_org_opentrafficsim_aimsun_proto_GTUPositions_descriptor;
2932       }
2933 
2934       protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
2935           internalGetFieldAccessorTable() {
2936         return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.internal_static_org_opentrafficsim_aimsun_proto_GTUPositions_fieldAccessorTable
2937             .ensureFieldAccessorsInitialized(
2938                 org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.class, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.Builder.class);
2939       }
2940 
2941       // Construct using org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.newBuilder()
2942       private Builder() {
2943         maybeForceBuilderInitialization();
2944       }
2945 
2946       private Builder(
2947           com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
2948         super(parent);
2949         maybeForceBuilderInitialization();
2950       }
2951       private void maybeForceBuilderInitialization() {
2952         if (com.google.protobuf.GeneratedMessageV3
2953                 .alwaysUseFieldBuilders) {
2954           getGtuPosFieldBuilder();
2955         }
2956       }
2957       public Builder clear() {
2958         super.clear();
2959         if (gtuPosBuilder_ == null) {
2960           gtuPos_ = java.util.Collections.emptyList();
2961           bitField0_ = (bitField0_ & ~0x00000001);
2962         } else {
2963           gtuPosBuilder_.clear();
2964         }
2965         status_ = "";
2966         bitField0_ = (bitField0_ & ~0x00000002);
2967         return this;
2968       }
2969 
2970       public com.google.protobuf.Descriptors.Descriptor
2971           getDescriptorForType() {
2972         return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.internal_static_org_opentrafficsim_aimsun_proto_GTUPositions_descriptor;
2973       }
2974 
2975       public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions getDefaultInstanceForType() {
2976         return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.getDefaultInstance();
2977       }
2978 
2979       public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions build() {
2980         org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions result = buildPartial();
2981         if (!result.isInitialized()) {
2982           throw newUninitializedMessageException(result);
2983         }
2984         return result;
2985       }
2986 
2987       public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions buildPartial() {
2988         org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions result = new org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions(this);
2989         int from_bitField0_ = bitField0_;
2990         int to_bitField0_ = 0;
2991         if (gtuPosBuilder_ == null) {
2992           if (((bitField0_ & 0x00000001) == 0x00000001)) {
2993             gtuPos_ = java.util.Collections.unmodifiableList(gtuPos_);
2994             bitField0_ = (bitField0_ & ~0x00000001);
2995           }
2996           result.gtuPos_ = gtuPos_;
2997         } else {
2998           result.gtuPos_ = gtuPosBuilder_.build();
2999         }
3000         if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
3001           to_bitField0_ |= 0x00000001;
3002         }
3003         result.status_ = status_;
3004         result.bitField0_ = to_bitField0_;
3005         onBuilt();
3006         return result;
3007       }
3008 
3009       public Builder clone() {
3010         return (Builder) super.clone();
3011       }
3012       public Builder setField(
3013           com.google.protobuf.Descriptors.FieldDescriptor field,
3014           Object value) {
3015         return (Builder) super.setField(field, value);
3016       }
3017       public Builder clearField(
3018           com.google.protobuf.Descriptors.FieldDescriptor field) {
3019         return (Builder) super.clearField(field);
3020       }
3021       public Builder clearOneof(
3022           com.google.protobuf.Descriptors.OneofDescriptor oneof) {
3023         return (Builder) super.clearOneof(oneof);
3024       }
3025       public Builder setRepeatedField(
3026           com.google.protobuf.Descriptors.FieldDescriptor field,
3027           int index, Object value) {
3028         return (Builder) super.setRepeatedField(field, index, value);
3029       }
3030       public Builder addRepeatedField(
3031           com.google.protobuf.Descriptors.FieldDescriptor field,
3032           Object value) {
3033         return (Builder) super.addRepeatedField(field, value);
3034       }
3035       public Builder mergeFrom(com.google.protobuf.Message other) {
3036         if (other instanceof org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions) {
3037           return mergeFrom((org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions)other);
3038         } else {
3039           super.mergeFrom(other);
3040           return this;
3041         }
3042       }
3043 
3044       public Builder mergeFrom(org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions other) {
3045         if (other == org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.getDefaultInstance()) return this;
3046         if (gtuPosBuilder_ == null) {
3047           if (!other.gtuPos_.isEmpty()) {
3048             if (gtuPos_.isEmpty()) {
3049               gtuPos_ = other.gtuPos_;
3050               bitField0_ = (bitField0_ & ~0x00000001);
3051             } else {
3052               ensureGtuPosIsMutable();
3053               gtuPos_.addAll(other.gtuPos_);
3054             }
3055             onChanged();
3056           }
3057         } else {
3058           if (!other.gtuPos_.isEmpty()) {
3059             if (gtuPosBuilder_.isEmpty()) {
3060               gtuPosBuilder_.dispose();
3061               gtuPosBuilder_ = null;
3062               gtuPos_ = other.gtuPos_;
3063               bitField0_ = (bitField0_ & ~0x00000001);
3064               gtuPosBuilder_ = 
3065                 com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
3066                    getGtuPosFieldBuilder() : null;
3067             } else {
3068               gtuPosBuilder_.addAllMessages(other.gtuPos_);
3069             }
3070           }
3071         }
3072         if (other.hasStatus()) {
3073           bitField0_ |= 0x00000002;
3074           status_ = other.status_;
3075           onChanged();
3076         }
3077         this.mergeUnknownFields(other.unknownFields);
3078         onChanged();
3079         return this;
3080       }
3081 
3082       public final boolean isInitialized() {
3083         if (!hasStatus()) {
3084           return false;
3085         }
3086         for (int i = 0; i < getGtuPosCount(); i++) {
3087           if (!getGtuPos(i).isInitialized()) {
3088             return false;
3089           }
3090         }
3091         return true;
3092       }
3093 
3094       public Builder mergeFrom(
3095           com.google.protobuf.CodedInputStream input,
3096           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3097           throws java.io.IOException {
3098         org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions parsedMessage = null;
3099         try {
3100           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
3101         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
3102           parsedMessage = (org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions) e.getUnfinishedMessage();
3103           throw e.unwrapIOException();
3104         } finally {
3105           if (parsedMessage != null) {
3106             mergeFrom(parsedMessage);
3107           }
3108         }
3109         return this;
3110       }
3111       private int bitField0_;
3112 
3113       private java.util.List<org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition> gtuPos_ =
3114         java.util.Collections.emptyList();
3115       private void ensureGtuPosIsMutable() {
3116         if (!((bitField0_ & 0x00000001) == 0x00000001)) {
3117           gtuPos_ = new java.util.ArrayList<org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition>(gtuPos_);
3118           bitField0_ |= 0x00000001;
3119          }
3120       }
3121 
3122       private com.google.protobuf.RepeatedFieldBuilderV3<
3123           org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition.Builder, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPositionOrBuilder> gtuPosBuilder_;
3124 
3125       /**
3126        * <code>repeated .org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition gtuPos = 1;</code>
3127        */
3128       public java.util.List<org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition> getGtuPosList() {
3129         if (gtuPosBuilder_ == null) {
3130           return java.util.Collections.unmodifiableList(gtuPos_);
3131         } else {
3132           return gtuPosBuilder_.getMessageList();
3133         }
3134       }
3135       /**
3136        * <code>repeated .org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition gtuPos = 1;</code>
3137        */
3138       public int getGtuPosCount() {
3139         if (gtuPosBuilder_ == null) {
3140           return gtuPos_.size();
3141         } else {
3142           return gtuPosBuilder_.getCount();
3143         }
3144       }
3145       /**
3146        * <code>repeated .org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition gtuPos = 1;</code>
3147        */
3148       public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition getGtuPos(int index) {
3149         if (gtuPosBuilder_ == null) {
3150           return gtuPos_.get(index);
3151         } else {
3152           return gtuPosBuilder_.getMessage(index);
3153         }
3154       }
3155       /**
3156        * <code>repeated .org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition gtuPos = 1;</code>
3157        */
3158       public Builder setGtuPos(
3159           int index, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition value) {
3160         if (gtuPosBuilder_ == null) {
3161           if (value == null) {
3162             throw new NullPointerException();
3163           }
3164           ensureGtuPosIsMutable();
3165           gtuPos_.set(index, value);
3166           onChanged();
3167         } else {
3168           gtuPosBuilder_.setMessage(index, value);
3169         }
3170         return this;
3171       }
3172       /**
3173        * <code>repeated .org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition gtuPos = 1;</code>
3174        */
3175       public Builder setGtuPos(
3176           int index, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition.Builder builderForValue) {
3177         if (gtuPosBuilder_ == null) {
3178           ensureGtuPosIsMutable();
3179           gtuPos_.set(index, builderForValue.build());
3180           onChanged();
3181         } else {
3182           gtuPosBuilder_.setMessage(index, builderForValue.build());
3183         }
3184         return this;
3185       }
3186       /**
3187        * <code>repeated .org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition gtuPos = 1;</code>
3188        */
3189       public Builder addGtuPos(org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition value) {
3190         if (gtuPosBuilder_ == null) {
3191           if (value == null) {
3192             throw new NullPointerException();
3193           }
3194           ensureGtuPosIsMutable();
3195           gtuPos_.add(value);
3196           onChanged();
3197         } else {
3198           gtuPosBuilder_.addMessage(value);
3199         }
3200         return this;
3201       }
3202       /**
3203        * <code>repeated .org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition gtuPos = 1;</code>
3204        */
3205       public Builder addGtuPos(
3206           int index, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition value) {
3207         if (gtuPosBuilder_ == null) {
3208           if (value == null) {
3209             throw new NullPointerException();
3210           }
3211           ensureGtuPosIsMutable();
3212           gtuPos_.add(index, value);
3213           onChanged();
3214         } else {
3215           gtuPosBuilder_.addMessage(index, value);
3216         }
3217         return this;
3218       }
3219       /**
3220        * <code>repeated .org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition gtuPos = 1;</code>
3221        */
3222       public Builder addGtuPos(
3223           org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition.Builder builderForValue) {
3224         if (gtuPosBuilder_ == null) {
3225           ensureGtuPosIsMutable();
3226           gtuPos_.add(builderForValue.build());
3227           onChanged();
3228         } else {
3229           gtuPosBuilder_.addMessage(builderForValue.build());
3230         }
3231         return this;
3232       }
3233       /**
3234        * <code>repeated .org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition gtuPos = 1;</code>
3235        */
3236       public Builder addGtuPos(
3237           int index, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition.Builder builderForValue) {
3238         if (gtuPosBuilder_ == null) {
3239           ensureGtuPosIsMutable();
3240           gtuPos_.add(index, builderForValue.build());
3241           onChanged();
3242         } else {
3243           gtuPosBuilder_.addMessage(index, builderForValue.build());
3244         }
3245         return this;
3246       }
3247       /**
3248        * <code>repeated .org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition gtuPos = 1;</code>
3249        */
3250       public Builder addAllGtuPos(
3251           java.lang.Iterable<? extends org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition> values) {
3252         if (gtuPosBuilder_ == null) {
3253           ensureGtuPosIsMutable();
3254           com.google.protobuf.AbstractMessageLite.Builder.addAll(
3255               values, gtuPos_);
3256           onChanged();
3257         } else {
3258           gtuPosBuilder_.addAllMessages(values);
3259         }
3260         return this;
3261       }
3262       /**
3263        * <code>repeated .org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition gtuPos = 1;</code>
3264        */
3265       public Builder clearGtuPos() {
3266         if (gtuPosBuilder_ == null) {
3267           gtuPos_ = java.util.Collections.emptyList();
3268           bitField0_ = (bitField0_ & ~0x00000001);
3269           onChanged();
3270         } else {
3271           gtuPosBuilder_.clear();
3272         }
3273         return this;
3274       }
3275       /**
3276        * <code>repeated .org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition gtuPos = 1;</code>
3277        */
3278       public Builder removeGtuPos(int index) {
3279         if (gtuPosBuilder_ == null) {
3280           ensureGtuPosIsMutable();
3281           gtuPos_.remove(index);
3282           onChanged();
3283         } else {
3284           gtuPosBuilder_.remove(index);
3285         }
3286         return this;
3287       }
3288       /**
3289        * <code>repeated .org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition gtuPos = 1;</code>
3290        */
3291       public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition.Builder getGtuPosBuilder(
3292           int index) {
3293         return getGtuPosFieldBuilder().getBuilder(index);
3294       }
3295       /**
3296        * <code>repeated .org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition gtuPos = 1;</code>
3297        */
3298       public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPositionOrBuilder getGtuPosOrBuilder(
3299           int index) {
3300         if (gtuPosBuilder_ == null) {
3301           return gtuPos_.get(index);  } else {
3302           return gtuPosBuilder_.getMessageOrBuilder(index);
3303         }
3304       }
3305       /**
3306        * <code>repeated .org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition gtuPos = 1;</code>
3307        */
3308       public java.util.List<? extends org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPositionOrBuilder> 
3309            getGtuPosOrBuilderList() {
3310         if (gtuPosBuilder_ != null) {
3311           return gtuPosBuilder_.getMessageOrBuilderList();
3312         } else {
3313           return java.util.Collections.unmodifiableList(gtuPos_);
3314         }
3315       }
3316       /**
3317        * <code>repeated .org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition gtuPos = 1;</code>
3318        */
3319       public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition.Builder addGtuPosBuilder() {
3320         return getGtuPosFieldBuilder().addBuilder(
3321             org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition.getDefaultInstance());
3322       }
3323       /**
3324        * <code>repeated .org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition gtuPos = 1;</code>
3325        */
3326       public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition.Builder addGtuPosBuilder(
3327           int index) {
3328         return getGtuPosFieldBuilder().addBuilder(
3329             index, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition.getDefaultInstance());
3330       }
3331       /**
3332        * <code>repeated .org.opentrafficsim.aimsun.proto.GTUPositions.GTUPosition gtuPos = 1;</code>
3333        */
3334       public java.util.List<org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition.Builder> 
3335            getGtuPosBuilderList() {
3336         return getGtuPosFieldBuilder().getBuilderList();
3337       }
3338       private com.google.protobuf.RepeatedFieldBuilderV3<
3339           org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition.Builder, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPositionOrBuilder> 
3340           getGtuPosFieldBuilder() {
3341         if (gtuPosBuilder_ == null) {
3342           gtuPosBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
3343               org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPosition.Builder, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.GTUPositionOrBuilder>(
3344                   gtuPos_,
3345                   ((bitField0_ & 0x00000001) == 0x00000001),
3346                   getParentForChildren(),
3347                   isClean());
3348           gtuPos_ = null;
3349         }
3350         return gtuPosBuilder_;
3351       }
3352 
3353       private java.lang.Object status_ = "";
3354       /**
3355        * <code>required string status = 2;</code>
3356        */
3357       public boolean hasStatus() {
3358         return ((bitField0_ & 0x00000002) == 0x00000002);
3359       }
3360       /**
3361        * <code>required string status = 2;</code>
3362        */
3363       public java.lang.String getStatus() {
3364         java.lang.Object ref = status_;
3365         if (!(ref instanceof java.lang.String)) {
3366           com.google.protobuf.ByteString bs =
3367               (com.google.protobuf.ByteString) ref;
3368           java.lang.String s = bs.toStringUtf8();
3369           if (bs.isValidUtf8()) {
3370             status_ = s;
3371           }
3372           return s;
3373         } else {
3374           return (java.lang.String) ref;
3375         }
3376       }
3377       /**
3378        * <code>required string status = 2;</code>
3379        */
3380       public com.google.protobuf.ByteString
3381           getStatusBytes() {
3382         java.lang.Object ref = status_;
3383         if (ref instanceof String) {
3384           com.google.protobuf.ByteString b = 
3385               com.google.protobuf.ByteString.copyFromUtf8(
3386                   (java.lang.String) ref);
3387           status_ = b;
3388           return b;
3389         } else {
3390           return (com.google.protobuf.ByteString) ref;
3391         }
3392       }
3393       /**
3394        * <code>required string status = 2;</code>
3395        */
3396       public Builder setStatus(
3397           java.lang.String value) {
3398         if (value == null) {
3399     throw new NullPointerException();
3400   }
3401   bitField0_ |= 0x00000002;
3402         status_ = value;
3403         onChanged();
3404         return this;
3405       }
3406       /**
3407        * <code>required string status = 2;</code>
3408        */
3409       public Builder clearStatus() {
3410         bitField0_ = (bitField0_ & ~0x00000002);
3411         status_ = getDefaultInstance().getStatus();
3412         onChanged();
3413         return this;
3414       }
3415       /**
3416        * <code>required string status = 2;</code>
3417        */
3418       public Builder setStatusBytes(
3419           com.google.protobuf.ByteString value) {
3420         if (value == null) {
3421     throw new NullPointerException();
3422   }
3423   bitField0_ |= 0x00000002;
3424         status_ = value;
3425         onChanged();
3426         return this;
3427       }
3428       public final Builder setUnknownFields(
3429           final com.google.protobuf.UnknownFieldSet unknownFields) {
3430         return super.setUnknownFields(unknownFields);
3431       }
3432 
3433       public final Builder mergeUnknownFields(
3434           final com.google.protobuf.UnknownFieldSet unknownFields) {
3435         return super.mergeUnknownFields(unknownFields);
3436       }
3437 
3438 
3439       // @@protoc_insertion_point(builder_scope:org.opentrafficsim.aimsun.proto.GTUPositions)
3440     }
3441 
3442     // @@protoc_insertion_point(class_scope:org.opentrafficsim.aimsun.proto.GTUPositions)
3443     private static final org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions DEFAULT_INSTANCE;
3444     static {
3445       DEFAULT_INSTANCE = new org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions();
3446     }
3447 
3448     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions getDefaultInstance() {
3449       return DEFAULT_INSTANCE;
3450     }
3451 
3452     @java.lang.Deprecated public static final com.google.protobuf.Parser<GTUPositions>
3453         PARSER = new com.google.protobuf.AbstractParser<GTUPositions>() {
3454       public GTUPositions parsePartialFrom(
3455           com.google.protobuf.CodedInputStream input,
3456           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3457           throws com.google.protobuf.InvalidProtocolBufferException {
3458           return new GTUPositions(input, extensionRegistry);
3459       }
3460     };
3461 
3462     public static com.google.protobuf.Parser<GTUPositions> parser() {
3463       return PARSER;
3464     }
3465 
3466     @java.lang.Override
3467     public com.google.protobuf.Parser<GTUPositions> getParserForType() {
3468       return PARSER;
3469     }
3470 
3471     public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions getDefaultInstanceForType() {
3472       return DEFAULT_INSTANCE;
3473     }
3474 
3475   }
3476 
3477   public interface OTSMessageOrBuilder extends
3478       // @@protoc_insertion_point(interface_extends:org.opentrafficsim.aimsun.proto.OTSMessage)
3479       com.google.protobuf.MessageOrBuilder {
3480 
3481     /**
3482      * <code>optional .org.opentrafficsim.aimsun.proto.CreateSimulation createSimulation = 1;</code>
3483      */
3484     boolean hasCreateSimulation();
3485     /**
3486      * <code>optional .org.opentrafficsim.aimsun.proto.CreateSimulation createSimulation = 1;</code>
3487      */
3488     org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation getCreateSimulation();
3489     /**
3490      * <code>optional .org.opentrafficsim.aimsun.proto.CreateSimulation createSimulation = 1;</code>
3491      */
3492     org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulationOrBuilder getCreateSimulationOrBuilder();
3493 
3494     /**
3495      * <code>optional .org.opentrafficsim.aimsun.proto.SimulateUntil simulateUntil = 2;</code>
3496      */
3497     boolean hasSimulateUntil();
3498     /**
3499      * <code>optional .org.opentrafficsim.aimsun.proto.SimulateUntil simulateUntil = 2;</code>
3500      */
3501     org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil getSimulateUntil();
3502     /**
3503      * <code>optional .org.opentrafficsim.aimsun.proto.SimulateUntil simulateUntil = 2;</code>
3504      */
3505     org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntilOrBuilder getSimulateUntilOrBuilder();
3506 
3507     /**
3508      * <code>optional .org.opentrafficsim.aimsun.proto.GTUPositions gtuPositions = 3;</code>
3509      */
3510     boolean hasGtuPositions();
3511     /**
3512      * <code>optional .org.opentrafficsim.aimsun.proto.GTUPositions gtuPositions = 3;</code>
3513      */
3514     org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions getGtuPositions();
3515     /**
3516      * <code>optional .org.opentrafficsim.aimsun.proto.GTUPositions gtuPositions = 3;</code>
3517      */
3518     org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositionsOrBuilder getGtuPositionsOrBuilder();
3519 
3520     public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage.MsgCase getMsgCase();
3521   }
3522   /**
3523    * Protobuf type {@code org.opentrafficsim.aimsun.proto.OTSMessage}
3524    */
3525   public  static final class OTSMessage extends
3526       com.google.protobuf.GeneratedMessageV3 implements
3527       // @@protoc_insertion_point(message_implements:org.opentrafficsim.aimsun.proto.OTSMessage)
3528       OTSMessageOrBuilder {
3529     // Use OTSMessage.newBuilder() to construct.
3530     private OTSMessage(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
3531       super(builder);
3532     }
3533     private OTSMessage() {
3534     }
3535 
3536     @java.lang.Override
3537     public final com.google.protobuf.UnknownFieldSet
3538     getUnknownFields() {
3539       return this.unknownFields;
3540     }
3541     private OTSMessage(
3542         com.google.protobuf.CodedInputStream input,
3543         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3544         throws com.google.protobuf.InvalidProtocolBufferException {
3545       this();
3546       int mutable_bitField0_ = 0;
3547       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
3548           com.google.protobuf.UnknownFieldSet.newBuilder();
3549       try {
3550         boolean done = false;
3551         while (!done) {
3552           int tag = input.readTag();
3553           switch (tag) {
3554             case 0:
3555               done = true;
3556               break;
3557             default: {
3558               if (!parseUnknownField(input, unknownFields,
3559                                      extensionRegistry, tag)) {
3560                 done = true;
3561               }
3562               break;
3563             }
3564             case 10: {
3565               org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation.Builder subBuilder = null;
3566               if (msgCase_ == 1) {
3567                 subBuilder = ((org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation) msg_).toBuilder();
3568               }
3569               msg_ =
3570                   input.readMessage(org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation.PARSER, extensionRegistry);
3571               if (subBuilder != null) {
3572                 subBuilder.mergeFrom((org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation) msg_);
3573                 msg_ = subBuilder.buildPartial();
3574               }
3575               msgCase_ = 1;
3576               break;
3577             }
3578             case 18: {
3579               org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil.Builder subBuilder = null;
3580               if (msgCase_ == 2) {
3581                 subBuilder = ((org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil) msg_).toBuilder();
3582               }
3583               msg_ =
3584                   input.readMessage(org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil.PARSER, extensionRegistry);
3585               if (subBuilder != null) {
3586                 subBuilder.mergeFrom((org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil) msg_);
3587                 msg_ = subBuilder.buildPartial();
3588               }
3589               msgCase_ = 2;
3590               break;
3591             }
3592             case 26: {
3593               org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.Builder subBuilder = null;
3594               if (msgCase_ == 3) {
3595                 subBuilder = ((org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions) msg_).toBuilder();
3596               }
3597               msg_ =
3598                   input.readMessage(org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.PARSER, extensionRegistry);
3599               if (subBuilder != null) {
3600                 subBuilder.mergeFrom((org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions) msg_);
3601                 msg_ = subBuilder.buildPartial();
3602               }
3603               msgCase_ = 3;
3604               break;
3605             }
3606           }
3607         }
3608       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
3609         throw e.setUnfinishedMessage(this);
3610       } catch (java.io.IOException e) {
3611         throw new com.google.protobuf.InvalidProtocolBufferException(
3612             e).setUnfinishedMessage(this);
3613       } finally {
3614         this.unknownFields = unknownFields.build();
3615         makeExtensionsImmutable();
3616       }
3617     }
3618     public static final com.google.protobuf.Descriptors.Descriptor
3619         getDescriptor() {
3620       return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.internal_static_org_opentrafficsim_aimsun_proto_OTSMessage_descriptor;
3621     }
3622 
3623     protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
3624         internalGetFieldAccessorTable() {
3625       return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.internal_static_org_opentrafficsim_aimsun_proto_OTSMessage_fieldAccessorTable
3626           .ensureFieldAccessorsInitialized(
3627               org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage.class, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage.Builder.class);
3628     }
3629 
3630     private int bitField0_;
3631     private int msgCase_ = 0;
3632     private java.lang.Object msg_;
3633     public enum MsgCase
3634         implements com.google.protobuf.Internal.EnumLite {
3635       CREATESIMULATION(1),
3636       SIMULATEUNTIL(2),
3637       GTUPOSITIONS(3),
3638       MSG_NOT_SET(0);
3639       private final int value;
3640       private MsgCase(int value) {
3641         this.value = value;
3642       }
3643       /**
3644        * @deprecated Use {@link #forNumber(int)} instead.
3645        */
3646       @java.lang.Deprecated
3647       public static MsgCase valueOf(int value) {
3648         return forNumber(value);
3649       }
3650 
3651       public static MsgCase forNumber(int value) {
3652         switch (value) {
3653           case 1: return CREATESIMULATION;
3654           case 2: return SIMULATEUNTIL;
3655           case 3: return GTUPOSITIONS;
3656           case 0: return MSG_NOT_SET;
3657           default: return null;
3658         }
3659       }
3660       public int getNumber() {
3661         return this.value;
3662       }
3663     };
3664 
3665     public MsgCase
3666     getMsgCase() {
3667       return MsgCase.forNumber(
3668           msgCase_);
3669     }
3670 
3671     public static final int CREATESIMULATION_FIELD_NUMBER = 1;
3672     /**
3673      * <code>optional .org.opentrafficsim.aimsun.proto.CreateSimulation createSimulation = 1;</code>
3674      */
3675     public boolean hasCreateSimulation() {
3676       return msgCase_ == 1;
3677     }
3678     /**
3679      * <code>optional .org.opentrafficsim.aimsun.proto.CreateSimulation createSimulation = 1;</code>
3680      */
3681     public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation getCreateSimulation() {
3682       if (msgCase_ == 1) {
3683          return (org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation) msg_;
3684       }
3685       return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation.getDefaultInstance();
3686     }
3687     /**
3688      * <code>optional .org.opentrafficsim.aimsun.proto.CreateSimulation createSimulation = 1;</code>
3689      */
3690     public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulationOrBuilder getCreateSimulationOrBuilder() {
3691       if (msgCase_ == 1) {
3692          return (org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation) msg_;
3693       }
3694       return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation.getDefaultInstance();
3695     }
3696 
3697     public static final int SIMULATEUNTIL_FIELD_NUMBER = 2;
3698     /**
3699      * <code>optional .org.opentrafficsim.aimsun.proto.SimulateUntil simulateUntil = 2;</code>
3700      */
3701     public boolean hasSimulateUntil() {
3702       return msgCase_ == 2;
3703     }
3704     /**
3705      * <code>optional .org.opentrafficsim.aimsun.proto.SimulateUntil simulateUntil = 2;</code>
3706      */
3707     public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil getSimulateUntil() {
3708       if (msgCase_ == 2) {
3709          return (org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil) msg_;
3710       }
3711       return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil.getDefaultInstance();
3712     }
3713     /**
3714      * <code>optional .org.opentrafficsim.aimsun.proto.SimulateUntil simulateUntil = 2;</code>
3715      */
3716     public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntilOrBuilder getSimulateUntilOrBuilder() {
3717       if (msgCase_ == 2) {
3718          return (org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil) msg_;
3719       }
3720       return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil.getDefaultInstance();
3721     }
3722 
3723     public static final int GTUPOSITIONS_FIELD_NUMBER = 3;
3724     /**
3725      * <code>optional .org.opentrafficsim.aimsun.proto.GTUPositions gtuPositions = 3;</code>
3726      */
3727     public boolean hasGtuPositions() {
3728       return msgCase_ == 3;
3729     }
3730     /**
3731      * <code>optional .org.opentrafficsim.aimsun.proto.GTUPositions gtuPositions = 3;</code>
3732      */
3733     public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions getGtuPositions() {
3734       if (msgCase_ == 3) {
3735          return (org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions) msg_;
3736       }
3737       return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.getDefaultInstance();
3738     }
3739     /**
3740      * <code>optional .org.opentrafficsim.aimsun.proto.GTUPositions gtuPositions = 3;</code>
3741      */
3742     public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositionsOrBuilder getGtuPositionsOrBuilder() {
3743       if (msgCase_ == 3) {
3744          return (org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions) msg_;
3745       }
3746       return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.getDefaultInstance();
3747     }
3748 
3749     private byte memoizedIsInitialized = -1;
3750     public final boolean isInitialized() {
3751       byte isInitialized = memoizedIsInitialized;
3752       if (isInitialized == 1) return true;
3753       if (isInitialized == 0) return false;
3754 
3755       if (hasCreateSimulation()) {
3756         if (!getCreateSimulation().isInitialized()) {
3757           memoizedIsInitialized = 0;
3758           return false;
3759         }
3760       }
3761       if (hasSimulateUntil()) {
3762         if (!getSimulateUntil().isInitialized()) {
3763           memoizedIsInitialized = 0;
3764           return false;
3765         }
3766       }
3767       if (hasGtuPositions()) {
3768         if (!getGtuPositions().isInitialized()) {
3769           memoizedIsInitialized = 0;
3770           return false;
3771         }
3772       }
3773       memoizedIsInitialized = 1;
3774       return true;
3775     }
3776 
3777     public void writeTo(com.google.protobuf.CodedOutputStream output)
3778                         throws java.io.IOException {
3779       if (msgCase_ == 1) {
3780         output.writeMessage(1, (org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation) msg_);
3781       }
3782       if (msgCase_ == 2) {
3783         output.writeMessage(2, (org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil) msg_);
3784       }
3785       if (msgCase_ == 3) {
3786         output.writeMessage(3, (org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions) msg_);
3787       }
3788       unknownFields.writeTo(output);
3789     }
3790 
3791     public int getSerializedSize() {
3792       int size = memoizedSize;
3793       if (size != -1) return size;
3794 
3795       size = 0;
3796       if (msgCase_ == 1) {
3797         size += com.google.protobuf.CodedOutputStream
3798           .computeMessageSize(1, (org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation) msg_);
3799       }
3800       if (msgCase_ == 2) {
3801         size += com.google.protobuf.CodedOutputStream
3802           .computeMessageSize(2, (org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil) msg_);
3803       }
3804       if (msgCase_ == 3) {
3805         size += com.google.protobuf.CodedOutputStream
3806           .computeMessageSize(3, (org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions) msg_);
3807       }
3808       size += unknownFields.getSerializedSize();
3809       memoizedSize = size;
3810       return size;
3811     }
3812 
3813     private static final long serialVersionUID = 0L;
3814     @java.lang.Override
3815     public boolean equals(final java.lang.Object obj) {
3816       if (obj == this) {
3817        return true;
3818       }
3819       if (!(obj instanceof org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage)) {
3820         return super.equals(obj);
3821       }
3822       org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage other = (org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage) obj;
3823 
3824       boolean result = true;
3825       result = result && getMsgCase().equals(
3826           other.getMsgCase());
3827       if (!result) return false;
3828       switch (msgCase_) {
3829         case 1:
3830           result = result && getCreateSimulation()
3831               .equals(other.getCreateSimulation());
3832           break;
3833         case 2:
3834           result = result && getSimulateUntil()
3835               .equals(other.getSimulateUntil());
3836           break;
3837         case 3:
3838           result = result && getGtuPositions()
3839               .equals(other.getGtuPositions());
3840           break;
3841         case 0:
3842         default:
3843       }
3844       result = result && unknownFields.equals(other.unknownFields);
3845       return result;
3846     }
3847 
3848     @java.lang.Override
3849     public int hashCode() {
3850       if (memoizedHashCode != 0) {
3851         return memoizedHashCode;
3852       }
3853       int hash = 41;
3854       hash = (19 * hash) + getDescriptor().hashCode();
3855       switch (msgCase_) {
3856         case 1:
3857           hash = (37 * hash) + CREATESIMULATION_FIELD_NUMBER;
3858           hash = (53 * hash) + getCreateSimulation().hashCode();
3859           break;
3860         case 2:
3861           hash = (37 * hash) + SIMULATEUNTIL_FIELD_NUMBER;
3862           hash = (53 * hash) + getSimulateUntil().hashCode();
3863           break;
3864         case 3:
3865           hash = (37 * hash) + GTUPOSITIONS_FIELD_NUMBER;
3866           hash = (53 * hash) + getGtuPositions().hashCode();
3867           break;
3868         case 0:
3869         default:
3870       }
3871       hash = (29 * hash) + unknownFields.hashCode();
3872       memoizedHashCode = hash;
3873       return hash;
3874     }
3875 
3876     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage parseFrom(
3877         com.google.protobuf.ByteString data)
3878         throws com.google.protobuf.InvalidProtocolBufferException {
3879       return PARSER.parseFrom(data);
3880     }
3881     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage parseFrom(
3882         com.google.protobuf.ByteString data,
3883         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3884         throws com.google.protobuf.InvalidProtocolBufferException {
3885       return PARSER.parseFrom(data, extensionRegistry);
3886     }
3887     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage parseFrom(byte[] data)
3888         throws com.google.protobuf.InvalidProtocolBufferException {
3889       return PARSER.parseFrom(data);
3890     }
3891     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage parseFrom(
3892         byte[] data,
3893         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3894         throws com.google.protobuf.InvalidProtocolBufferException {
3895       return PARSER.parseFrom(data, extensionRegistry);
3896     }
3897     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage parseFrom(java.io.InputStream input)
3898         throws java.io.IOException {
3899       return com.google.protobuf.GeneratedMessageV3
3900           .parseWithIOException(PARSER, input);
3901     }
3902     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage parseFrom(
3903         java.io.InputStream input,
3904         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3905         throws java.io.IOException {
3906       return com.google.protobuf.GeneratedMessageV3
3907           .parseWithIOException(PARSER, input, extensionRegistry);
3908     }
3909     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage parseDelimitedFrom(java.io.InputStream input)
3910         throws java.io.IOException {
3911       return com.google.protobuf.GeneratedMessageV3
3912           .parseDelimitedWithIOException(PARSER, input);
3913     }
3914     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage parseDelimitedFrom(
3915         java.io.InputStream input,
3916         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3917         throws java.io.IOException {
3918       return com.google.protobuf.GeneratedMessageV3
3919           .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
3920     }
3921     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage parseFrom(
3922         com.google.protobuf.CodedInputStream input)
3923         throws java.io.IOException {
3924       return com.google.protobuf.GeneratedMessageV3
3925           .parseWithIOException(PARSER, input);
3926     }
3927     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage parseFrom(
3928         com.google.protobuf.CodedInputStream input,
3929         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3930         throws java.io.IOException {
3931       return com.google.protobuf.GeneratedMessageV3
3932           .parseWithIOException(PARSER, input, extensionRegistry);
3933     }
3934 
3935     public Builder newBuilderForType() { return newBuilder(); }
3936     public static Builder newBuilder() {
3937       return DEFAULT_INSTANCE.toBuilder();
3938     }
3939     public static Builder newBuilder(org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage prototype) {
3940       return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
3941     }
3942     public Builder toBuilder() {
3943       return this == DEFAULT_INSTANCE
3944           ? new Builder() : new Builder().mergeFrom(this);
3945     }
3946 
3947     @java.lang.Override
3948     protected Builder newBuilderForType(
3949         com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
3950       Builder builder = new Builder(parent);
3951       return builder;
3952     }
3953     /**
3954      * Protobuf type {@code org.opentrafficsim.aimsun.proto.OTSMessage}
3955      */
3956     public static final class Builder extends
3957         com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
3958         // @@protoc_insertion_point(builder_implements:org.opentrafficsim.aimsun.proto.OTSMessage)
3959         org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessageOrBuilder {
3960       public static final com.google.protobuf.Descriptors.Descriptor
3961           getDescriptor() {
3962         return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.internal_static_org_opentrafficsim_aimsun_proto_OTSMessage_descriptor;
3963       }
3964 
3965       protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
3966           internalGetFieldAccessorTable() {
3967         return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.internal_static_org_opentrafficsim_aimsun_proto_OTSMessage_fieldAccessorTable
3968             .ensureFieldAccessorsInitialized(
3969                 org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage.class, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage.Builder.class);
3970       }
3971 
3972       // Construct using org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage.newBuilder()
3973       private Builder() {
3974         maybeForceBuilderInitialization();
3975       }
3976 
3977       private Builder(
3978           com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
3979         super(parent);
3980         maybeForceBuilderInitialization();
3981       }
3982       private void maybeForceBuilderInitialization() {
3983         if (com.google.protobuf.GeneratedMessageV3
3984                 .alwaysUseFieldBuilders) {
3985         }
3986       }
3987       public Builder clear() {
3988         super.clear();
3989         msgCase_ = 0;
3990         msg_ = null;
3991         return this;
3992       }
3993 
3994       public com.google.protobuf.Descriptors.Descriptor
3995           getDescriptorForType() {
3996         return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.internal_static_org_opentrafficsim_aimsun_proto_OTSMessage_descriptor;
3997       }
3998 
3999       public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage getDefaultInstanceForType() {
4000         return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage.getDefaultInstance();
4001       }
4002 
4003       public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage build() {
4004         org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage result = buildPartial();
4005         if (!result.isInitialized()) {
4006           throw newUninitializedMessageException(result);
4007         }
4008         return result;
4009       }
4010 
4011       public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage buildPartial() {
4012         org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage result = new org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage(this);
4013         int from_bitField0_ = bitField0_;
4014         int to_bitField0_ = 0;
4015         if (msgCase_ == 1) {
4016           if (createSimulationBuilder_ == null) {
4017             result.msg_ = msg_;
4018           } else {
4019             result.msg_ = createSimulationBuilder_.build();
4020           }
4021         }
4022         if (msgCase_ == 2) {
4023           if (simulateUntilBuilder_ == null) {
4024             result.msg_ = msg_;
4025           } else {
4026             result.msg_ = simulateUntilBuilder_.build();
4027           }
4028         }
4029         if (msgCase_ == 3) {
4030           if (gtuPositionsBuilder_ == null) {
4031             result.msg_ = msg_;
4032           } else {
4033             result.msg_ = gtuPositionsBuilder_.build();
4034           }
4035         }
4036         result.bitField0_ = to_bitField0_;
4037         result.msgCase_ = msgCase_;
4038         onBuilt();
4039         return result;
4040       }
4041 
4042       public Builder clone() {
4043         return (Builder) super.clone();
4044       }
4045       public Builder setField(
4046           com.google.protobuf.Descriptors.FieldDescriptor field,
4047           Object value) {
4048         return (Builder) super.setField(field, value);
4049       }
4050       public Builder clearField(
4051           com.google.protobuf.Descriptors.FieldDescriptor field) {
4052         return (Builder) super.clearField(field);
4053       }
4054       public Builder clearOneof(
4055           com.google.protobuf.Descriptors.OneofDescriptor oneof) {
4056         return (Builder) super.clearOneof(oneof);
4057       }
4058       public Builder setRepeatedField(
4059           com.google.protobuf.Descriptors.FieldDescriptor field,
4060           int index, Object value) {
4061         return (Builder) super.setRepeatedField(field, index, value);
4062       }
4063       public Builder addRepeatedField(
4064           com.google.protobuf.Descriptors.FieldDescriptor field,
4065           Object value) {
4066         return (Builder) super.addRepeatedField(field, value);
4067       }
4068       public Builder mergeFrom(com.google.protobuf.Message other) {
4069         if (other instanceof org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage) {
4070           return mergeFrom((org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage)other);
4071         } else {
4072           super.mergeFrom(other);
4073           return this;
4074         }
4075       }
4076 
4077       public Builder mergeFrom(org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage other) {
4078         if (other == org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage.getDefaultInstance()) return this;
4079         switch (other.getMsgCase()) {
4080           case CREATESIMULATION: {
4081             mergeCreateSimulation(other.getCreateSimulation());
4082             break;
4083           }
4084           case SIMULATEUNTIL: {
4085             mergeSimulateUntil(other.getSimulateUntil());
4086             break;
4087           }
4088           case GTUPOSITIONS: {
4089             mergeGtuPositions(other.getGtuPositions());
4090             break;
4091           }
4092           case MSG_NOT_SET: {
4093             break;
4094           }
4095         }
4096         this.mergeUnknownFields(other.unknownFields);
4097         onChanged();
4098         return this;
4099       }
4100 
4101       public final boolean isInitialized() {
4102         if (hasCreateSimulation()) {
4103           if (!getCreateSimulation().isInitialized()) {
4104             return false;
4105           }
4106         }
4107         if (hasSimulateUntil()) {
4108           if (!getSimulateUntil().isInitialized()) {
4109             return false;
4110           }
4111         }
4112         if (hasGtuPositions()) {
4113           if (!getGtuPositions().isInitialized()) {
4114             return false;
4115           }
4116         }
4117         return true;
4118       }
4119 
4120       public Builder mergeFrom(
4121           com.google.protobuf.CodedInputStream input,
4122           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
4123           throws java.io.IOException {
4124         org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage parsedMessage = null;
4125         try {
4126           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
4127         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
4128           parsedMessage = (org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage) e.getUnfinishedMessage();
4129           throw e.unwrapIOException();
4130         } finally {
4131           if (parsedMessage != null) {
4132             mergeFrom(parsedMessage);
4133           }
4134         }
4135         return this;
4136       }
4137       private int msgCase_ = 0;
4138       private java.lang.Object msg_;
4139       public MsgCase
4140           getMsgCase() {
4141         return MsgCase.forNumber(
4142             msgCase_);
4143       }
4144 
4145       public Builder clearMsg() {
4146         msgCase_ = 0;
4147         msg_ = null;
4148         onChanged();
4149         return this;
4150       }
4151 
4152       private int bitField0_;
4153 
4154       private com.google.protobuf.SingleFieldBuilderV3<
4155           org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation.Builder, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulationOrBuilder> createSimulationBuilder_;
4156       /**
4157        * <code>optional .org.opentrafficsim.aimsun.proto.CreateSimulation createSimulation = 1;</code>
4158        */
4159       public boolean hasCreateSimulation() {
4160         return msgCase_ == 1;
4161       }
4162       /**
4163        * <code>optional .org.opentrafficsim.aimsun.proto.CreateSimulation createSimulation = 1;</code>
4164        */
4165       public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation getCreateSimulation() {
4166         if (createSimulationBuilder_ == null) {
4167           if (msgCase_ == 1) {
4168             return (org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation) msg_;
4169           }
4170           return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation.getDefaultInstance();
4171         } else {
4172           if (msgCase_ == 1) {
4173             return createSimulationBuilder_.getMessage();
4174           }
4175           return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation.getDefaultInstance();
4176         }
4177       }
4178       /**
4179        * <code>optional .org.opentrafficsim.aimsun.proto.CreateSimulation createSimulation = 1;</code>
4180        */
4181       public Builder setCreateSimulation(org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation value) {
4182         if (createSimulationBuilder_ == null) {
4183           if (value == null) {
4184             throw new NullPointerException();
4185           }
4186           msg_ = value;
4187           onChanged();
4188         } else {
4189           createSimulationBuilder_.setMessage(value);
4190         }
4191         msgCase_ = 1;
4192         return this;
4193       }
4194       /**
4195        * <code>optional .org.opentrafficsim.aimsun.proto.CreateSimulation createSimulation = 1;</code>
4196        */
4197       public Builder setCreateSimulation(
4198           org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation.Builder builderForValue) {
4199         if (createSimulationBuilder_ == null) {
4200           msg_ = builderForValue.build();
4201           onChanged();
4202         } else {
4203           createSimulationBuilder_.setMessage(builderForValue.build());
4204         }
4205         msgCase_ = 1;
4206         return this;
4207       }
4208       /**
4209        * <code>optional .org.opentrafficsim.aimsun.proto.CreateSimulation createSimulation = 1;</code>
4210        */
4211       public Builder mergeCreateSimulation(org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation value) {
4212         if (createSimulationBuilder_ == null) {
4213           if (msgCase_ == 1 &&
4214               msg_ != org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation.getDefaultInstance()) {
4215             msg_ = org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation.newBuilder((org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation) msg_)
4216                 .mergeFrom(value).buildPartial();
4217           } else {
4218             msg_ = value;
4219           }
4220           onChanged();
4221         } else {
4222           if (msgCase_ == 1) {
4223             createSimulationBuilder_.mergeFrom(value);
4224           }
4225           createSimulationBuilder_.setMessage(value);
4226         }
4227         msgCase_ = 1;
4228         return this;
4229       }
4230       /**
4231        * <code>optional .org.opentrafficsim.aimsun.proto.CreateSimulation createSimulation = 1;</code>
4232        */
4233       public Builder clearCreateSimulation() {
4234         if (createSimulationBuilder_ == null) {
4235           if (msgCase_ == 1) {
4236             msgCase_ = 0;
4237             msg_ = null;
4238             onChanged();
4239           }
4240         } else {
4241           if (msgCase_ == 1) {
4242             msgCase_ = 0;
4243             msg_ = null;
4244           }
4245           createSimulationBuilder_.clear();
4246         }
4247         return this;
4248       }
4249       /**
4250        * <code>optional .org.opentrafficsim.aimsun.proto.CreateSimulation createSimulation = 1;</code>
4251        */
4252       public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation.Builder getCreateSimulationBuilder() {
4253         return getCreateSimulationFieldBuilder().getBuilder();
4254       }
4255       /**
4256        * <code>optional .org.opentrafficsim.aimsun.proto.CreateSimulation createSimulation = 1;</code>
4257        */
4258       public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulationOrBuilder getCreateSimulationOrBuilder() {
4259         if ((msgCase_ == 1) && (createSimulationBuilder_ != null)) {
4260           return createSimulationBuilder_.getMessageOrBuilder();
4261         } else {
4262           if (msgCase_ == 1) {
4263             return (org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation) msg_;
4264           }
4265           return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation.getDefaultInstance();
4266         }
4267       }
4268       /**
4269        * <code>optional .org.opentrafficsim.aimsun.proto.CreateSimulation createSimulation = 1;</code>
4270        */
4271       private com.google.protobuf.SingleFieldBuilderV3<
4272           org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation.Builder, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulationOrBuilder> 
4273           getCreateSimulationFieldBuilder() {
4274         if (createSimulationBuilder_ == null) {
4275           if (!(msgCase_ == 1)) {
4276             msg_ = org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation.getDefaultInstance();
4277           }
4278           createSimulationBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
4279               org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation.Builder, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulationOrBuilder>(
4280                   (org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.CreateSimulation) msg_,
4281                   getParentForChildren(),
4282                   isClean());
4283           msg_ = null;
4284         }
4285         msgCase_ = 1;
4286         onChanged();;
4287         return createSimulationBuilder_;
4288       }
4289 
4290       private com.google.protobuf.SingleFieldBuilderV3<
4291           org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil.Builder, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntilOrBuilder> simulateUntilBuilder_;
4292       /**
4293        * <code>optional .org.opentrafficsim.aimsun.proto.SimulateUntil simulateUntil = 2;</code>
4294        */
4295       public boolean hasSimulateUntil() {
4296         return msgCase_ == 2;
4297       }
4298       /**
4299        * <code>optional .org.opentrafficsim.aimsun.proto.SimulateUntil simulateUntil = 2;</code>
4300        */
4301       public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil getSimulateUntil() {
4302         if (simulateUntilBuilder_ == null) {
4303           if (msgCase_ == 2) {
4304             return (org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil) msg_;
4305           }
4306           return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil.getDefaultInstance();
4307         } else {
4308           if (msgCase_ == 2) {
4309             return simulateUntilBuilder_.getMessage();
4310           }
4311           return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil.getDefaultInstance();
4312         }
4313       }
4314       /**
4315        * <code>optional .org.opentrafficsim.aimsun.proto.SimulateUntil simulateUntil = 2;</code>
4316        */
4317       public Builder setSimulateUntil(org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil value) {
4318         if (simulateUntilBuilder_ == null) {
4319           if (value == null) {
4320             throw new NullPointerException();
4321           }
4322           msg_ = value;
4323           onChanged();
4324         } else {
4325           simulateUntilBuilder_.setMessage(value);
4326         }
4327         msgCase_ = 2;
4328         return this;
4329       }
4330       /**
4331        * <code>optional .org.opentrafficsim.aimsun.proto.SimulateUntil simulateUntil = 2;</code>
4332        */
4333       public Builder setSimulateUntil(
4334           org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil.Builder builderForValue) {
4335         if (simulateUntilBuilder_ == null) {
4336           msg_ = builderForValue.build();
4337           onChanged();
4338         } else {
4339           simulateUntilBuilder_.setMessage(builderForValue.build());
4340         }
4341         msgCase_ = 2;
4342         return this;
4343       }
4344       /**
4345        * <code>optional .org.opentrafficsim.aimsun.proto.SimulateUntil simulateUntil = 2;</code>
4346        */
4347       public Builder mergeSimulateUntil(org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil value) {
4348         if (simulateUntilBuilder_ == null) {
4349           if (msgCase_ == 2 &&
4350               msg_ != org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil.getDefaultInstance()) {
4351             msg_ = org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil.newBuilder((org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil) msg_)
4352                 .mergeFrom(value).buildPartial();
4353           } else {
4354             msg_ = value;
4355           }
4356           onChanged();
4357         } else {
4358           if (msgCase_ == 2) {
4359             simulateUntilBuilder_.mergeFrom(value);
4360           }
4361           simulateUntilBuilder_.setMessage(value);
4362         }
4363         msgCase_ = 2;
4364         return this;
4365       }
4366       /**
4367        * <code>optional .org.opentrafficsim.aimsun.proto.SimulateUntil simulateUntil = 2;</code>
4368        */
4369       public Builder clearSimulateUntil() {
4370         if (simulateUntilBuilder_ == null) {
4371           if (msgCase_ == 2) {
4372             msgCase_ = 0;
4373             msg_ = null;
4374             onChanged();
4375           }
4376         } else {
4377           if (msgCase_ == 2) {
4378             msgCase_ = 0;
4379             msg_ = null;
4380           }
4381           simulateUntilBuilder_.clear();
4382         }
4383         return this;
4384       }
4385       /**
4386        * <code>optional .org.opentrafficsim.aimsun.proto.SimulateUntil simulateUntil = 2;</code>
4387        */
4388       public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil.Builder getSimulateUntilBuilder() {
4389         return getSimulateUntilFieldBuilder().getBuilder();
4390       }
4391       /**
4392        * <code>optional .org.opentrafficsim.aimsun.proto.SimulateUntil simulateUntil = 2;</code>
4393        */
4394       public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntilOrBuilder getSimulateUntilOrBuilder() {
4395         if ((msgCase_ == 2) && (simulateUntilBuilder_ != null)) {
4396           return simulateUntilBuilder_.getMessageOrBuilder();
4397         } else {
4398           if (msgCase_ == 2) {
4399             return (org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil) msg_;
4400           }
4401           return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil.getDefaultInstance();
4402         }
4403       }
4404       /**
4405        * <code>optional .org.opentrafficsim.aimsun.proto.SimulateUntil simulateUntil = 2;</code>
4406        */
4407       private com.google.protobuf.SingleFieldBuilderV3<
4408           org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil.Builder, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntilOrBuilder> 
4409           getSimulateUntilFieldBuilder() {
4410         if (simulateUntilBuilder_ == null) {
4411           if (!(msgCase_ == 2)) {
4412             msg_ = org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil.getDefaultInstance();
4413           }
4414           simulateUntilBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
4415               org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil.Builder, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntilOrBuilder>(
4416                   (org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.SimulateUntil) msg_,
4417                   getParentForChildren(),
4418                   isClean());
4419           msg_ = null;
4420         }
4421         msgCase_ = 2;
4422         onChanged();;
4423         return simulateUntilBuilder_;
4424       }
4425 
4426       private com.google.protobuf.SingleFieldBuilderV3<
4427           org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.Builder, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositionsOrBuilder> gtuPositionsBuilder_;
4428       /**
4429        * <code>optional .org.opentrafficsim.aimsun.proto.GTUPositions gtuPositions = 3;</code>
4430        */
4431       public boolean hasGtuPositions() {
4432         return msgCase_ == 3;
4433       }
4434       /**
4435        * <code>optional .org.opentrafficsim.aimsun.proto.GTUPositions gtuPositions = 3;</code>
4436        */
4437       public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions getGtuPositions() {
4438         if (gtuPositionsBuilder_ == null) {
4439           if (msgCase_ == 3) {
4440             return (org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions) msg_;
4441           }
4442           return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.getDefaultInstance();
4443         } else {
4444           if (msgCase_ == 3) {
4445             return gtuPositionsBuilder_.getMessage();
4446           }
4447           return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.getDefaultInstance();
4448         }
4449       }
4450       /**
4451        * <code>optional .org.opentrafficsim.aimsun.proto.GTUPositions gtuPositions = 3;</code>
4452        */
4453       public Builder setGtuPositions(org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions value) {
4454         if (gtuPositionsBuilder_ == null) {
4455           if (value == null) {
4456             throw new NullPointerException();
4457           }
4458           msg_ = value;
4459           onChanged();
4460         } else {
4461           gtuPositionsBuilder_.setMessage(value);
4462         }
4463         msgCase_ = 3;
4464         return this;
4465       }
4466       /**
4467        * <code>optional .org.opentrafficsim.aimsun.proto.GTUPositions gtuPositions = 3;</code>
4468        */
4469       public Builder setGtuPositions(
4470           org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.Builder builderForValue) {
4471         if (gtuPositionsBuilder_ == null) {
4472           msg_ = builderForValue.build();
4473           onChanged();
4474         } else {
4475           gtuPositionsBuilder_.setMessage(builderForValue.build());
4476         }
4477         msgCase_ = 3;
4478         return this;
4479       }
4480       /**
4481        * <code>optional .org.opentrafficsim.aimsun.proto.GTUPositions gtuPositions = 3;</code>
4482        */
4483       public Builder mergeGtuPositions(org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions value) {
4484         if (gtuPositionsBuilder_ == null) {
4485           if (msgCase_ == 3 &&
4486               msg_ != org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.getDefaultInstance()) {
4487             msg_ = org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.newBuilder((org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions) msg_)
4488                 .mergeFrom(value).buildPartial();
4489           } else {
4490             msg_ = value;
4491           }
4492           onChanged();
4493         } else {
4494           if (msgCase_ == 3) {
4495             gtuPositionsBuilder_.mergeFrom(value);
4496           }
4497           gtuPositionsBuilder_.setMessage(value);
4498         }
4499         msgCase_ = 3;
4500         return this;
4501       }
4502       /**
4503        * <code>optional .org.opentrafficsim.aimsun.proto.GTUPositions gtuPositions = 3;</code>
4504        */
4505       public Builder clearGtuPositions() {
4506         if (gtuPositionsBuilder_ == null) {
4507           if (msgCase_ == 3) {
4508             msgCase_ = 0;
4509             msg_ = null;
4510             onChanged();
4511           }
4512         } else {
4513           if (msgCase_ == 3) {
4514             msgCase_ = 0;
4515             msg_ = null;
4516           }
4517           gtuPositionsBuilder_.clear();
4518         }
4519         return this;
4520       }
4521       /**
4522        * <code>optional .org.opentrafficsim.aimsun.proto.GTUPositions gtuPositions = 3;</code>
4523        */
4524       public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.Builder getGtuPositionsBuilder() {
4525         return getGtuPositionsFieldBuilder().getBuilder();
4526       }
4527       /**
4528        * <code>optional .org.opentrafficsim.aimsun.proto.GTUPositions gtuPositions = 3;</code>
4529        */
4530       public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositionsOrBuilder getGtuPositionsOrBuilder() {
4531         if ((msgCase_ == 3) && (gtuPositionsBuilder_ != null)) {
4532           return gtuPositionsBuilder_.getMessageOrBuilder();
4533         } else {
4534           if (msgCase_ == 3) {
4535             return (org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions) msg_;
4536           }
4537           return org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.getDefaultInstance();
4538         }
4539       }
4540       /**
4541        * <code>optional .org.opentrafficsim.aimsun.proto.GTUPositions gtuPositions = 3;</code>
4542        */
4543       private com.google.protobuf.SingleFieldBuilderV3<
4544           org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.Builder, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositionsOrBuilder> 
4545           getGtuPositionsFieldBuilder() {
4546         if (gtuPositionsBuilder_ == null) {
4547           if (!(msgCase_ == 3)) {
4548             msg_ = org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.getDefaultInstance();
4549           }
4550           gtuPositionsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
4551               org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions.Builder, org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositionsOrBuilder>(
4552                   (org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.GTUPositions) msg_,
4553                   getParentForChildren(),
4554                   isClean());
4555           msg_ = null;
4556         }
4557         msgCase_ = 3;
4558         onChanged();;
4559         return gtuPositionsBuilder_;
4560       }
4561       public final Builder setUnknownFields(
4562           final com.google.protobuf.UnknownFieldSet unknownFields) {
4563         return super.setUnknownFields(unknownFields);
4564       }
4565 
4566       public final Builder mergeUnknownFields(
4567           final com.google.protobuf.UnknownFieldSet unknownFields) {
4568         return super.mergeUnknownFields(unknownFields);
4569       }
4570 
4571 
4572       // @@protoc_insertion_point(builder_scope:org.opentrafficsim.aimsun.proto.OTSMessage)
4573     }
4574 
4575     // @@protoc_insertion_point(class_scope:org.opentrafficsim.aimsun.proto.OTSMessage)
4576     private static final org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage DEFAULT_INSTANCE;
4577     static {
4578       DEFAULT_INSTANCE = new org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage();
4579     }
4580 
4581     public static org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage getDefaultInstance() {
4582       return DEFAULT_INSTANCE;
4583     }
4584 
4585     @java.lang.Deprecated public static final com.google.protobuf.Parser<OTSMessage>
4586         PARSER = new com.google.protobuf.AbstractParser<OTSMessage>() {
4587       public OTSMessage parsePartialFrom(
4588           com.google.protobuf.CodedInputStream input,
4589           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
4590           throws com.google.protobuf.InvalidProtocolBufferException {
4591           return new OTSMessage(input, extensionRegistry);
4592       }
4593     };
4594 
4595     public static com.google.protobuf.Parser<OTSMessage> parser() {
4596       return PARSER;
4597     }
4598 
4599     @java.lang.Override
4600     public com.google.protobuf.Parser<OTSMessage> getParserForType() {
4601       return PARSER;
4602     }
4603 
4604     public org.opentrafficsim.aimsun.proto.AimsunControlProtoBuf.OTSMessage getDefaultInstanceForType() {
4605       return DEFAULT_INSTANCE;
4606     }
4607 
4608   }
4609 
4610   private static final com.google.protobuf.Descriptors.Descriptor
4611     internal_static_org_opentrafficsim_aimsun_proto_CreateSimulation_descriptor;
4612   private static final 
4613     com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
4614       internal_static_org_opentrafficsim_aimsun_proto_CreateSimulation_fieldAccessorTable;
4615   private static final com.google.protobuf.Descriptors.Descriptor
4616     internal_static_org_opentrafficsim_aimsun_proto_SimulateUntil_descriptor;
4617   private static final 
4618     com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
4619       internal_static_org_opentrafficsim_aimsun_proto_SimulateUntil_fieldAccessorTable;
4620   private static final com.google.protobuf.Descriptors.Descriptor
4621     internal_static_org_opentrafficsim_aimsun_proto_GTUPositions_descriptor;
4622   private static final 
4623     com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
4624       internal_static_org_opentrafficsim_aimsun_proto_GTUPositions_fieldAccessorTable;
4625   private static final com.google.protobuf.Descriptors.Descriptor
4626     internal_static_org_opentrafficsim_aimsun_proto_GTUPositions_GTUPosition_descriptor;
4627   private static final 
4628     com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
4629       internal_static_org_opentrafficsim_aimsun_proto_GTUPositions_GTUPosition_fieldAccessorTable;
4630   private static final com.google.protobuf.Descriptors.Descriptor
4631     internal_static_org_opentrafficsim_aimsun_proto_OTSMessage_descriptor;
4632   private static final 
4633     com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
4634       internal_static_org_opentrafficsim_aimsun_proto_OTSMessage_fieldAccessorTable;
4635 
4636   public static com.google.protobuf.Descriptors.FileDescriptor
4637       getDescriptor() {
4638     return descriptor;
4639   }
4640   private static  com.google.protobuf.Descriptors.FileDescriptor
4641       descriptor;
4642   static {
4643     java.lang.String[] descriptorData = {
4644       "\n\020ots-aimsun.proto\022\037org.opentrafficsim.a" +
4645       "imsun.proto\"K\n\020CreateSimulation\022\017\n\007runTi" +
4646       "me\030\001 \002(\001\022\022\n\nwarmUpTime\030\002 \002(\001\022\022\n\nnetworkX" +
4647       "ML\030\003 \001(\t\"\035\n\rSimulateUntil\022\014\n\004time\030\001 \002(\001\"" +
4648       "\371\001\n\014GTUPositions\022I\n\006gtuPos\030\001 \003(\01329.org.o" +
4649       "pentrafficsim.aimsun.proto.GTUPositions." +
4650       "GTUPosition\022\016\n\006status\030\002 \002(\t\032\215\001\n\013GTUPosit" +
4651       "ion\022\r\n\005gtuId\030\001 \002(\t\022\t\n\001x\030\002 \002(\001\022\t\n\001y\030\003 \002(\001" +
4652       "\022\t\n\001z\030\004 \001(\001\022\r\n\005angle\030\005 \002(\001\022\r\n\005width\030\006 \002(" +
4653       "\001\022\016\n\006length\030\007 \002(\001\022\021\n\tgtuTypeId\030\010 \002(\005\022\r\n\005",
4654       "speed\030\t \002(\001\"\362\001\n\nOTSMessage\022M\n\020createSimu" +
4655       "lation\030\001 \001(\01321.org.opentrafficsim.aimsun" +
4656       ".proto.CreateSimulationH\000\022G\n\rsimulateUnt" +
4657       "il\030\002 \001(\0132..org.opentrafficsim.aimsun.pro" +
4658       "to.SimulateUntilH\000\022E\n\014gtuPositions\030\003 \001(\013" +
4659       "2-.org.opentrafficsim.aimsun.proto.GTUPo" +
4660       "sitionsH\000B\005\n\003msgB\027B\025AimsunControlProtoBu" +
4661       "f"
4662     };
4663     com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner =
4664         new com.google.protobuf.Descriptors.FileDescriptor.    InternalDescriptorAssigner() {
4665           public com.google.protobuf.ExtensionRegistry assignDescriptors(
4666               com.google.protobuf.Descriptors.FileDescriptor root) {
4667             descriptor = root;
4668             return null;
4669           }
4670         };
4671     com.google.protobuf.Descriptors.FileDescriptor
4672       .internalBuildGeneratedFileFrom(descriptorData,
4673         new com.google.protobuf.Descriptors.FileDescriptor[] {
4674         }, assigner);
4675     internal_static_org_opentrafficsim_aimsun_proto_CreateSimulation_descriptor =
4676       getDescriptor().getMessageTypes().get(0);
4677     internal_static_org_opentrafficsim_aimsun_proto_CreateSimulation_fieldAccessorTable = new
4678       com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
4679         internal_static_org_opentrafficsim_aimsun_proto_CreateSimulation_descriptor,
4680         new java.lang.String[] { "RunTime", "WarmUpTime", "NetworkXML", });
4681     internal_static_org_opentrafficsim_aimsun_proto_SimulateUntil_descriptor =
4682       getDescriptor().getMessageTypes().get(1);
4683     internal_static_org_opentrafficsim_aimsun_proto_SimulateUntil_fieldAccessorTable = new
4684       com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
4685         internal_static_org_opentrafficsim_aimsun_proto_SimulateUntil_descriptor,
4686         new java.lang.String[] { "Time", });
4687     internal_static_org_opentrafficsim_aimsun_proto_GTUPositions_descriptor =
4688       getDescriptor().getMessageTypes().get(2);
4689     internal_static_org_opentrafficsim_aimsun_proto_GTUPositions_fieldAccessorTable = new
4690       com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
4691         internal_static_org_opentrafficsim_aimsun_proto_GTUPositions_descriptor,
4692         new java.lang.String[] { "GtuPos", "Status", });
4693     internal_static_org_opentrafficsim_aimsun_proto_GTUPositions_GTUPosition_descriptor =
4694       internal_static_org_opentrafficsim_aimsun_proto_GTUPositions_descriptor.getNestedTypes().get(0);
4695     internal_static_org_opentrafficsim_aimsun_proto_GTUPositions_GTUPosition_fieldAccessorTable = new
4696       com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
4697         internal_static_org_opentrafficsim_aimsun_proto_GTUPositions_GTUPosition_descriptor,
4698         new java.lang.String[] { "GtuId", "X", "Y", "Z", "Angle", "Width", "Length", "GtuTypeId", "Speed", });
4699     internal_static_org_opentrafficsim_aimsun_proto_OTSMessage_descriptor =
4700       getDescriptor().getMessageTypes().get(3);
4701     internal_static_org_opentrafficsim_aimsun_proto_OTSMessage_fieldAccessorTable = new
4702       com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
4703         internal_static_org_opentrafficsim_aimsun_proto_OTSMessage_descriptor,
4704         new java.lang.String[] { "CreateSimulation", "SimulateUntil", "GtuPositions", "Msg", });
4705   }
4706 
4707   // @@protoc_insertion_point(outer_class_scope)
4708 }