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