001/*
002 * This class is an auto-generated source file for a HAPI
003 * HL7 v2.x standard structure class.
004 *
005 * For more information, visit: http://hl7api.sourceforge.net/
006 * 
007 * The contents of this file are subject to the Mozilla Public License Version 1.1 
008 * (the "License"); you may not use this file except in compliance with the License. 
009 * You may obtain a copy of the License at http://www.mozilla.org/MPL/ 
010 * Software distributed under the License is distributed on an "AS IS" basis, 
011 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the 
012 * specific language governing rights and limitations under the License. 
013 * 
014 * The Original Code is "[file_name]".  Description: 
015 * "[one_line_description]" 
016 * 
017 * The Initial Developer of the Original Code is University Health Network. Copyright (C) 
018 * 2012.  All Rights Reserved. 
019 * 
020 * Contributor(s): ______________________________________. 
021 * 
022 * Alternatively, the contents of this file may be used under the terms of the 
023 * GNU General Public License (the  "GPL"), in which case the provisions of the GPL are 
024 * applicable instead of those above.  If you wish to allow use of your version of this 
025 * file only under the terms of the GPL and not to allow others to use your version 
026 * of this file under the MPL, indicate your decision by deleting  the provisions above 
027 * and replace  them with the notice and other provisions required by the GPL License.  
028 * If you do not delete the provisions above, a recipient may use your version of 
029 * this file under either the MPL or the GPL. 
030 * 
031 */
032
033
034package ca.uhn.hl7v2.model.v24.segment;
035
036// import ca.uhn.hl7v2.model.v24.group.*;
037import ca.uhn.hl7v2.model.v24.datatype.*;
038import ca.uhn.hl7v2.HL7Exception;
039import ca.uhn.hl7v2.parser.ModelClassFactory;
040import ca.uhn.hl7v2.parser.DefaultModelClassFactory;
041import ca.uhn.hl7v2.model.AbstractMessage;
042import ca.uhn.hl7v2.model.Group;
043import ca.uhn.hl7v2.model.Type;
044import ca.uhn.hl7v2.model.AbstractSegment;
045import ca.uhn.hl7v2.model.Varies;
046
047
048/**
049 *<p>Represents an HL7 OBX message segment (Observation/Result). 
050 * This segment has the following fields:</p>
051 * <ul>
052     * <li>OBX-1: Set ID - OBX (SI) <b>optional </b>
053     * <li>OBX-2: Value Type (ID) <b>optional </b>
054     * <li>OBX-3: Observation Identifier (CE) <b> </b>
055     * <li>OBX-4: Observation Sub-Id (ST) <b>optional </b>
056     * <li>OBX-5: Observation Value (Varies) <b>optional repeating</b>
057     * <li>OBX-6: Units (CE) <b>optional </b>
058     * <li>OBX-7: References Range (ST) <b>optional </b>
059     * <li>OBX-8: Abnormal Flags (IS) <b>optional </b>
060     * <li>OBX-9: Probability (NM) <b>optional repeating</b>
061     * <li>OBX-10: Nature of Abnormal Test (ID) <b>optional </b>
062     * <li>OBX-11: Observation Result Status (ID) <b> </b>
063     * <li>OBX-12: Date Last Observation Normal Value (TS) <b>optional </b>
064     * <li>OBX-13: User Defined Access Checks (ST) <b>optional </b>
065     * <li>OBX-14: Date/Time of the Observation (TS) <b>optional </b>
066     * <li>OBX-15: Producer's ID (CE) <b>optional </b>
067     * <li>OBX-16: Responsible Observer (XCN) <b>optional </b>
068     * <li>OBX-17: Observation Method (CE) <b>optional repeating</b>
069     * <li>OBX-18: Equipment Instance Identifier (EI) <b>optional repeating</b>
070     * <li>OBX-19: Date/Time of the Analysis (TS) <b>optional </b>
071 * </ul>
072 */
073@SuppressWarnings("unused")
074public class OBX extends AbstractSegment {
075
076    /** 
077     * Creates a new OBX segment
078     */
079    public OBX(Group parent, ModelClassFactory factory) {
080       super(parent, factory);
081       init(factory);
082    }
083
084    private void init(ModelClassFactory factory) {
085       try {
086                                  this.add(SI.class, false, 1, 4, new Object[]{ getMessage() }, "Set ID - OBX");
087                                              this.add(ID.class, false, 1, 2, new Object[]{ getMessage(), new Integer(125) }, "Value Type");
088                                  this.add(CE.class, true, 1, 250, new Object[]{ getMessage() }, "Observation Identifier");
089                                  this.add(ST.class, false, 1, 20, new Object[]{ getMessage() }, "Observation Sub-Id");
090                                  this.add(Varies.class, false, 0, 65536, new Object[]{ getMessage() }, "Observation Value");
091                                  this.add(CE.class, false, 1, 250, new Object[]{ getMessage() }, "Units");
092                                  this.add(ST.class, false, 1, 60, new Object[]{ getMessage() }, "References Range");
093                                              this.add(IS.class, false, 1, 5, new Object[]{ getMessage(), new Integer(78) }, "Abnormal Flags");
094                                  this.add(NM.class, false, 5, 5, new Object[]{ getMessage() }, "Probability");
095                                              this.add(ID.class, false, 1, 2, new Object[]{ getMessage(), new Integer(80) }, "Nature of Abnormal Test");
096                                              this.add(ID.class, true, 1, 1, new Object[]{ getMessage(), new Integer(85) }, "Observation Result Status");
097                                  this.add(TS.class, false, 1, 26, new Object[]{ getMessage() }, "Date Last Observation Normal Value");
098                                  this.add(ST.class, false, 1, 20, new Object[]{ getMessage() }, "User Defined Access Checks");
099                                  this.add(TS.class, false, 1, 26, new Object[]{ getMessage() }, "Date/Time of the Observation");
100                                  this.add(CE.class, false, 1, 250, new Object[]{ getMessage() }, "Producer's ID");
101                                  this.add(XCN.class, false, 1, 250, new Object[]{ getMessage() }, "Responsible Observer");
102                                  this.add(CE.class, false, 0, 250, new Object[]{ getMessage() }, "Observation Method");
103                                  this.add(EI.class, false, 0, 22, new Object[]{ getMessage() }, "Equipment Instance Identifier");
104                                  this.add(TS.class, false, 1, 26, new Object[]{ getMessage() }, "Date/Time of the Analysis");
105       } catch(HL7Exception e) {
106          log.error("Unexpected error creating OBX - this is probably a bug in the source code generator.", e);
107       }
108    }
109
110
111
112    /**
113     * Returns
114     * OBX-1: "Set ID - OBX" - creates it if necessary
115     */
116    public SI getSetIDOBX() { 
117                SI retVal = this.getTypedField(1, 0);
118                return retVal;
119    }
120    
121    /**
122     * Returns
123     * OBX-1: "Set ID - OBX" - creates it if necessary
124     */
125    public SI getObx1_SetIDOBX() { 
126                SI retVal = this.getTypedField(1, 0);
127                return retVal;
128    }
129
130
131
132    /**
133     * Returns
134     * OBX-2: "Value Type" - creates it if necessary
135     */
136    public ID getValueType() { 
137                ID retVal = this.getTypedField(2, 0);
138                return retVal;
139    }
140    
141    /**
142     * Returns
143     * OBX-2: "Value Type" - creates it if necessary
144     */
145    public ID getObx2_ValueType() { 
146                ID retVal = this.getTypedField(2, 0);
147                return retVal;
148    }
149
150
151
152    /**
153     * Returns
154     * OBX-3: "Observation Identifier" - creates it if necessary
155     */
156    public CE getObservationIdentifier() { 
157                CE retVal = this.getTypedField(3, 0);
158                return retVal;
159    }
160    
161    /**
162     * Returns
163     * OBX-3: "Observation Identifier" - creates it if necessary
164     */
165    public CE getObx3_ObservationIdentifier() { 
166                CE retVal = this.getTypedField(3, 0);
167                return retVal;
168    }
169
170
171
172    /**
173     * Returns
174     * OBX-4: "Observation Sub-Id" - creates it if necessary
175     */
176    public ST getObservationSubId() { 
177                ST retVal = this.getTypedField(4, 0);
178                return retVal;
179    }
180    
181    /**
182     * Returns
183     * OBX-4: "Observation Sub-Id" - creates it if necessary
184     */
185    public ST getObx4_ObservationSubId() { 
186                ST retVal = this.getTypedField(4, 0);
187                return retVal;
188    }
189
190
191    /**
192     * Returns all repetitions of Observation Value (OBX-5).
193     */
194    public Varies[] getObservationValue() {
195        Varies[] retVal = this.getTypedField(5, new Varies[0]);
196        return retVal;
197    }
198
199
200    /**
201     * Returns all repetitions of Observation Value (OBX-5).
202     */
203    public Varies[] getObx5_ObservationValue() {
204        Varies[] retVal = this.getTypedField(5, new Varies[0]);
205        return retVal;
206    }
207
208
209    /**
210     * Returns a count of the current number of repetitions of Observation Value (OBX-5).
211     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
212     * it will return zero.
213     */
214    public int getObservationValueReps() {
215        return this.getReps(5);
216    }
217
218
219    /**
220     * Returns a specific repetition of
221     * OBX-5: "Observation Value" - creates it if necessary
222     *
223     * @param rep The repetition index (0-indexed)
224     */
225    public Varies getObservationValue(int rep) { 
226                Varies retVal = this.getTypedField(5, rep);
227                return retVal;
228    }
229
230    /**
231     * Returns a specific repetition of
232     * OBX-5: "Observation Value" - creates it if necessary
233     *
234     * @param rep The repetition index (0-indexed)
235     */
236    public Varies getObx5_ObservationValue(int rep) { 
237                Varies retVal = this.getTypedField(5, rep);
238                return retVal;
239    }
240
241    /**
242     * Returns a count of the current number of repetitions of Observation Value (OBX-5).
243     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
244     * it will return zero.
245     */
246    public int getObx5_ObservationValueReps() {
247        return this.getReps(5);
248    }
249
250
251    /**
252     * Inserts a repetition of
253     * OBX-5: "Observation Value" at a specific index
254     *
255     * @param rep The repetition index (0-indexed)
256     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
257     */
258    public Varies insertObservationValue(int rep) throws HL7Exception { 
259        return (Varies) super.insertRepetition(5, rep);
260    }
261
262
263    /**
264     * Inserts a repetition of
265     * OBX-5: "Observation Value" at a specific index
266     *
267     * @param rep The repetition index (0-indexed)
268     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
269     */
270    public Varies insertObx5_ObservationValue(int rep) throws HL7Exception { 
271        return (Varies) super.insertRepetition(5, rep);
272    }
273
274
275    /**
276     * Removes a repetition of
277     * OBX-5: "Observation Value" at a specific index
278     *
279     * @param rep The repetition index (0-indexed)
280     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
281     */
282    public Varies removeObservationValue(int rep) throws HL7Exception { 
283        return (Varies) super.removeRepetition(5, rep);
284    }
285
286
287    /**
288     * Removes a repetition of
289     * OBX-5: "Observation Value" at a specific index
290     *
291     * @param rep The repetition index (0-indexed)
292     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
293     */
294    public Varies removeObx5_ObservationValue(int rep) throws HL7Exception { 
295        return (Varies) super.removeRepetition(5, rep);
296    }
297
298
299
300
301    /**
302     * Returns
303     * OBX-6: "Units" - creates it if necessary
304     */
305    public CE getUnits() { 
306                CE retVal = this.getTypedField(6, 0);
307                return retVal;
308    }
309    
310    /**
311     * Returns
312     * OBX-6: "Units" - creates it if necessary
313     */
314    public CE getObx6_Units() { 
315                CE retVal = this.getTypedField(6, 0);
316                return retVal;
317    }
318
319
320
321    /**
322     * Returns
323     * OBX-7: "References Range" - creates it if necessary
324     */
325    public ST getReferencesRange() { 
326                ST retVal = this.getTypedField(7, 0);
327                return retVal;
328    }
329    
330    /**
331     * Returns
332     * OBX-7: "References Range" - creates it if necessary
333     */
334    public ST getObx7_ReferencesRange() { 
335                ST retVal = this.getTypedField(7, 0);
336                return retVal;
337    }
338
339
340
341    /**
342     * Returns
343     * OBX-8: "Abnormal Flags" - creates it if necessary
344     */
345    public IS getAbnormalFlags() { 
346                IS retVal = this.getTypedField(8, 0);
347                return retVal;
348    }
349    
350    /**
351     * Returns
352     * OBX-8: "Abnormal Flags" - creates it if necessary
353     */
354    public IS getObx8_AbnormalFlags() { 
355                IS retVal = this.getTypedField(8, 0);
356                return retVal;
357    }
358
359
360    /**
361     * Returns all repetitions of Probability (OBX-9).
362     */
363    public NM[] getProbability() {
364        NM[] retVal = this.getTypedField(9, new NM[0]);
365        return retVal;
366    }
367
368
369    /**
370     * Returns all repetitions of Probability (OBX-9).
371     */
372    public NM[] getObx9_Probability() {
373        NM[] retVal = this.getTypedField(9, new NM[0]);
374        return retVal;
375    }
376
377
378    /**
379     * Returns a count of the current number of repetitions of Probability (OBX-9).
380     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
381     * it will return zero.
382     */
383    public int getProbabilityReps() {
384        return this.getReps(9);
385    }
386
387
388    /**
389     * Returns a specific repetition of
390     * OBX-9: "Probability" - creates it if necessary
391     *
392     * @param rep The repetition index (0-indexed)
393     */
394    public NM getProbability(int rep) { 
395                NM retVal = this.getTypedField(9, rep);
396                return retVal;
397    }
398
399    /**
400     * Returns a specific repetition of
401     * OBX-9: "Probability" - creates it if necessary
402     *
403     * @param rep The repetition index (0-indexed)
404     */
405    public NM getObx9_Probability(int rep) { 
406                NM retVal = this.getTypedField(9, rep);
407                return retVal;
408    }
409
410    /**
411     * Returns a count of the current number of repetitions of Probability (OBX-9).
412     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
413     * it will return zero.
414     */
415    public int getObx9_ProbabilityReps() {
416        return this.getReps(9);
417    }
418
419
420    /**
421     * Inserts a repetition of
422     * OBX-9: "Probability" at a specific index
423     *
424     * @param rep The repetition index (0-indexed)
425     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
426     */
427    public NM insertProbability(int rep) throws HL7Exception { 
428        return (NM) super.insertRepetition(9, rep);
429    }
430
431
432    /**
433     * Inserts a repetition of
434     * OBX-9: "Probability" at a specific index
435     *
436     * @param rep The repetition index (0-indexed)
437     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
438     */
439    public NM insertObx9_Probability(int rep) throws HL7Exception { 
440        return (NM) super.insertRepetition(9, rep);
441    }
442
443
444    /**
445     * Removes a repetition of
446     * OBX-9: "Probability" at a specific index
447     *
448     * @param rep The repetition index (0-indexed)
449     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
450     */
451    public NM removeProbability(int rep) throws HL7Exception { 
452        return (NM) super.removeRepetition(9, rep);
453    }
454
455
456    /**
457     * Removes a repetition of
458     * OBX-9: "Probability" at a specific index
459     *
460     * @param rep The repetition index (0-indexed)
461     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
462     */
463    public NM removeObx9_Probability(int rep) throws HL7Exception { 
464        return (NM) super.removeRepetition(9, rep);
465    }
466
467
468
469
470    /**
471     * Returns
472     * OBX-10: "Nature of Abnormal Test" - creates it if necessary
473     */
474    public ID getNatureOfAbnormalTest() { 
475                ID retVal = this.getTypedField(10, 0);
476                return retVal;
477    }
478    
479    /**
480     * Returns
481     * OBX-10: "Nature of Abnormal Test" - creates it if necessary
482     */
483    public ID getObx10_NatureOfAbnormalTest() { 
484                ID retVal = this.getTypedField(10, 0);
485                return retVal;
486    }
487
488
489
490    /**
491     * Returns
492     * OBX-11: "Observation Result Status" - creates it if necessary
493     */
494    public ID getObservationResultStatus() { 
495                ID retVal = this.getTypedField(11, 0);
496                return retVal;
497    }
498    
499    /**
500     * Returns
501     * OBX-11: "Observation Result Status" - creates it if necessary
502     */
503    public ID getObx11_ObservationResultStatus() { 
504                ID retVal = this.getTypedField(11, 0);
505                return retVal;
506    }
507
508
509
510    /**
511     * Returns
512     * OBX-12: "Date Last Observation Normal Value" - creates it if necessary
513     */
514    public TS getDateLastObservationNormalValue() { 
515                TS retVal = this.getTypedField(12, 0);
516                return retVal;
517    }
518    
519    /**
520     * Returns
521     * OBX-12: "Date Last Observation Normal Value" - creates it if necessary
522     */
523    public TS getObx12_DateLastObservationNormalValue() { 
524                TS retVal = this.getTypedField(12, 0);
525                return retVal;
526    }
527
528
529
530    /**
531     * Returns
532     * OBX-13: "User Defined Access Checks" - creates it if necessary
533     */
534    public ST getUserDefinedAccessChecks() { 
535                ST retVal = this.getTypedField(13, 0);
536                return retVal;
537    }
538    
539    /**
540     * Returns
541     * OBX-13: "User Defined Access Checks" - creates it if necessary
542     */
543    public ST getObx13_UserDefinedAccessChecks() { 
544                ST retVal = this.getTypedField(13, 0);
545                return retVal;
546    }
547
548
549
550    /**
551     * Returns
552     * OBX-14: "Date/Time of the Observation" - creates it if necessary
553     */
554    public TS getDateTimeOfTheObservation() { 
555                TS retVal = this.getTypedField(14, 0);
556                return retVal;
557    }
558    
559    /**
560     * Returns
561     * OBX-14: "Date/Time of the Observation" - creates it if necessary
562     */
563    public TS getObx14_DateTimeOfTheObservation() { 
564                TS retVal = this.getTypedField(14, 0);
565                return retVal;
566    }
567
568
569
570    /**
571     * Returns
572     * OBX-15: "Producer's ID" - creates it if necessary
573     */
574    public CE getProducerSID() { 
575                CE retVal = this.getTypedField(15, 0);
576                return retVal;
577    }
578    
579    /**
580     * Returns
581     * OBX-15: "Producer's ID" - creates it if necessary
582     */
583    public CE getObx15_ProducerSID() { 
584                CE retVal = this.getTypedField(15, 0);
585                return retVal;
586    }
587
588
589
590    /**
591     * Returns
592     * OBX-16: "Responsible Observer" - creates it if necessary
593     */
594    public XCN getResponsibleObserver() { 
595                XCN retVal = this.getTypedField(16, 0);
596                return retVal;
597    }
598    
599    /**
600     * Returns
601     * OBX-16: "Responsible Observer" - creates it if necessary
602     */
603    public XCN getObx16_ResponsibleObserver() { 
604                XCN retVal = this.getTypedField(16, 0);
605                return retVal;
606    }
607
608
609    /**
610     * Returns all repetitions of Observation Method (OBX-17).
611     */
612    public CE[] getObservationMethod() {
613        CE[] retVal = this.getTypedField(17, new CE[0]);
614        return retVal;
615    }
616
617
618    /**
619     * Returns all repetitions of Observation Method (OBX-17).
620     */
621    public CE[] getObx17_ObservationMethod() {
622        CE[] retVal = this.getTypedField(17, new CE[0]);
623        return retVal;
624    }
625
626
627    /**
628     * Returns a count of the current number of repetitions of Observation Method (OBX-17).
629     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
630     * it will return zero.
631     */
632    public int getObservationMethodReps() {
633        return this.getReps(17);
634    }
635
636
637    /**
638     * Returns a specific repetition of
639     * OBX-17: "Observation Method" - creates it if necessary
640     *
641     * @param rep The repetition index (0-indexed)
642     */
643    public CE getObservationMethod(int rep) { 
644                CE retVal = this.getTypedField(17, rep);
645                return retVal;
646    }
647
648    /**
649     * Returns a specific repetition of
650     * OBX-17: "Observation Method" - creates it if necessary
651     *
652     * @param rep The repetition index (0-indexed)
653     */
654    public CE getObx17_ObservationMethod(int rep) { 
655                CE retVal = this.getTypedField(17, rep);
656                return retVal;
657    }
658
659    /**
660     * Returns a count of the current number of repetitions of Observation Method (OBX-17).
661     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
662     * it will return zero.
663     */
664    public int getObx17_ObservationMethodReps() {
665        return this.getReps(17);
666    }
667
668
669    /**
670     * Inserts a repetition of
671     * OBX-17: "Observation Method" at a specific index
672     *
673     * @param rep The repetition index (0-indexed)
674     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
675     */
676    public CE insertObservationMethod(int rep) throws HL7Exception { 
677        return (CE) super.insertRepetition(17, rep);
678    }
679
680
681    /**
682     * Inserts a repetition of
683     * OBX-17: "Observation Method" at a specific index
684     *
685     * @param rep The repetition index (0-indexed)
686     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
687     */
688    public CE insertObx17_ObservationMethod(int rep) throws HL7Exception { 
689        return (CE) super.insertRepetition(17, rep);
690    }
691
692
693    /**
694     * Removes a repetition of
695     * OBX-17: "Observation Method" at a specific index
696     *
697     * @param rep The repetition index (0-indexed)
698     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
699     */
700    public CE removeObservationMethod(int rep) throws HL7Exception { 
701        return (CE) super.removeRepetition(17, rep);
702    }
703
704
705    /**
706     * Removes a repetition of
707     * OBX-17: "Observation Method" at a specific index
708     *
709     * @param rep The repetition index (0-indexed)
710     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
711     */
712    public CE removeObx17_ObservationMethod(int rep) throws HL7Exception { 
713        return (CE) super.removeRepetition(17, rep);
714    }
715
716
717
718    /**
719     * Returns all repetitions of Equipment Instance Identifier (OBX-18).
720     */
721    public EI[] getEquipmentInstanceIdentifier() {
722        EI[] retVal = this.getTypedField(18, new EI[0]);
723        return retVal;
724    }
725
726
727    /**
728     * Returns all repetitions of Equipment Instance Identifier (OBX-18).
729     */
730    public EI[] getObx18_EquipmentInstanceIdentifier() {
731        EI[] retVal = this.getTypedField(18, new EI[0]);
732        return retVal;
733    }
734
735
736    /**
737     * Returns a count of the current number of repetitions of Equipment Instance Identifier (OBX-18).
738     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
739     * it will return zero.
740     */
741    public int getEquipmentInstanceIdentifierReps() {
742        return this.getReps(18);
743    }
744
745
746    /**
747     * Returns a specific repetition of
748     * OBX-18: "Equipment Instance Identifier" - creates it if necessary
749     *
750     * @param rep The repetition index (0-indexed)
751     */
752    public EI getEquipmentInstanceIdentifier(int rep) { 
753                EI retVal = this.getTypedField(18, rep);
754                return retVal;
755    }
756
757    /**
758     * Returns a specific repetition of
759     * OBX-18: "Equipment Instance Identifier" - creates it if necessary
760     *
761     * @param rep The repetition index (0-indexed)
762     */
763    public EI getObx18_EquipmentInstanceIdentifier(int rep) { 
764                EI retVal = this.getTypedField(18, rep);
765                return retVal;
766    }
767
768    /**
769     * Returns a count of the current number of repetitions of Equipment Instance Identifier (OBX-18).
770     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
771     * it will return zero.
772     */
773    public int getObx18_EquipmentInstanceIdentifierReps() {
774        return this.getReps(18);
775    }
776
777
778    /**
779     * Inserts a repetition of
780     * OBX-18: "Equipment Instance Identifier" at a specific index
781     *
782     * @param rep The repetition index (0-indexed)
783     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
784     */
785    public EI insertEquipmentInstanceIdentifier(int rep) throws HL7Exception { 
786        return (EI) super.insertRepetition(18, rep);
787    }
788
789
790    /**
791     * Inserts a repetition of
792     * OBX-18: "Equipment Instance Identifier" at a specific index
793     *
794     * @param rep The repetition index (0-indexed)
795     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
796     */
797    public EI insertObx18_EquipmentInstanceIdentifier(int rep) throws HL7Exception { 
798        return (EI) super.insertRepetition(18, rep);
799    }
800
801
802    /**
803     * Removes a repetition of
804     * OBX-18: "Equipment Instance Identifier" at a specific index
805     *
806     * @param rep The repetition index (0-indexed)
807     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
808     */
809    public EI removeEquipmentInstanceIdentifier(int rep) throws HL7Exception { 
810        return (EI) super.removeRepetition(18, rep);
811    }
812
813
814    /**
815     * Removes a repetition of
816     * OBX-18: "Equipment Instance Identifier" at a specific index
817     *
818     * @param rep The repetition index (0-indexed)
819     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
820     */
821    public EI removeObx18_EquipmentInstanceIdentifier(int rep) throws HL7Exception { 
822        return (EI) super.removeRepetition(18, rep);
823    }
824
825
826
827
828    /**
829     * Returns
830     * OBX-19: "Date/Time of the Analysis" - creates it if necessary
831     */
832    public TS getDateTimeOfTheAnalysis() { 
833                TS retVal = this.getTypedField(19, 0);
834                return retVal;
835    }
836    
837    /**
838     * Returns
839     * OBX-19: "Date/Time of the Analysis" - creates it if necessary
840     */
841    public TS getObx19_DateTimeOfTheAnalysis() { 
842                TS retVal = this.getTypedField(19, 0);
843                return retVal;
844    }
845
846
847
848
849
850    /** {@inheritDoc} */   
851    protected Type createNewTypeWithoutReflection(int field) {
852       switch (field) {
853          case 0: return new SI(getMessage());
854          case 1: return new ID(getMessage(), new Integer( 125 ));
855          case 2: return new CE(getMessage());
856          case 3: return new ST(getMessage());
857          case 4: return new Varies(getMessage());
858          case 5: return new CE(getMessage());
859          case 6: return new ST(getMessage());
860          case 7: return new IS(getMessage(), new Integer( 78 ));
861          case 8: return new NM(getMessage());
862          case 9: return new ID(getMessage(), new Integer( 80 ));
863          case 10: return new ID(getMessage(), new Integer( 85 ));
864          case 11: return new TS(getMessage());
865          case 12: return new ST(getMessage());
866          case 13: return new TS(getMessage());
867          case 14: return new CE(getMessage());
868          case 15: return new XCN(getMessage());
869          case 16: return new CE(getMessage());
870          case 17: return new EI(getMessage());
871          case 18: return new TS(getMessage());
872          default: return null;
873       }
874   }
875
876
877}
878