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