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