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 RXO message segment (Pharmacy/Treatment Order). 
050 * This segment has the following fields:</p>
051 * <ul>
052     * <li>RXO-1: Requested Give Code (CE) <b>optional </b>
053     * <li>RXO-2: Requested Give Amount - Minimum (NM) <b>optional </b>
054     * <li>RXO-3: Requested Give Amount - Maximum (NM) <b>optional </b>
055     * <li>RXO-4: Requested Give Units (CE) <b>optional </b>
056     * <li>RXO-5: Requested Dosage Form (CE) <b>optional </b>
057     * <li>RXO-6: Provider's Pharmacy/Treatment Instructions (CE) <b>optional repeating</b>
058     * <li>RXO-7: Provider's Administration Instructions (CE) <b>optional repeating</b>
059     * <li>RXO-8: Deliver-To Location (LA1) <b>optional </b>
060     * <li>RXO-9: Allow Substitutions (ID) <b>optional </b>
061     * <li>RXO-10: Requested Dispense Code (CE) <b>optional </b>
062     * <li>RXO-11: Requested Dispense Amount (NM) <b>optional </b>
063     * <li>RXO-12: Requested Dispense Units (CE) <b>optional </b>
064     * <li>RXO-13: Number of Refills (NM) <b>optional </b>
065     * <li>RXO-14: Ordering Provider's DEA Number (XCN) <b>optional repeating</b>
066     * <li>RXO-15: Pharmacist/Treatment Supplier's Verifier ID (XCN) <b>optional repeating</b>
067     * <li>RXO-16: Needs Human Review (ID) <b>optional </b>
068     * <li>RXO-17: Requested Give Per (Time Unit) (ST) <b>optional </b>
069     * <li>RXO-18: Requested Give Strength (NM) <b>optional </b>
070     * <li>RXO-19: Requested Give Strength Units (CE) <b>optional </b>
071     * <li>RXO-20: Indication (CE) <b>optional repeating</b>
072     * <li>RXO-21: Requested Give Rate Amount (ST) <b>optional </b>
073     * <li>RXO-22: Requested Give Rate Units (CE) <b>optional </b>
074     * <li>RXO-23: Total Daily Dose (CQ) <b>optional </b>
075     * <li>RXO-24: Supplementary Code (CE) <b>optional repeating</b>
076 * </ul>
077 */
078@SuppressWarnings("unused")
079public class RXO extends AbstractSegment {
080
081    /** 
082     * Creates a new RXO segment
083     */
084    public RXO(Group parent, ModelClassFactory factory) {
085       super(parent, factory);
086       init(factory);
087    }
088
089    private void init(ModelClassFactory factory) {
090       try {
091                                  this.add(CE.class, false, 1, 250, new Object[]{ getMessage() }, "Requested Give Code");
092                                  this.add(NM.class, false, 1, 20, new Object[]{ getMessage() }, "Requested Give Amount - Minimum");
093                                  this.add(NM.class, false, 1, 20, new Object[]{ getMessage() }, "Requested Give Amount - Maximum");
094                                  this.add(CE.class, false, 1, 250, new Object[]{ getMessage() }, "Requested Give Units");
095                                  this.add(CE.class, false, 1, 250, new Object[]{ getMessage() }, "Requested Dosage Form");
096                                  this.add(CE.class, false, 0, 250, new Object[]{ getMessage() }, "Provider's Pharmacy/Treatment Instructions");
097                                  this.add(CE.class, false, 0, 250, new Object[]{ getMessage() }, "Provider's Administration Instructions");
098                                  this.add(LA1.class, false, 1, 200, new Object[]{ getMessage() }, "Deliver-To Location");
099                                              this.add(ID.class, false, 1, 1, new Object[]{ getMessage(), new Integer(161) }, "Allow Substitutions");
100                                  this.add(CE.class, false, 1, 250, new Object[]{ getMessage() }, "Requested Dispense Code");
101                                  this.add(NM.class, false, 1, 20, new Object[]{ getMessage() }, "Requested Dispense Amount");
102                                  this.add(CE.class, false, 1, 250, new Object[]{ getMessage() }, "Requested Dispense Units");
103                                  this.add(NM.class, false, 1, 3, new Object[]{ getMessage() }, "Number of Refills");
104                                  this.add(XCN.class, false, 0, 250, new Object[]{ getMessage() }, "Ordering Provider's DEA Number");
105                                  this.add(XCN.class, false, 0, 250, new Object[]{ getMessage() }, "Pharmacist/Treatment Supplier's Verifier ID");
106                                              this.add(ID.class, false, 1, 1, new Object[]{ getMessage(), new Integer(136) }, "Needs Human Review");
107                                  this.add(ST.class, false, 1, 20, new Object[]{ getMessage() }, "Requested Give Per (Time Unit)");
108                                  this.add(NM.class, false, 1, 20, new Object[]{ getMessage() }, "Requested Give Strength");
109                                  this.add(CE.class, false, 1, 250, new Object[]{ getMessage() }, "Requested Give Strength Units");
110                                  this.add(CE.class, false, 0, 250, new Object[]{ getMessage() }, "Indication");
111                                  this.add(ST.class, false, 1, 6, new Object[]{ getMessage() }, "Requested Give Rate Amount");
112                                  this.add(CE.class, false, 1, 250, new Object[]{ getMessage() }, "Requested Give Rate Units");
113                                  this.add(CQ.class, false, 1, 10, new Object[]{ getMessage() }, "Total Daily Dose");
114                                  this.add(CE.class, false, 0, 250, new Object[]{ getMessage() }, "Supplementary Code");
115       } catch(HL7Exception e) {
116          log.error("Unexpected error creating RXO - this is probably a bug in the source code generator.", e);
117       }
118    }
119
120
121
122    /**
123     * Returns
124     * RXO-1: "Requested Give Code" - creates it if necessary
125     */
126    public CE getRequestedGiveCode() { 
127                CE retVal = this.getTypedField(1, 0);
128                return retVal;
129    }
130    
131    /**
132     * Returns
133     * RXO-1: "Requested Give Code" - creates it if necessary
134     */
135    public CE getRxo1_RequestedGiveCode() { 
136                CE retVal = this.getTypedField(1, 0);
137                return retVal;
138    }
139
140
141
142    /**
143     * Returns
144     * RXO-2: "Requested Give Amount - Minimum" - creates it if necessary
145     */
146    public NM getRequestedGiveAmountMinimum() { 
147                NM retVal = this.getTypedField(2, 0);
148                return retVal;
149    }
150    
151    /**
152     * Returns
153     * RXO-2: "Requested Give Amount - Minimum" - creates it if necessary
154     */
155    public NM getRxo2_RequestedGiveAmountMinimum() { 
156                NM retVal = this.getTypedField(2, 0);
157                return retVal;
158    }
159
160
161
162    /**
163     * Returns
164     * RXO-3: "Requested Give Amount - Maximum" - creates it if necessary
165     */
166    public NM getRequestedGiveAmountMaximum() { 
167                NM retVal = this.getTypedField(3, 0);
168                return retVal;
169    }
170    
171    /**
172     * Returns
173     * RXO-3: "Requested Give Amount - Maximum" - creates it if necessary
174     */
175    public NM getRxo3_RequestedGiveAmountMaximum() { 
176                NM retVal = this.getTypedField(3, 0);
177                return retVal;
178    }
179
180
181
182    /**
183     * Returns
184     * RXO-4: "Requested Give Units" - creates it if necessary
185     */
186    public CE getRequestedGiveUnits() { 
187                CE retVal = this.getTypedField(4, 0);
188                return retVal;
189    }
190    
191    /**
192     * Returns
193     * RXO-4: "Requested Give Units" - creates it if necessary
194     */
195    public CE getRxo4_RequestedGiveUnits() { 
196                CE retVal = this.getTypedField(4, 0);
197                return retVal;
198    }
199
200
201
202    /**
203     * Returns
204     * RXO-5: "Requested Dosage Form" - creates it if necessary
205     */
206    public CE getRequestedDosageForm() { 
207                CE retVal = this.getTypedField(5, 0);
208                return retVal;
209    }
210    
211    /**
212     * Returns
213     * RXO-5: "Requested Dosage Form" - creates it if necessary
214     */
215    public CE getRxo5_RequestedDosageForm() { 
216                CE retVal = this.getTypedField(5, 0);
217                return retVal;
218    }
219
220
221    /**
222     * Returns all repetitions of Provider's Pharmacy/Treatment Instructions (RXO-6).
223     */
224    public CE[] getProviderSPharmacyTreatmentInstructions() {
225        CE[] retVal = this.getTypedField(6, new CE[0]);
226        return retVal;
227    }
228
229
230    /**
231     * Returns all repetitions of Provider's Pharmacy/Treatment Instructions (RXO-6).
232     */
233    public CE[] getRxo6_ProviderSPharmacyTreatmentInstructions() {
234        CE[] retVal = this.getTypedField(6, new CE[0]);
235        return retVal;
236    }
237
238
239    /**
240     * Returns a count of the current number of repetitions of Provider's Pharmacy/Treatment Instructions (RXO-6).
241     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
242     * it will return zero.
243     */
244    public int getProviderSPharmacyTreatmentInstructionsReps() {
245        return this.getReps(6);
246    }
247
248
249    /**
250     * Returns a specific repetition of
251     * RXO-6: "Provider's Pharmacy/Treatment Instructions" - creates it if necessary
252     *
253     * @param rep The repetition index (0-indexed)
254     */
255    public CE getProviderSPharmacyTreatmentInstructions(int rep) { 
256                CE retVal = this.getTypedField(6, rep);
257                return retVal;
258    }
259
260    /**
261     * Returns a specific repetition of
262     * RXO-6: "Provider's Pharmacy/Treatment Instructions" - creates it if necessary
263     *
264     * @param rep The repetition index (0-indexed)
265     */
266    public CE getRxo6_ProviderSPharmacyTreatmentInstructions(int rep) { 
267                CE retVal = this.getTypedField(6, rep);
268                return retVal;
269    }
270
271    /**
272     * Returns a count of the current number of repetitions of Provider's Pharmacy/Treatment Instructions (RXO-6).
273     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
274     * it will return zero.
275     */
276    public int getRxo6_ProviderSPharmacyTreatmentInstructionsReps() {
277        return this.getReps(6);
278    }
279
280
281    /**
282     * Inserts a repetition of
283     * RXO-6: "Provider's Pharmacy/Treatment Instructions" at a specific index
284     *
285     * @param rep The repetition index (0-indexed)
286     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
287     */
288    public CE insertProviderSPharmacyTreatmentInstructions(int rep) throws HL7Exception { 
289        return (CE) super.insertRepetition(6, rep);
290    }
291
292
293    /**
294     * Inserts a repetition of
295     * RXO-6: "Provider's Pharmacy/Treatment Instructions" at a specific index
296     *
297     * @param rep The repetition index (0-indexed)
298     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
299     */
300    public CE insertRxo6_ProviderSPharmacyTreatmentInstructions(int rep) throws HL7Exception { 
301        return (CE) super.insertRepetition(6, rep);
302    }
303
304
305    /**
306     * Removes a repetition of
307     * RXO-6: "Provider's Pharmacy/Treatment Instructions" at a specific index
308     *
309     * @param rep The repetition index (0-indexed)
310     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
311     */
312    public CE removeProviderSPharmacyTreatmentInstructions(int rep) throws HL7Exception { 
313        return (CE) super.removeRepetition(6, rep);
314    }
315
316
317    /**
318     * Removes a repetition of
319     * RXO-6: "Provider's Pharmacy/Treatment Instructions" at a specific index
320     *
321     * @param rep The repetition index (0-indexed)
322     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
323     */
324    public CE removeRxo6_ProviderSPharmacyTreatmentInstructions(int rep) throws HL7Exception { 
325        return (CE) super.removeRepetition(6, rep);
326    }
327
328
329
330    /**
331     * Returns all repetitions of Provider's Administration Instructions (RXO-7).
332     */
333    public CE[] getProviderSAdministrationInstructions() {
334        CE[] retVal = this.getTypedField(7, new CE[0]);
335        return retVal;
336    }
337
338
339    /**
340     * Returns all repetitions of Provider's Administration Instructions (RXO-7).
341     */
342    public CE[] getRxo7_ProviderSAdministrationInstructions() {
343        CE[] retVal = this.getTypedField(7, new CE[0]);
344        return retVal;
345    }
346
347
348    /**
349     * Returns a count of the current number of repetitions of Provider's Administration Instructions (RXO-7).
350     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
351     * it will return zero.
352     */
353    public int getProviderSAdministrationInstructionsReps() {
354        return this.getReps(7);
355    }
356
357
358    /**
359     * Returns a specific repetition of
360     * RXO-7: "Provider's Administration Instructions" - creates it if necessary
361     *
362     * @param rep The repetition index (0-indexed)
363     */
364    public CE getProviderSAdministrationInstructions(int rep) { 
365                CE retVal = this.getTypedField(7, rep);
366                return retVal;
367    }
368
369    /**
370     * Returns a specific repetition of
371     * RXO-7: "Provider's Administration Instructions" - creates it if necessary
372     *
373     * @param rep The repetition index (0-indexed)
374     */
375    public CE getRxo7_ProviderSAdministrationInstructions(int rep) { 
376                CE retVal = this.getTypedField(7, rep);
377                return retVal;
378    }
379
380    /**
381     * Returns a count of the current number of repetitions of Provider's Administration Instructions (RXO-7).
382     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
383     * it will return zero.
384     */
385    public int getRxo7_ProviderSAdministrationInstructionsReps() {
386        return this.getReps(7);
387    }
388
389
390    /**
391     * Inserts a repetition of
392     * RXO-7: "Provider's Administration Instructions" at a specific index
393     *
394     * @param rep The repetition index (0-indexed)
395     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
396     */
397    public CE insertProviderSAdministrationInstructions(int rep) throws HL7Exception { 
398        return (CE) super.insertRepetition(7, rep);
399    }
400
401
402    /**
403     * Inserts a repetition of
404     * RXO-7: "Provider's Administration Instructions" at a specific index
405     *
406     * @param rep The repetition index (0-indexed)
407     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
408     */
409    public CE insertRxo7_ProviderSAdministrationInstructions(int rep) throws HL7Exception { 
410        return (CE) super.insertRepetition(7, rep);
411    }
412
413
414    /**
415     * Removes a repetition of
416     * RXO-7: "Provider's Administration Instructions" at a specific index
417     *
418     * @param rep The repetition index (0-indexed)
419     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
420     */
421    public CE removeProviderSAdministrationInstructions(int rep) throws HL7Exception { 
422        return (CE) super.removeRepetition(7, rep);
423    }
424
425
426    /**
427     * Removes a repetition of
428     * RXO-7: "Provider's Administration Instructions" at a specific index
429     *
430     * @param rep The repetition index (0-indexed)
431     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
432     */
433    public CE removeRxo7_ProviderSAdministrationInstructions(int rep) throws HL7Exception { 
434        return (CE) super.removeRepetition(7, rep);
435    }
436
437
438
439
440    /**
441     * Returns
442     * RXO-8: "Deliver-To Location" - creates it if necessary
443     */
444    public LA1 getDeliverToLocation() { 
445                LA1 retVal = this.getTypedField(8, 0);
446                return retVal;
447    }
448    
449    /**
450     * Returns
451     * RXO-8: "Deliver-To Location" - creates it if necessary
452     */
453    public LA1 getRxo8_DeliverToLocation() { 
454                LA1 retVal = this.getTypedField(8, 0);
455                return retVal;
456    }
457
458
459
460    /**
461     * Returns
462     * RXO-9: "Allow Substitutions" - creates it if necessary
463     */
464    public ID getAllowSubstitutions() { 
465                ID retVal = this.getTypedField(9, 0);
466                return retVal;
467    }
468    
469    /**
470     * Returns
471     * RXO-9: "Allow Substitutions" - creates it if necessary
472     */
473    public ID getRxo9_AllowSubstitutions() { 
474                ID retVal = this.getTypedField(9, 0);
475                return retVal;
476    }
477
478
479
480    /**
481     * Returns
482     * RXO-10: "Requested Dispense Code" - creates it if necessary
483     */
484    public CE getRequestedDispenseCode() { 
485                CE retVal = this.getTypedField(10, 0);
486                return retVal;
487    }
488    
489    /**
490     * Returns
491     * RXO-10: "Requested Dispense Code" - creates it if necessary
492     */
493    public CE getRxo10_RequestedDispenseCode() { 
494                CE retVal = this.getTypedField(10, 0);
495                return retVal;
496    }
497
498
499
500    /**
501     * Returns
502     * RXO-11: "Requested Dispense Amount" - creates it if necessary
503     */
504    public NM getRequestedDispenseAmount() { 
505                NM retVal = this.getTypedField(11, 0);
506                return retVal;
507    }
508    
509    /**
510     * Returns
511     * RXO-11: "Requested Dispense Amount" - creates it if necessary
512     */
513    public NM getRxo11_RequestedDispenseAmount() { 
514                NM retVal = this.getTypedField(11, 0);
515                return retVal;
516    }
517
518
519
520    /**
521     * Returns
522     * RXO-12: "Requested Dispense Units" - creates it if necessary
523     */
524    public CE getRequestedDispenseUnits() { 
525                CE retVal = this.getTypedField(12, 0);
526                return retVal;
527    }
528    
529    /**
530     * Returns
531     * RXO-12: "Requested Dispense Units" - creates it if necessary
532     */
533    public CE getRxo12_RequestedDispenseUnits() { 
534                CE retVal = this.getTypedField(12, 0);
535                return retVal;
536    }
537
538
539
540    /**
541     * Returns
542     * RXO-13: "Number of Refills" - creates it if necessary
543     */
544    public NM getNumberOfRefills() { 
545                NM retVal = this.getTypedField(13, 0);
546                return retVal;
547    }
548    
549    /**
550     * Returns
551     * RXO-13: "Number of Refills" - creates it if necessary
552     */
553    public NM getRxo13_NumberOfRefills() { 
554                NM retVal = this.getTypedField(13, 0);
555                return retVal;
556    }
557
558
559    /**
560     * Returns all repetitions of Ordering Provider's DEA Number (RXO-14).
561     */
562    public XCN[] getOrderingProviderSDEANumber() {
563        XCN[] retVal = this.getTypedField(14, new XCN[0]);
564        return retVal;
565    }
566
567
568    /**
569     * Returns all repetitions of Ordering Provider's DEA Number (RXO-14).
570     */
571    public XCN[] getRxo14_OrderingProviderSDEANumber() {
572        XCN[] retVal = this.getTypedField(14, new XCN[0]);
573        return retVal;
574    }
575
576
577    /**
578     * Returns a count of the current number of repetitions of Ordering Provider's DEA Number (RXO-14).
579     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
580     * it will return zero.
581     */
582    public int getOrderingProviderSDEANumberReps() {
583        return this.getReps(14);
584    }
585
586
587    /**
588     * Returns a specific repetition of
589     * RXO-14: "Ordering Provider's DEA Number" - creates it if necessary
590     *
591     * @param rep The repetition index (0-indexed)
592     */
593    public XCN getOrderingProviderSDEANumber(int rep) { 
594                XCN retVal = this.getTypedField(14, rep);
595                return retVal;
596    }
597
598    /**
599     * Returns a specific repetition of
600     * RXO-14: "Ordering Provider's DEA Number" - creates it if necessary
601     *
602     * @param rep The repetition index (0-indexed)
603     */
604    public XCN getRxo14_OrderingProviderSDEANumber(int rep) { 
605                XCN retVal = this.getTypedField(14, rep);
606                return retVal;
607    }
608
609    /**
610     * Returns a count of the current number of repetitions of Ordering Provider's DEA Number (RXO-14).
611     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
612     * it will return zero.
613     */
614    public int getRxo14_OrderingProviderSDEANumberReps() {
615        return this.getReps(14);
616    }
617
618
619    /**
620     * Inserts a repetition of
621     * RXO-14: "Ordering Provider's DEA Number" at a specific index
622     *
623     * @param rep The repetition index (0-indexed)
624     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
625     */
626    public XCN insertOrderingProviderSDEANumber(int rep) throws HL7Exception { 
627        return (XCN) super.insertRepetition(14, rep);
628    }
629
630
631    /**
632     * Inserts a repetition of
633     * RXO-14: "Ordering Provider's DEA Number" at a specific index
634     *
635     * @param rep The repetition index (0-indexed)
636     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
637     */
638    public XCN insertRxo14_OrderingProviderSDEANumber(int rep) throws HL7Exception { 
639        return (XCN) super.insertRepetition(14, rep);
640    }
641
642
643    /**
644     * Removes a repetition of
645     * RXO-14: "Ordering Provider's DEA Number" at a specific index
646     *
647     * @param rep The repetition index (0-indexed)
648     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
649     */
650    public XCN removeOrderingProviderSDEANumber(int rep) throws HL7Exception { 
651        return (XCN) super.removeRepetition(14, rep);
652    }
653
654
655    /**
656     * Removes a repetition of
657     * RXO-14: "Ordering Provider's DEA Number" at a specific index
658     *
659     * @param rep The repetition index (0-indexed)
660     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
661     */
662    public XCN removeRxo14_OrderingProviderSDEANumber(int rep) throws HL7Exception { 
663        return (XCN) super.removeRepetition(14, rep);
664    }
665
666
667
668    /**
669     * Returns all repetitions of Pharmacist/Treatment Supplier's Verifier ID (RXO-15).
670     */
671    public XCN[] getPharmacistTreatmentSupplierSVerifierID() {
672        XCN[] retVal = this.getTypedField(15, new XCN[0]);
673        return retVal;
674    }
675
676
677    /**
678     * Returns all repetitions of Pharmacist/Treatment Supplier's Verifier ID (RXO-15).
679     */
680    public XCN[] getRxo15_PharmacistTreatmentSupplierSVerifierID() {
681        XCN[] retVal = this.getTypedField(15, new XCN[0]);
682        return retVal;
683    }
684
685
686    /**
687     * Returns a count of the current number of repetitions of Pharmacist/Treatment Supplier's Verifier ID (RXO-15).
688     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
689     * it will return zero.
690     */
691    public int getPharmacistTreatmentSupplierSVerifierIDReps() {
692        return this.getReps(15);
693    }
694
695
696    /**
697     * Returns a specific repetition of
698     * RXO-15: "Pharmacist/Treatment Supplier's Verifier ID" - creates it if necessary
699     *
700     * @param rep The repetition index (0-indexed)
701     */
702    public XCN getPharmacistTreatmentSupplierSVerifierID(int rep) { 
703                XCN retVal = this.getTypedField(15, rep);
704                return retVal;
705    }
706
707    /**
708     * Returns a specific repetition of
709     * RXO-15: "Pharmacist/Treatment Supplier's Verifier ID" - creates it if necessary
710     *
711     * @param rep The repetition index (0-indexed)
712     */
713    public XCN getRxo15_PharmacistTreatmentSupplierSVerifierID(int rep) { 
714                XCN retVal = this.getTypedField(15, rep);
715                return retVal;
716    }
717
718    /**
719     * Returns a count of the current number of repetitions of Pharmacist/Treatment Supplier's Verifier ID (RXO-15).
720     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
721     * it will return zero.
722     */
723    public int getRxo15_PharmacistTreatmentSupplierSVerifierIDReps() {
724        return this.getReps(15);
725    }
726
727
728    /**
729     * Inserts a repetition of
730     * RXO-15: "Pharmacist/Treatment Supplier's Verifier ID" at a specific index
731     *
732     * @param rep The repetition index (0-indexed)
733     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
734     */
735    public XCN insertPharmacistTreatmentSupplierSVerifierID(int rep) throws HL7Exception { 
736        return (XCN) super.insertRepetition(15, rep);
737    }
738
739
740    /**
741     * Inserts a repetition of
742     * RXO-15: "Pharmacist/Treatment Supplier's Verifier ID" at a specific index
743     *
744     * @param rep The repetition index (0-indexed)
745     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
746     */
747    public XCN insertRxo15_PharmacistTreatmentSupplierSVerifierID(int rep) throws HL7Exception { 
748        return (XCN) super.insertRepetition(15, rep);
749    }
750
751
752    /**
753     * Removes a repetition of
754     * RXO-15: "Pharmacist/Treatment Supplier's Verifier ID" at a specific index
755     *
756     * @param rep The repetition index (0-indexed)
757     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
758     */
759    public XCN removePharmacistTreatmentSupplierSVerifierID(int rep) throws HL7Exception { 
760        return (XCN) super.removeRepetition(15, rep);
761    }
762
763
764    /**
765     * Removes a repetition of
766     * RXO-15: "Pharmacist/Treatment Supplier's Verifier ID" at a specific index
767     *
768     * @param rep The repetition index (0-indexed)
769     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
770     */
771    public XCN removeRxo15_PharmacistTreatmentSupplierSVerifierID(int rep) throws HL7Exception { 
772        return (XCN) super.removeRepetition(15, rep);
773    }
774
775
776
777
778    /**
779     * Returns
780     * RXO-16: "Needs Human Review" - creates it if necessary
781     */
782    public ID getNeedsHumanReview() { 
783                ID retVal = this.getTypedField(16, 0);
784                return retVal;
785    }
786    
787    /**
788     * Returns
789     * RXO-16: "Needs Human Review" - creates it if necessary
790     */
791    public ID getRxo16_NeedsHumanReview() { 
792                ID retVal = this.getTypedField(16, 0);
793                return retVal;
794    }
795
796
797
798    /**
799     * Returns
800     * RXO-17: "Requested Give Per (Time Unit)" - creates it if necessary
801     */
802    public ST getRequestedGivePerTimeUnit() { 
803                ST retVal = this.getTypedField(17, 0);
804                return retVal;
805    }
806    
807    /**
808     * Returns
809     * RXO-17: "Requested Give Per (Time Unit)" - creates it if necessary
810     */
811    public ST getRxo17_RequestedGivePerTimeUnit() { 
812                ST retVal = this.getTypedField(17, 0);
813                return retVal;
814    }
815
816
817
818    /**
819     * Returns
820     * RXO-18: "Requested Give Strength" - creates it if necessary
821     */
822    public NM getRequestedGiveStrength() { 
823                NM retVal = this.getTypedField(18, 0);
824                return retVal;
825    }
826    
827    /**
828     * Returns
829     * RXO-18: "Requested Give Strength" - creates it if necessary
830     */
831    public NM getRxo18_RequestedGiveStrength() { 
832                NM retVal = this.getTypedField(18, 0);
833                return retVal;
834    }
835
836
837
838    /**
839     * Returns
840     * RXO-19: "Requested Give Strength Units" - creates it if necessary
841     */
842    public CE getRequestedGiveStrengthUnits() { 
843                CE retVal = this.getTypedField(19, 0);
844                return retVal;
845    }
846    
847    /**
848     * Returns
849     * RXO-19: "Requested Give Strength Units" - creates it if necessary
850     */
851    public CE getRxo19_RequestedGiveStrengthUnits() { 
852                CE retVal = this.getTypedField(19, 0);
853                return retVal;
854    }
855
856
857    /**
858     * Returns all repetitions of Indication (RXO-20).
859     */
860    public CE[] getIndication() {
861        CE[] retVal = this.getTypedField(20, new CE[0]);
862        return retVal;
863    }
864
865
866    /**
867     * Returns all repetitions of Indication (RXO-20).
868     */
869    public CE[] getRxo20_Indication() {
870        CE[] retVal = this.getTypedField(20, new CE[0]);
871        return retVal;
872    }
873
874
875    /**
876     * Returns a count of the current number of repetitions of Indication (RXO-20).
877     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
878     * it will return zero.
879     */
880    public int getIndicationReps() {
881        return this.getReps(20);
882    }
883
884
885    /**
886     * Returns a specific repetition of
887     * RXO-20: "Indication" - creates it if necessary
888     *
889     * @param rep The repetition index (0-indexed)
890     */
891    public CE getIndication(int rep) { 
892                CE retVal = this.getTypedField(20, rep);
893                return retVal;
894    }
895
896    /**
897     * Returns a specific repetition of
898     * RXO-20: "Indication" - creates it if necessary
899     *
900     * @param rep The repetition index (0-indexed)
901     */
902    public CE getRxo20_Indication(int rep) { 
903                CE retVal = this.getTypedField(20, rep);
904                return retVal;
905    }
906
907    /**
908     * Returns a count of the current number of repetitions of Indication (RXO-20).
909     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
910     * it will return zero.
911     */
912    public int getRxo20_IndicationReps() {
913        return this.getReps(20);
914    }
915
916
917    /**
918     * Inserts a repetition of
919     * RXO-20: "Indication" at a specific index
920     *
921     * @param rep The repetition index (0-indexed)
922     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
923     */
924    public CE insertIndication(int rep) throws HL7Exception { 
925        return (CE) super.insertRepetition(20, rep);
926    }
927
928
929    /**
930     * Inserts a repetition of
931     * RXO-20: "Indication" at a specific index
932     *
933     * @param rep The repetition index (0-indexed)
934     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
935     */
936    public CE insertRxo20_Indication(int rep) throws HL7Exception { 
937        return (CE) super.insertRepetition(20, rep);
938    }
939
940
941    /**
942     * Removes a repetition of
943     * RXO-20: "Indication" at a specific index
944     *
945     * @param rep The repetition index (0-indexed)
946     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
947     */
948    public CE removeIndication(int rep) throws HL7Exception { 
949        return (CE) super.removeRepetition(20, rep);
950    }
951
952
953    /**
954     * Removes a repetition of
955     * RXO-20: "Indication" at a specific index
956     *
957     * @param rep The repetition index (0-indexed)
958     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
959     */
960    public CE removeRxo20_Indication(int rep) throws HL7Exception { 
961        return (CE) super.removeRepetition(20, rep);
962    }
963
964
965
966
967    /**
968     * Returns
969     * RXO-21: "Requested Give Rate Amount" - creates it if necessary
970     */
971    public ST getRequestedGiveRateAmount() { 
972                ST retVal = this.getTypedField(21, 0);
973                return retVal;
974    }
975    
976    /**
977     * Returns
978     * RXO-21: "Requested Give Rate Amount" - creates it if necessary
979     */
980    public ST getRxo21_RequestedGiveRateAmount() { 
981                ST retVal = this.getTypedField(21, 0);
982                return retVal;
983    }
984
985
986
987    /**
988     * Returns
989     * RXO-22: "Requested Give Rate Units" - creates it if necessary
990     */
991    public CE getRequestedGiveRateUnits() { 
992                CE retVal = this.getTypedField(22, 0);
993                return retVal;
994    }
995    
996    /**
997     * Returns
998     * RXO-22: "Requested Give Rate Units" - creates it if necessary
999     */
1000    public CE getRxo22_RequestedGiveRateUnits() { 
1001                CE retVal = this.getTypedField(22, 0);
1002                return retVal;
1003    }
1004
1005
1006
1007    /**
1008     * Returns
1009     * RXO-23: "Total Daily Dose" - creates it if necessary
1010     */
1011    public CQ getTotalDailyDose() { 
1012                CQ retVal = this.getTypedField(23, 0);
1013                return retVal;
1014    }
1015    
1016    /**
1017     * Returns
1018     * RXO-23: "Total Daily Dose" - creates it if necessary
1019     */
1020    public CQ getRxo23_TotalDailyDose() { 
1021                CQ retVal = this.getTypedField(23, 0);
1022                return retVal;
1023    }
1024
1025
1026    /**
1027     * Returns all repetitions of Supplementary Code (RXO-24).
1028     */
1029    public CE[] getSupplementaryCode() {
1030        CE[] retVal = this.getTypedField(24, new CE[0]);
1031        return retVal;
1032    }
1033
1034
1035    /**
1036     * Returns all repetitions of Supplementary Code (RXO-24).
1037     */
1038    public CE[] getRxo24_SupplementaryCode() {
1039        CE[] retVal = this.getTypedField(24, new CE[0]);
1040        return retVal;
1041    }
1042
1043
1044    /**
1045     * Returns a count of the current number of repetitions of Supplementary Code (RXO-24).
1046     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1047     * it will return zero.
1048     */
1049    public int getSupplementaryCodeReps() {
1050        return this.getReps(24);
1051    }
1052
1053
1054    /**
1055     * Returns a specific repetition of
1056     * RXO-24: "Supplementary Code" - creates it if necessary
1057     *
1058     * @param rep The repetition index (0-indexed)
1059     */
1060    public CE getSupplementaryCode(int rep) { 
1061                CE retVal = this.getTypedField(24, rep);
1062                return retVal;
1063    }
1064
1065    /**
1066     * Returns a specific repetition of
1067     * RXO-24: "Supplementary Code" - creates it if necessary
1068     *
1069     * @param rep The repetition index (0-indexed)
1070     */
1071    public CE getRxo24_SupplementaryCode(int rep) { 
1072                CE retVal = this.getTypedField(24, rep);
1073                return retVal;
1074    }
1075
1076    /**
1077     * Returns a count of the current number of repetitions of Supplementary Code (RXO-24).
1078     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1079     * it will return zero.
1080     */
1081    public int getRxo24_SupplementaryCodeReps() {
1082        return this.getReps(24);
1083    }
1084
1085
1086    /**
1087     * Inserts a repetition of
1088     * RXO-24: "Supplementary Code" at a specific index
1089     *
1090     * @param rep The repetition index (0-indexed)
1091     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1092     */
1093    public CE insertSupplementaryCode(int rep) throws HL7Exception { 
1094        return (CE) super.insertRepetition(24, rep);
1095    }
1096
1097
1098    /**
1099     * Inserts a repetition of
1100     * RXO-24: "Supplementary Code" at a specific index
1101     *
1102     * @param rep The repetition index (0-indexed)
1103     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1104     */
1105    public CE insertRxo24_SupplementaryCode(int rep) throws HL7Exception { 
1106        return (CE) super.insertRepetition(24, rep);
1107    }
1108
1109
1110    /**
1111     * Removes a repetition of
1112     * RXO-24: "Supplementary Code" at a specific index
1113     *
1114     * @param rep The repetition index (0-indexed)
1115     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1116     */
1117    public CE removeSupplementaryCode(int rep) throws HL7Exception { 
1118        return (CE) super.removeRepetition(24, rep);
1119    }
1120
1121
1122    /**
1123     * Removes a repetition of
1124     * RXO-24: "Supplementary Code" at a specific index
1125     *
1126     * @param rep The repetition index (0-indexed)
1127     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1128     */
1129    public CE removeRxo24_SupplementaryCode(int rep) throws HL7Exception { 
1130        return (CE) super.removeRepetition(24, rep);
1131    }
1132
1133
1134
1135
1136
1137
1138    /** {@inheritDoc} */   
1139    protected Type createNewTypeWithoutReflection(int field) {
1140       switch (field) {
1141          case 0: return new CE(getMessage());
1142          case 1: return new NM(getMessage());
1143          case 2: return new NM(getMessage());
1144          case 3: return new CE(getMessage());
1145          case 4: return new CE(getMessage());
1146          case 5: return new CE(getMessage());
1147          case 6: return new CE(getMessage());
1148          case 7: return new LA1(getMessage());
1149          case 8: return new ID(getMessage(), new Integer( 161 ));
1150          case 9: return new CE(getMessage());
1151          case 10: return new NM(getMessage());
1152          case 11: return new CE(getMessage());
1153          case 12: return new NM(getMessage());
1154          case 13: return new XCN(getMessage());
1155          case 14: return new XCN(getMessage());
1156          case 15: return new ID(getMessage(), new Integer( 136 ));
1157          case 16: return new ST(getMessage());
1158          case 17: return new NM(getMessage());
1159          case 18: return new CE(getMessage());
1160          case 19: return new CE(getMessage());
1161          case 20: return new ST(getMessage());
1162          case 21: return new CE(getMessage());
1163          case 22: return new CQ(getMessage());
1164          case 23: return new CE(getMessage());
1165          default: return null;
1166       }
1167   }
1168
1169
1170}
1171