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 QRF message segment (QUERY FILTER). 
049 * This segment has the following fields:</p>
050 * <ul>
051     * <li>QRF-1: Where Subject Filter (ST) <b> repeating</b>
052     * <li>QRF-2: When data start date / time (TS) <b>optional </b>
053     * <li>QRF-3: When data end date / time (TS) <b>optional </b>
054     * <li>QRF-4: What User Qualifier (ST) <b>optional repeating</b>
055     * <li>QRF-5: Other QRY Subject Filter (ST) <b>optional repeating</b>
056     * <li>QRF-6: Which date / time qualifier (ID) <b>optional repeating</b>
057     * <li>QRF-7: Which date / time status qualifier (ID) <b>optional repeating</b>
058     * <li>QRF-8: Date / time selection qualifier (ID) <b>optional repeating</b>
059 * </ul>
060 */
061@SuppressWarnings("unused")
062public class QRF extends AbstractSegment {
063
064    /** 
065     * Creates a new QRF segment
066     */
067    public QRF(Group parent, ModelClassFactory factory) {
068       super(parent, factory);
069       init(factory);
070    }
071
072    private void init(ModelClassFactory factory) {
073       try {
074                                  this.add(ST.class, true, 0, 20, new Object[]{ getMessage() }, "Where Subject Filter");
075                                  this.add(TS.class, false, 1, 26, new Object[]{ getMessage() }, "When data start date / time");
076                                  this.add(TS.class, false, 1, 26, new Object[]{ getMessage() }, "When data end date / time");
077                                  this.add(ST.class, false, 0, 20, new Object[]{ getMessage() }, "What User Qualifier");
078                                  this.add(ST.class, false, 0, 20, new Object[]{ getMessage() }, "Other QRY Subject Filter");
079                                              this.add(ID.class, false, 0, 12, new Object[]{ getMessage(), new Integer(156) }, "Which date / time qualifier");
080                                              this.add(ID.class, false, 0, 12, new Object[]{ getMessage(), new Integer(157) }, "Which date / time status qualifier");
081                                              this.add(ID.class, false, 0, 12, new Object[]{ getMessage(), new Integer(158) }, "Date / time selection qualifier");
082       } catch(HL7Exception e) {
083          log.error("Unexpected error creating QRF - this is probably a bug in the source code generator.", e);
084       }
085    }
086
087
088    /**
089     * Returns all repetitions of Where Subject Filter (QRF-1).
090     */
091    public ST[] getWhereSubjectFilter() {
092        ST[] retVal = this.getTypedField(1, new ST[0]);
093        return retVal;
094    }
095
096
097    /**
098     * Returns all repetitions of Where Subject Filter (QRF-1).
099     */
100    public ST[] getQrf1_WhereSubjectFilter() {
101        ST[] retVal = this.getTypedField(1, new ST[0]);
102        return retVal;
103    }
104
105
106    /**
107     * Returns a count of the current number of repetitions of Where Subject Filter (QRF-1).
108     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
109     * it will return zero.
110     */
111    public int getWhereSubjectFilterReps() {
112        return this.getReps(1);
113    }
114
115
116    /**
117     * Returns a specific repetition of
118     * QRF-1: "Where Subject Filter" - creates it if necessary
119     *
120     * @param rep The repetition index (0-indexed)
121     */
122    public ST getWhereSubjectFilter(int rep) { 
123                ST retVal = this.getTypedField(1, rep);
124                return retVal;
125    }
126
127    /**
128     * Returns a specific repetition of
129     * QRF-1: "Where Subject Filter" - creates it if necessary
130     *
131     * @param rep The repetition index (0-indexed)
132     */
133    public ST getQrf1_WhereSubjectFilter(int rep) { 
134                ST retVal = this.getTypedField(1, rep);
135                return retVal;
136    }
137
138    /**
139     * Returns a count of the current number of repetitions of Where Subject Filter (QRF-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 getQrf1_WhereSubjectFilterReps() {
144        return this.getReps(1);
145    }
146
147
148    /**
149     * Inserts a repetition of
150     * QRF-1: "Where Subject Filter" at a specific index
151     *
152     * @param rep The repetition index (0-indexed)
153     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
154     */
155    public ST insertWhereSubjectFilter(int rep) throws HL7Exception { 
156        return (ST) super.insertRepetition(1, rep);
157    }
158
159
160    /**
161     * Inserts a repetition of
162     * QRF-1: "Where Subject Filter" at a specific index
163     *
164     * @param rep The repetition index (0-indexed)
165     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
166     */
167    public ST insertQrf1_WhereSubjectFilter(int rep) throws HL7Exception { 
168        return (ST) super.insertRepetition(1, rep);
169    }
170
171
172    /**
173     * Removes a repetition of
174     * QRF-1: "Where Subject Filter" at a specific index
175     *
176     * @param rep The repetition index (0-indexed)
177     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
178     */
179    public ST removeWhereSubjectFilter(int rep) throws HL7Exception { 
180        return (ST) super.removeRepetition(1, rep);
181    }
182
183
184    /**
185     * Removes a repetition of
186     * QRF-1: "Where Subject Filter" at a specific index
187     *
188     * @param rep The repetition index (0-indexed)
189     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
190     */
191    public ST removeQrf1_WhereSubjectFilter(int rep) throws HL7Exception { 
192        return (ST) super.removeRepetition(1, rep);
193    }
194
195
196
197
198    /**
199     * Returns
200     * QRF-2: "When data start date / time" - creates it if necessary
201     */
202    public TS getWhenDataStartDateTime() { 
203                TS retVal = this.getTypedField(2, 0);
204                return retVal;
205    }
206    
207    /**
208     * Returns
209     * QRF-2: "When data start date / time" - creates it if necessary
210     */
211    public TS getQrf2_WhenDataStartDateTime() { 
212                TS retVal = this.getTypedField(2, 0);
213                return retVal;
214    }
215
216
217
218    /**
219     * Returns
220     * QRF-3: "When data end date / time" - creates it if necessary
221     */
222    public TS getWhenDataEndDateTime() { 
223                TS retVal = this.getTypedField(3, 0);
224                return retVal;
225    }
226    
227    /**
228     * Returns
229     * QRF-3: "When data end date / time" - creates it if necessary
230     */
231    public TS getQrf3_WhenDataEndDateTime() { 
232                TS retVal = this.getTypedField(3, 0);
233                return retVal;
234    }
235
236
237    /**
238     * Returns all repetitions of What User Qualifier (QRF-4).
239     */
240    public ST[] getWhatUserQualifier() {
241        ST[] retVal = this.getTypedField(4, new ST[0]);
242        return retVal;
243    }
244
245
246    /**
247     * Returns all repetitions of What User Qualifier (QRF-4).
248     */
249    public ST[] getQrf4_WhatUserQualifier() {
250        ST[] retVal = this.getTypedField(4, new ST[0]);
251        return retVal;
252    }
253
254
255    /**
256     * Returns a count of the current number of repetitions of What User Qualifier (QRF-4).
257     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
258     * it will return zero.
259     */
260    public int getWhatUserQualifierReps() {
261        return this.getReps(4);
262    }
263
264
265    /**
266     * Returns a specific repetition of
267     * QRF-4: "What User Qualifier" - creates it if necessary
268     *
269     * @param rep The repetition index (0-indexed)
270     */
271    public ST getWhatUserQualifier(int rep) { 
272                ST retVal = this.getTypedField(4, rep);
273                return retVal;
274    }
275
276    /**
277     * Returns a specific repetition of
278     * QRF-4: "What User Qualifier" - creates it if necessary
279     *
280     * @param rep The repetition index (0-indexed)
281     */
282    public ST getQrf4_WhatUserQualifier(int rep) { 
283                ST retVal = this.getTypedField(4, rep);
284                return retVal;
285    }
286
287    /**
288     * Returns a count of the current number of repetitions of What User Qualifier (QRF-4).
289     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
290     * it will return zero.
291     */
292    public int getQrf4_WhatUserQualifierReps() {
293        return this.getReps(4);
294    }
295
296
297    /**
298     * Inserts a repetition of
299     * QRF-4: "What User Qualifier" at a specific index
300     *
301     * @param rep The repetition index (0-indexed)
302     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
303     */
304    public ST insertWhatUserQualifier(int rep) throws HL7Exception { 
305        return (ST) super.insertRepetition(4, rep);
306    }
307
308
309    /**
310     * Inserts a repetition of
311     * QRF-4: "What User Qualifier" at a specific index
312     *
313     * @param rep The repetition index (0-indexed)
314     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
315     */
316    public ST insertQrf4_WhatUserQualifier(int rep) throws HL7Exception { 
317        return (ST) super.insertRepetition(4, rep);
318    }
319
320
321    /**
322     * Removes a repetition of
323     * QRF-4: "What User Qualifier" at a specific index
324     *
325     * @param rep The repetition index (0-indexed)
326     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
327     */
328    public ST removeWhatUserQualifier(int rep) throws HL7Exception { 
329        return (ST) super.removeRepetition(4, rep);
330    }
331
332
333    /**
334     * Removes a repetition of
335     * QRF-4: "What User Qualifier" at a specific index
336     *
337     * @param rep The repetition index (0-indexed)
338     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
339     */
340    public ST removeQrf4_WhatUserQualifier(int rep) throws HL7Exception { 
341        return (ST) super.removeRepetition(4, rep);
342    }
343
344
345
346    /**
347     * Returns all repetitions of Other QRY Subject Filter (QRF-5).
348     */
349    public ST[] getOtherQRYSubjectFilter() {
350        ST[] retVal = this.getTypedField(5, new ST[0]);
351        return retVal;
352    }
353
354
355    /**
356     * Returns all repetitions of Other QRY Subject Filter (QRF-5).
357     */
358    public ST[] getQrf5_OtherQRYSubjectFilter() {
359        ST[] retVal = this.getTypedField(5, new ST[0]);
360        return retVal;
361    }
362
363
364    /**
365     * Returns a count of the current number of repetitions of Other QRY Subject Filter (QRF-5).
366     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
367     * it will return zero.
368     */
369    public int getOtherQRYSubjectFilterReps() {
370        return this.getReps(5);
371    }
372
373
374    /**
375     * Returns a specific repetition of
376     * QRF-5: "Other QRY Subject Filter" - creates it if necessary
377     *
378     * @param rep The repetition index (0-indexed)
379     */
380    public ST getOtherQRYSubjectFilter(int rep) { 
381                ST retVal = this.getTypedField(5, rep);
382                return retVal;
383    }
384
385    /**
386     * Returns a specific repetition of
387     * QRF-5: "Other QRY Subject Filter" - creates it if necessary
388     *
389     * @param rep The repetition index (0-indexed)
390     */
391    public ST getQrf5_OtherQRYSubjectFilter(int rep) { 
392                ST retVal = this.getTypedField(5, rep);
393                return retVal;
394    }
395
396    /**
397     * Returns a count of the current number of repetitions of Other QRY Subject Filter (QRF-5).
398     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
399     * it will return zero.
400     */
401    public int getQrf5_OtherQRYSubjectFilterReps() {
402        return this.getReps(5);
403    }
404
405
406    /**
407     * Inserts a repetition of
408     * QRF-5: "Other QRY Subject Filter" at a specific index
409     *
410     * @param rep The repetition index (0-indexed)
411     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
412     */
413    public ST insertOtherQRYSubjectFilter(int rep) throws HL7Exception { 
414        return (ST) super.insertRepetition(5, rep);
415    }
416
417
418    /**
419     * Inserts a repetition of
420     * QRF-5: "Other QRY Subject Filter" at a specific index
421     *
422     * @param rep The repetition index (0-indexed)
423     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
424     */
425    public ST insertQrf5_OtherQRYSubjectFilter(int rep) throws HL7Exception { 
426        return (ST) super.insertRepetition(5, rep);
427    }
428
429
430    /**
431     * Removes a repetition of
432     * QRF-5: "Other QRY Subject Filter" at a specific index
433     *
434     * @param rep The repetition index (0-indexed)
435     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
436     */
437    public ST removeOtherQRYSubjectFilter(int rep) throws HL7Exception { 
438        return (ST) super.removeRepetition(5, rep);
439    }
440
441
442    /**
443     * Removes a repetition of
444     * QRF-5: "Other QRY Subject Filter" at a specific index
445     *
446     * @param rep The repetition index (0-indexed)
447     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
448     */
449    public ST removeQrf5_OtherQRYSubjectFilter(int rep) throws HL7Exception { 
450        return (ST) super.removeRepetition(5, rep);
451    }
452
453
454
455    /**
456     * Returns all repetitions of Which date / time qualifier (QRF-6).
457     */
458    public ID[] getWhichDateTimeQualifier() {
459        ID[] retVal = this.getTypedField(6, new ID[0]);
460        return retVal;
461    }
462
463
464    /**
465     * Returns all repetitions of Which date / time qualifier (QRF-6).
466     */
467    public ID[] getQrf6_WhichDateTimeQualifier() {
468        ID[] retVal = this.getTypedField(6, new ID[0]);
469        return retVal;
470    }
471
472
473    /**
474     * Returns a count of the current number of repetitions of Which date / time qualifier (QRF-6).
475     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
476     * it will return zero.
477     */
478    public int getWhichDateTimeQualifierReps() {
479        return this.getReps(6);
480    }
481
482
483    /**
484     * Returns a specific repetition of
485     * QRF-6: "Which date / time qualifier" - creates it if necessary
486     *
487     * @param rep The repetition index (0-indexed)
488     */
489    public ID getWhichDateTimeQualifier(int rep) { 
490                ID retVal = this.getTypedField(6, rep);
491                return retVal;
492    }
493
494    /**
495     * Returns a specific repetition of
496     * QRF-6: "Which date / time qualifier" - creates it if necessary
497     *
498     * @param rep The repetition index (0-indexed)
499     */
500    public ID getQrf6_WhichDateTimeQualifier(int rep) { 
501                ID retVal = this.getTypedField(6, rep);
502                return retVal;
503    }
504
505    /**
506     * Returns a count of the current number of repetitions of Which date / time qualifier (QRF-6).
507     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
508     * it will return zero.
509     */
510    public int getQrf6_WhichDateTimeQualifierReps() {
511        return this.getReps(6);
512    }
513
514
515    /**
516     * Inserts a repetition of
517     * QRF-6: "Which date / time qualifier" at a specific index
518     *
519     * @param rep The repetition index (0-indexed)
520     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
521     */
522    public ID insertWhichDateTimeQualifier(int rep) throws HL7Exception { 
523        return (ID) super.insertRepetition(6, rep);
524    }
525
526
527    /**
528     * Inserts a repetition of
529     * QRF-6: "Which date / time qualifier" at a specific index
530     *
531     * @param rep The repetition index (0-indexed)
532     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
533     */
534    public ID insertQrf6_WhichDateTimeQualifier(int rep) throws HL7Exception { 
535        return (ID) super.insertRepetition(6, rep);
536    }
537
538
539    /**
540     * Removes a repetition of
541     * QRF-6: "Which date / time qualifier" at a specific index
542     *
543     * @param rep The repetition index (0-indexed)
544     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
545     */
546    public ID removeWhichDateTimeQualifier(int rep) throws HL7Exception { 
547        return (ID) super.removeRepetition(6, rep);
548    }
549
550
551    /**
552     * Removes a repetition of
553     * QRF-6: "Which date / time qualifier" at a specific index
554     *
555     * @param rep The repetition index (0-indexed)
556     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
557     */
558    public ID removeQrf6_WhichDateTimeQualifier(int rep) throws HL7Exception { 
559        return (ID) super.removeRepetition(6, rep);
560    }
561
562
563
564    /**
565     * Returns all repetitions of Which date / time status qualifier (QRF-7).
566     */
567    public ID[] getWhichDateTimeStatusQualifier() {
568        ID[] retVal = this.getTypedField(7, new ID[0]);
569        return retVal;
570    }
571
572
573    /**
574     * Returns all repetitions of Which date / time status qualifier (QRF-7).
575     */
576    public ID[] getQrf7_WhichDateTimeStatusQualifier() {
577        ID[] retVal = this.getTypedField(7, new ID[0]);
578        return retVal;
579    }
580
581
582    /**
583     * Returns a count of the current number of repetitions of Which date / time status qualifier (QRF-7).
584     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
585     * it will return zero.
586     */
587    public int getWhichDateTimeStatusQualifierReps() {
588        return this.getReps(7);
589    }
590
591
592    /**
593     * Returns a specific repetition of
594     * QRF-7: "Which date / time status qualifier" - creates it if necessary
595     *
596     * @param rep The repetition index (0-indexed)
597     */
598    public ID getWhichDateTimeStatusQualifier(int rep) { 
599                ID retVal = this.getTypedField(7, rep);
600                return retVal;
601    }
602
603    /**
604     * Returns a specific repetition of
605     * QRF-7: "Which date / time status qualifier" - creates it if necessary
606     *
607     * @param rep The repetition index (0-indexed)
608     */
609    public ID getQrf7_WhichDateTimeStatusQualifier(int rep) { 
610                ID retVal = this.getTypedField(7, rep);
611                return retVal;
612    }
613
614    /**
615     * Returns a count of the current number of repetitions of Which date / time status qualifier (QRF-7).
616     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
617     * it will return zero.
618     */
619    public int getQrf7_WhichDateTimeStatusQualifierReps() {
620        return this.getReps(7);
621    }
622
623
624    /**
625     * Inserts a repetition of
626     * QRF-7: "Which date / time status qualifier" at a specific index
627     *
628     * @param rep The repetition index (0-indexed)
629     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
630     */
631    public ID insertWhichDateTimeStatusQualifier(int rep) throws HL7Exception { 
632        return (ID) super.insertRepetition(7, rep);
633    }
634
635
636    /**
637     * Inserts a repetition of
638     * QRF-7: "Which date / time status qualifier" at a specific index
639     *
640     * @param rep The repetition index (0-indexed)
641     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
642     */
643    public ID insertQrf7_WhichDateTimeStatusQualifier(int rep) throws HL7Exception { 
644        return (ID) super.insertRepetition(7, rep);
645    }
646
647
648    /**
649     * Removes a repetition of
650     * QRF-7: "Which date / time status qualifier" at a specific index
651     *
652     * @param rep The repetition index (0-indexed)
653     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
654     */
655    public ID removeWhichDateTimeStatusQualifier(int rep) throws HL7Exception { 
656        return (ID) super.removeRepetition(7, rep);
657    }
658
659
660    /**
661     * Removes a repetition of
662     * QRF-7: "Which date / time status qualifier" at a specific index
663     *
664     * @param rep The repetition index (0-indexed)
665     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
666     */
667    public ID removeQrf7_WhichDateTimeStatusQualifier(int rep) throws HL7Exception { 
668        return (ID) super.removeRepetition(7, rep);
669    }
670
671
672
673    /**
674     * Returns all repetitions of Date / time selection qualifier (QRF-8).
675     */
676    public ID[] getDateTimeSelectionQualifier() {
677        ID[] retVal = this.getTypedField(8, new ID[0]);
678        return retVal;
679    }
680
681
682    /**
683     * Returns all repetitions of Date / time selection qualifier (QRF-8).
684     */
685    public ID[] getQrf8_DateTimeSelectionQualifier() {
686        ID[] retVal = this.getTypedField(8, new ID[0]);
687        return retVal;
688    }
689
690
691    /**
692     * Returns a count of the current number of repetitions of Date / time selection qualifier (QRF-8).
693     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
694     * it will return zero.
695     */
696    public int getDateTimeSelectionQualifierReps() {
697        return this.getReps(8);
698    }
699
700
701    /**
702     * Returns a specific repetition of
703     * QRF-8: "Date / time selection qualifier" - creates it if necessary
704     *
705     * @param rep The repetition index (0-indexed)
706     */
707    public ID getDateTimeSelectionQualifier(int rep) { 
708                ID retVal = this.getTypedField(8, rep);
709                return retVal;
710    }
711
712    /**
713     * Returns a specific repetition of
714     * QRF-8: "Date / time selection qualifier" - creates it if necessary
715     *
716     * @param rep The repetition index (0-indexed)
717     */
718    public ID getQrf8_DateTimeSelectionQualifier(int rep) { 
719                ID retVal = this.getTypedField(8, rep);
720                return retVal;
721    }
722
723    /**
724     * Returns a count of the current number of repetitions of Date / time selection qualifier (QRF-8).
725     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
726     * it will return zero.
727     */
728    public int getQrf8_DateTimeSelectionQualifierReps() {
729        return this.getReps(8);
730    }
731
732
733    /**
734     * Inserts a repetition of
735     * QRF-8: "Date / time selection qualifier" at a specific index
736     *
737     * @param rep The repetition index (0-indexed)
738     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
739     */
740    public ID insertDateTimeSelectionQualifier(int rep) throws HL7Exception { 
741        return (ID) super.insertRepetition(8, rep);
742    }
743
744
745    /**
746     * Inserts a repetition of
747     * QRF-8: "Date / time selection qualifier" at a specific index
748     *
749     * @param rep The repetition index (0-indexed)
750     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
751     */
752    public ID insertQrf8_DateTimeSelectionQualifier(int rep) throws HL7Exception { 
753        return (ID) super.insertRepetition(8, rep);
754    }
755
756
757    /**
758     * Removes a repetition of
759     * QRF-8: "Date / time selection qualifier" at a specific index
760     *
761     * @param rep The repetition index (0-indexed)
762     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
763     */
764    public ID removeDateTimeSelectionQualifier(int rep) throws HL7Exception { 
765        return (ID) super.removeRepetition(8, rep);
766    }
767
768
769    /**
770     * Removes a repetition of
771     * QRF-8: "Date / time selection qualifier" at a specific index
772     *
773     * @param rep The repetition index (0-indexed)
774     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
775     */
776    public ID removeQrf8_DateTimeSelectionQualifier(int rep) throws HL7Exception { 
777        return (ID) super.removeRepetition(8, rep);
778    }
779
780
781
782
783
784
785    /** {@inheritDoc} */   
786    protected Type createNewTypeWithoutReflection(int field) {
787       switch (field) {
788          case 0: return new ST(getMessage());
789          case 1: return new TS(getMessage());
790          case 2: return new TS(getMessage());
791          case 3: return new ST(getMessage());
792          case 4: return new ST(getMessage());
793          case 5: return new ID(getMessage(), new Integer( 156 ));
794          case 6: return new ID(getMessage(), new Integer( 157 ));
795          case 7: return new ID(getMessage(), new Integer( 158 ));
796          default: return null;
797       }
798   }
799
800
801}
802