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.v22.segment;
035
036// import ca.uhn.hl7v2.model.v22.group.*;
037import ca.uhn.hl7v2.model.v22.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 RXE message segment (PHARMACY ENCODED ORDER). 
049 * This segment has the following fields:</p>
050 * <ul>
051     * <li>RXE-1: Quantity / timing (TQ) <b>optional repeating</b>
052     * <li>RXE-2: Give Code (CE) <b> </b>
053     * <li>RXE-3: Give Amount - Minimum (NM) <b> </b>
054     * <li>RXE-4: Give Amount - Maximum (NM) <b>optional </b>
055     * <li>RXE-5: Give Units (CE) <b> </b>
056     * <li>RXE-6: Give Dosage Form (CE) <b>optional </b>
057     * <li>RXE-7: Provider's Administration Instructions (CE) <b>optional repeating</b>
058     * <li>RXE-8: Deliver-to location (CM_LA1) <b>optional </b>
059     * <li>RXE-9: Substitution Status (ID) <b>optional </b>
060     * <li>RXE-10: Dispense Amount (NM) <b>optional </b>
061     * <li>RXE-11: Dispense Units (CE) <b>optional </b>
062     * <li>RXE-12: Number of Refills (NM) <b>optional </b>
063     * <li>RXE-13: Ordering Provider's DEA Number (CN) <b>optional </b>
064     * <li>RXE-14: Pharmacist Verifier ID (CN) <b>optional </b>
065     * <li>RXE-15: Prescription Number (ST) <b> </b>
066     * <li>RXE-16: Number of Refills Remaining (NM) <b>optional </b>
067     * <li>RXE-17: Number of refills / doses dispensed (NM) <b>optional </b>
068     * <li>RXE-18: Date / time of most recent refill or dose dispensed (TS) <b>optional </b>
069     * <li>RXE-19: Total Daily Dose (CQ_QUANTITY) <b>optional </b>
070     * <li>RXE-20: Needs Human Review (ID) <b>optional </b>
071     * <li>RXE-21: Pharmacy Special Dispensing Instructions (CE) <b>optional </b>
072     * <li>RXE-22: Give Per (Time Unit) (ST) <b>optional </b>
073     * <li>RXE-23: Give Rate Amount (CE) <b>optional </b>
074     * <li>RXE-24: Give Rate Units (CE) <b>optional </b>
075 * </ul>
076 */
077@SuppressWarnings("unused")
078public class RXE extends AbstractSegment {
079
080    /** 
081     * Creates a new RXE segment
082     */
083    public RXE(Group parent, ModelClassFactory factory) {
084       super(parent, factory);
085       init(factory);
086    }
087
088    private void init(ModelClassFactory factory) {
089       try {
090                                  this.add(TQ.class, false, 0, 200, new Object[]{ getMessage() }, "Quantity / timing");
091                                  this.add(CE.class, true, 1, 100, new Object[]{ getMessage() }, "Give Code");
092                                  this.add(NM.class, true, 1, 20, new Object[]{ getMessage() }, "Give Amount - Minimum");
093                                  this.add(NM.class, false, 1, 20, new Object[]{ getMessage() }, "Give Amount - Maximum");
094                                  this.add(CE.class, true, 1, 60, new Object[]{ getMessage() }, "Give Units");
095                                  this.add(CE.class, false, 1, 60, new Object[]{ getMessage() }, "Give Dosage Form");
096                                  this.add(CE.class, false, 0, 200, new Object[]{ getMessage() }, "Provider's Administration Instructions");
097                                  this.add(CM_LA1.class, false, 1, 12, new Object[]{ getMessage() }, "Deliver-to location");
098                                              this.add(ID.class, false, 1, 1, new Object[]{ getMessage(), new Integer(167) }, "Substitution Status");
099                                  this.add(NM.class, false, 1, 20, new Object[]{ getMessage() }, "Dispense Amount");
100                                  this.add(CE.class, false, 1, 60, new Object[]{ getMessage() }, "Dispense Units");
101                                  this.add(NM.class, false, 1, 3, new Object[]{ getMessage() }, "Number of Refills");
102                                  this.add(CN.class, false, 1, 60, new Object[]{ getMessage() }, "Ordering Provider's DEA Number");
103                                  this.add(CN.class, false, 1, 60, new Object[]{ getMessage() }, "Pharmacist Verifier ID");
104                                  this.add(ST.class, true, 1, 20, new Object[]{ getMessage() }, "Prescription Number");
105                                  this.add(NM.class, false, 1, 20, new Object[]{ getMessage() }, "Number of Refills Remaining");
106                                  this.add(NM.class, false, 1, 20, new Object[]{ getMessage() }, "Number of refills / doses dispensed");
107                                  this.add(TS.class, false, 1, 26, new Object[]{ getMessage() }, "Date / time of most recent refill or dose dispensed");
108                                  this.add(CQ_QUANTITY.class, false, 1, 10, new Object[]{ getMessage() }, "Total Daily Dose");
109                                              this.add(ID.class, false, 1, 1, new Object[]{ getMessage(), new Integer(0) }, "Needs Human Review");
110                                  this.add(CE.class, false, 1, 200, new Object[]{ getMessage() }, "Pharmacy Special Dispensing Instructions");
111                                  this.add(ST.class, false, 1, 20, new Object[]{ getMessage() }, "Give Per (Time Unit)");
112                                  this.add(CE.class, false, 1, 6, new Object[]{ getMessage() }, "Give Rate Amount");
113                                  this.add(CE.class, false, 1, 60, new Object[]{ getMessage() }, "Give Rate Units");
114       } catch(HL7Exception e) {
115          log.error("Unexpected error creating RXE - this is probably a bug in the source code generator.", e);
116       }
117    }
118
119
120    /**
121     * Returns all repetitions of Quantity / timing (RXE-1).
122     */
123    public TQ[] getQuantityTiming() {
124        TQ[] retVal = this.getTypedField(1, new TQ[0]);
125        return retVal;
126    }
127
128
129    /**
130     * Returns all repetitions of Quantity / timing (RXE-1).
131     */
132    public TQ[] getRxe1_QuantityTiming() {
133        TQ[] retVal = this.getTypedField(1, new TQ[0]);
134        return retVal;
135    }
136
137
138    /**
139     * Returns a count of the current number of repetitions of Quantity / timing (RXE-1).
140     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
141     * it will return zero.
142     */
143    public int getQuantityTimingReps() {
144        return this.getReps(1);
145    }
146
147
148    /**
149     * Returns a specific repetition of
150     * RXE-1: "Quantity / timing" - creates it if necessary
151     *
152     * @param rep The repetition index (0-indexed)
153     */
154    public TQ getQuantityTiming(int rep) { 
155                TQ retVal = this.getTypedField(1, rep);
156                return retVal;
157    }
158
159    /**
160     * Returns a specific repetition of
161     * RXE-1: "Quantity / timing" - creates it if necessary
162     *
163     * @param rep The repetition index (0-indexed)
164     */
165    public TQ getRxe1_QuantityTiming(int rep) { 
166                TQ retVal = this.getTypedField(1, rep);
167                return retVal;
168    }
169
170    /**
171     * Returns a count of the current number of repetitions of Quantity / timing (RXE-1).
172     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
173     * it will return zero.
174     */
175    public int getRxe1_QuantityTimingReps() {
176        return this.getReps(1);
177    }
178
179
180    /**
181     * Inserts a repetition of
182     * RXE-1: "Quantity / timing" at a specific index
183     *
184     * @param rep The repetition index (0-indexed)
185     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
186     */
187    public TQ insertQuantityTiming(int rep) throws HL7Exception { 
188        return (TQ) super.insertRepetition(1, rep);
189    }
190
191
192    /**
193     * Inserts a repetition of
194     * RXE-1: "Quantity / timing" at a specific index
195     *
196     * @param rep The repetition index (0-indexed)
197     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
198     */
199    public TQ insertRxe1_QuantityTiming(int rep) throws HL7Exception { 
200        return (TQ) super.insertRepetition(1, rep);
201    }
202
203
204    /**
205     * Removes a repetition of
206     * RXE-1: "Quantity / timing" at a specific index
207     *
208     * @param rep The repetition index (0-indexed)
209     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
210     */
211    public TQ removeQuantityTiming(int rep) throws HL7Exception { 
212        return (TQ) super.removeRepetition(1, rep);
213    }
214
215
216    /**
217     * Removes a repetition of
218     * RXE-1: "Quantity / timing" at a specific index
219     *
220     * @param rep The repetition index (0-indexed)
221     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
222     */
223    public TQ removeRxe1_QuantityTiming(int rep) throws HL7Exception { 
224        return (TQ) super.removeRepetition(1, rep);
225    }
226
227
228
229
230    /**
231     * Returns
232     * RXE-2: "Give Code" - creates it if necessary
233     */
234    public CE getGiveCode() { 
235                CE retVal = this.getTypedField(2, 0);
236                return retVal;
237    }
238    
239    /**
240     * Returns
241     * RXE-2: "Give Code" - creates it if necessary
242     */
243    public CE getRxe2_GiveCode() { 
244                CE retVal = this.getTypedField(2, 0);
245                return retVal;
246    }
247
248
249
250    /**
251     * Returns
252     * RXE-3: "Give Amount - Minimum" - creates it if necessary
253     */
254    public NM getGiveAmountMinimum() { 
255                NM retVal = this.getTypedField(3, 0);
256                return retVal;
257    }
258    
259    /**
260     * Returns
261     * RXE-3: "Give Amount - Minimum" - creates it if necessary
262     */
263    public NM getRxe3_GiveAmountMinimum() { 
264                NM retVal = this.getTypedField(3, 0);
265                return retVal;
266    }
267
268
269
270    /**
271     * Returns
272     * RXE-4: "Give Amount - Maximum" - creates it if necessary
273     */
274    public NM getGiveAmountMaximum() { 
275                NM retVal = this.getTypedField(4, 0);
276                return retVal;
277    }
278    
279    /**
280     * Returns
281     * RXE-4: "Give Amount - Maximum" - creates it if necessary
282     */
283    public NM getRxe4_GiveAmountMaximum() { 
284                NM retVal = this.getTypedField(4, 0);
285                return retVal;
286    }
287
288
289
290    /**
291     * Returns
292     * RXE-5: "Give Units" - creates it if necessary
293     */
294    public CE getGiveUnits() { 
295                CE retVal = this.getTypedField(5, 0);
296                return retVal;
297    }
298    
299    /**
300     * Returns
301     * RXE-5: "Give Units" - creates it if necessary
302     */
303    public CE getRxe5_GiveUnits() { 
304                CE retVal = this.getTypedField(5, 0);
305                return retVal;
306    }
307
308
309
310    /**
311     * Returns
312     * RXE-6: "Give Dosage Form" - creates it if necessary
313     */
314    public CE getGiveDosageForm() { 
315                CE retVal = this.getTypedField(6, 0);
316                return retVal;
317    }
318    
319    /**
320     * Returns
321     * RXE-6: "Give Dosage Form" - creates it if necessary
322     */
323    public CE getRxe6_GiveDosageForm() { 
324                CE retVal = this.getTypedField(6, 0);
325                return retVal;
326    }
327
328
329    /**
330     * Returns all repetitions of Provider's Administration Instructions (RXE-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 (RXE-7).
340     */
341    public CE[] getRxe7_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 (RXE-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     * RXE-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     * RXE-7: "Provider's Administration Instructions" - creates it if necessary
371     *
372     * @param rep The repetition index (0-indexed)
373     */
374    public CE getRxe7_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 (RXE-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 getRxe7_ProviderSAdministrationInstructionsReps() {
385        return this.getReps(7);
386    }
387
388
389    /**
390     * Inserts a repetition of
391     * RXE-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     * RXE-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 insertRxe7_ProviderSAdministrationInstructions(int rep) throws HL7Exception { 
409        return (CE) super.insertRepetition(7, rep);
410    }
411
412
413    /**
414     * Removes a repetition of
415     * RXE-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     * RXE-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 removeRxe7_ProviderSAdministrationInstructions(int rep) throws HL7Exception { 
433        return (CE) super.removeRepetition(7, rep);
434    }
435
436
437
438
439    /**
440     * Returns
441     * RXE-8: "Deliver-to location" - creates it if necessary
442     */
443    public CM_LA1 getDeliverToLocation() { 
444                CM_LA1 retVal = this.getTypedField(8, 0);
445                return retVal;
446    }
447    
448    /**
449     * Returns
450     * RXE-8: "Deliver-to location" - creates it if necessary
451     */
452    public CM_LA1 getRxe8_DeliverToLocation() { 
453                CM_LA1 retVal = this.getTypedField(8, 0);
454                return retVal;
455    }
456
457
458
459    /**
460     * Returns
461     * RXE-9: "Substitution Status" - creates it if necessary
462     */
463    public ID getSubstitutionStatus() { 
464                ID retVal = this.getTypedField(9, 0);
465                return retVal;
466    }
467    
468    /**
469     * Returns
470     * RXE-9: "Substitution Status" - creates it if necessary
471     */
472    public ID getRxe9_SubstitutionStatus() { 
473                ID retVal = this.getTypedField(9, 0);
474                return retVal;
475    }
476
477
478
479    /**
480     * Returns
481     * RXE-10: "Dispense Amount" - creates it if necessary
482     */
483    public NM getDispenseAmount() { 
484                NM retVal = this.getTypedField(10, 0);
485                return retVal;
486    }
487    
488    /**
489     * Returns
490     * RXE-10: "Dispense Amount" - creates it if necessary
491     */
492    public NM getRxe10_DispenseAmount() { 
493                NM retVal = this.getTypedField(10, 0);
494                return retVal;
495    }
496
497
498
499    /**
500     * Returns
501     * RXE-11: "Dispense Units" - creates it if necessary
502     */
503    public CE getDispenseUnits() { 
504                CE retVal = this.getTypedField(11, 0);
505                return retVal;
506    }
507    
508    /**
509     * Returns
510     * RXE-11: "Dispense Units" - creates it if necessary
511     */
512    public CE getRxe11_DispenseUnits() { 
513                CE retVal = this.getTypedField(11, 0);
514                return retVal;
515    }
516
517
518
519    /**
520     * Returns
521     * RXE-12: "Number of Refills" - creates it if necessary
522     */
523    public NM getNumberOfRefills() { 
524                NM retVal = this.getTypedField(12, 0);
525                return retVal;
526    }
527    
528    /**
529     * Returns
530     * RXE-12: "Number of Refills" - creates it if necessary
531     */
532    public NM getRxe12_NumberOfRefills() { 
533                NM retVal = this.getTypedField(12, 0);
534                return retVal;
535    }
536
537
538
539    /**
540     * Returns
541     * RXE-13: "Ordering Provider's DEA Number" - creates it if necessary
542     */
543    public CN getOrderingProviderSDEANumber() { 
544                CN retVal = this.getTypedField(13, 0);
545                return retVal;
546    }
547    
548    /**
549     * Returns
550     * RXE-13: "Ordering Provider's DEA Number" - creates it if necessary
551     */
552    public CN getRxe13_OrderingProviderSDEANumber() { 
553                CN retVal = this.getTypedField(13, 0);
554                return retVal;
555    }
556
557
558
559    /**
560     * Returns
561     * RXE-14: "Pharmacist Verifier ID" - creates it if necessary
562     */
563    public CN getPharmacistVerifierID() { 
564                CN retVal = this.getTypedField(14, 0);
565                return retVal;
566    }
567    
568    /**
569     * Returns
570     * RXE-14: "Pharmacist Verifier ID" - creates it if necessary
571     */
572    public CN getRxe14_PharmacistVerifierID() { 
573                CN retVal = this.getTypedField(14, 0);
574                return retVal;
575    }
576
577
578
579    /**
580     * Returns
581     * RXE-15: "Prescription Number" - creates it if necessary
582     */
583    public ST getPrescriptionNumber() { 
584                ST retVal = this.getTypedField(15, 0);
585                return retVal;
586    }
587    
588    /**
589     * Returns
590     * RXE-15: "Prescription Number" - creates it if necessary
591     */
592    public ST getRxe15_PrescriptionNumber() { 
593                ST retVal = this.getTypedField(15, 0);
594                return retVal;
595    }
596
597
598
599    /**
600     * Returns
601     * RXE-16: "Number of Refills Remaining" - creates it if necessary
602     */
603    public NM getNumberOfRefillsRemaining() { 
604                NM retVal = this.getTypedField(16, 0);
605                return retVal;
606    }
607    
608    /**
609     * Returns
610     * RXE-16: "Number of Refills Remaining" - creates it if necessary
611     */
612    public NM getRxe16_NumberOfRefillsRemaining() { 
613                NM retVal = this.getTypedField(16, 0);
614                return retVal;
615    }
616
617
618
619    /**
620     * Returns
621     * RXE-17: "Number of refills / doses dispensed" - creates it if necessary
622     */
623    public NM getNumberOfRefillsDosesDispensed() { 
624                NM retVal = this.getTypedField(17, 0);
625                return retVal;
626    }
627    
628    /**
629     * Returns
630     * RXE-17: "Number of refills / doses dispensed" - creates it if necessary
631     */
632    public NM getRxe17_NumberOfRefillsDosesDispensed() { 
633                NM retVal = this.getTypedField(17, 0);
634                return retVal;
635    }
636
637
638
639    /**
640     * Returns
641     * RXE-18: "Date / time of most recent refill or dose dispensed" - creates it if necessary
642     */
643    public TS getDateTimeOfMostRecentRefillOrDoseDispensed() { 
644                TS retVal = this.getTypedField(18, 0);
645                return retVal;
646    }
647    
648    /**
649     * Returns
650     * RXE-18: "Date / time of most recent refill or dose dispensed" - creates it if necessary
651     */
652    public TS getRxe18_DateTimeOfMostRecentRefillOrDoseDispensed() { 
653                TS retVal = this.getTypedField(18, 0);
654                return retVal;
655    }
656
657
658
659    /**
660     * Returns
661     * RXE-19: "Total Daily Dose" - creates it if necessary
662     */
663    public CQ_QUANTITY getTotalDailyDose() { 
664                CQ_QUANTITY retVal = this.getTypedField(19, 0);
665                return retVal;
666    }
667    
668    /**
669     * Returns
670     * RXE-19: "Total Daily Dose" - creates it if necessary
671     */
672    public CQ_QUANTITY getRxe19_TotalDailyDose() { 
673                CQ_QUANTITY retVal = this.getTypedField(19, 0);
674                return retVal;
675    }
676
677
678
679    /**
680     * Returns
681     * RXE-20: "Needs Human Review" - creates it if necessary
682     */
683    public ID getNeedsHumanReview() { 
684                ID retVal = this.getTypedField(20, 0);
685                return retVal;
686    }
687    
688    /**
689     * Returns
690     * RXE-20: "Needs Human Review" - creates it if necessary
691     */
692    public ID getRxe20_NeedsHumanReview() { 
693                ID retVal = this.getTypedField(20, 0);
694                return retVal;
695    }
696
697
698
699    /**
700     * Returns
701     * RXE-21: "Pharmacy Special Dispensing Instructions" - creates it if necessary
702     */
703    public CE getPharmacySpecialDispensingInstructions() { 
704                CE retVal = this.getTypedField(21, 0);
705                return retVal;
706    }
707    
708    /**
709     * Returns
710     * RXE-21: "Pharmacy Special Dispensing Instructions" - creates it if necessary
711     */
712    public CE getRxe21_PharmacySpecialDispensingInstructions() { 
713                CE retVal = this.getTypedField(21, 0);
714                return retVal;
715    }
716
717
718
719    /**
720     * Returns
721     * RXE-22: "Give Per (Time Unit)" - creates it if necessary
722     */
723    public ST getGivePerTimeUnit() { 
724                ST retVal = this.getTypedField(22, 0);
725                return retVal;
726    }
727    
728    /**
729     * Returns
730     * RXE-22: "Give Per (Time Unit)" - creates it if necessary
731     */
732    public ST getRxe22_GivePerTimeUnit() { 
733                ST retVal = this.getTypedField(22, 0);
734                return retVal;
735    }
736
737
738
739    /**
740     * Returns
741     * RXE-23: "Give Rate Amount" - creates it if necessary
742     */
743    public CE getGiveRateAmount() { 
744                CE retVal = this.getTypedField(23, 0);
745                return retVal;
746    }
747    
748    /**
749     * Returns
750     * RXE-23: "Give Rate Amount" - creates it if necessary
751     */
752    public CE getRxe23_GiveRateAmount() { 
753                CE retVal = this.getTypedField(23, 0);
754                return retVal;
755    }
756
757
758
759    /**
760     * Returns
761     * RXE-24: "Give Rate Units" - creates it if necessary
762     */
763    public CE getGiveRateUnits() { 
764                CE retVal = this.getTypedField(24, 0);
765                return retVal;
766    }
767    
768    /**
769     * Returns
770     * RXE-24: "Give Rate Units" - creates it if necessary
771     */
772    public CE getRxe24_GiveRateUnits() { 
773                CE retVal = this.getTypedField(24, 0);
774                return retVal;
775    }
776
777
778
779
780
781    /** {@inheritDoc} */   
782    protected Type createNewTypeWithoutReflection(int field) {
783       switch (field) {
784          case 0: return new TQ(getMessage());
785          case 1: return new CE(getMessage());
786          case 2: return new NM(getMessage());
787          case 3: return new NM(getMessage());
788          case 4: return new CE(getMessage());
789          case 5: return new CE(getMessage());
790          case 6: return new CE(getMessage());
791          case 7: return new CM_LA1(getMessage());
792          case 8: return new ID(getMessage(), new Integer( 167 ));
793          case 9: return new NM(getMessage());
794          case 10: return new CE(getMessage());
795          case 11: return new NM(getMessage());
796          case 12: return new CN(getMessage());
797          case 13: return new CN(getMessage());
798          case 14: return new ST(getMessage());
799          case 15: return new NM(getMessage());
800          case 16: return new NM(getMessage());
801          case 17: return new TS(getMessage());
802          case 18: return new CQ_QUANTITY(getMessage());
803          case 19: return new ID(getMessage(), new Integer( 0 ));
804          case 20: return new CE(getMessage());
805          case 21: return new ST(getMessage());
806          case 22: return new CE(getMessage());
807          case 23: return new CE(getMessage());
808          default: return null;
809       }
810   }
811
812
813}
814