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.v26.message;
035
036import ca.uhn.hl7v2.model.v26.group.*;
037import ca.uhn.hl7v2.model.v26.segment.*;
038
039import java.util.List;
040
041import ca.uhn.hl7v2.HL7Exception;
042import ca.uhn.hl7v2.parser.ModelClassFactory;
043import ca.uhn.hl7v2.parser.DefaultModelClassFactory;
044import ca.uhn.hl7v2.model.AbstractMessage;
045
046/**
047 * <p>Represents a DFT_P11 message structure (see chapter 6.4.8). This structure contains the 
048 * following elements: </p>
049 * <ul>
050                 * <li>1: MSH (Message Header) <b> </b></li>
051                 * <li>2: SFT (Software Segment) <b>optional repeating</b></li>
052                 * <li>3: UAC (User Authentication Credential Segment) <b>optional </b></li>
053                 * <li>4: EVN (Event Type) <b> </b></li>
054                 * <li>5: PID (Patient Identification) <b> </b></li>
055                 * <li>6: PD1 (Patient Additional Demographic) <b>optional </b></li>
056                 * <li>7: ROL (Role) <b>optional repeating</b></li>
057                 * <li>8: PV1 (Patient Visit) <b>optional </b></li>
058                 * <li>9: PV2 (Patient Visit - Additional Information) <b>optional </b></li>
059                 * <li>10: ROL (Role) <b>optional repeating</b></li>
060                 * <li>11: DB1 (Disability) <b>optional repeating</b></li>
061                 * <li>12: DFT_P11_COMMON_ORDER (a Group object) <b>optional repeating</b></li>
062                 * <li>13: DG1 (Diagnosis) <b>optional repeating</b></li>
063                 * <li>14: DRG (Diagnosis Related Group) <b>optional </b></li>
064                 * <li>15: GT1 (Guarantor) <b>optional repeating</b></li>
065                 * <li>16: DFT_P11_INSURANCE (a Group object) <b>optional repeating</b></li>
066                 * <li>17: ACC (Accident) <b>optional </b></li>
067                 * <li>18: DFT_P11_FINANCIAL (a Group object) <b> repeating</b></li>
068 * </ul>
069 */
070@SuppressWarnings("unused")
071public class DFT_P11 extends AbstractMessage  {
072
073    /**
074     * Creates a new DFT_P11 message with DefaultModelClassFactory. 
075     */ 
076    public DFT_P11() { 
077       this(new DefaultModelClassFactory());
078    }
079
080    /** 
081     * Creates a new DFT_P11 message with custom ModelClassFactory.
082     */
083    public DFT_P11(ModelClassFactory factory) {
084       super(factory);
085       init(factory);
086    }
087
088    private void init(ModelClassFactory factory) {
089       try {
090                          this.add(MSH.class, true, false);
091                          this.add(SFT.class, false, true);
092                          this.add(UAC.class, false, false);
093                          this.add(EVN.class, true, false);
094                          this.add(PID.class, true, false);
095                          this.add(PD1.class, false, false);
096                          this.add(ROL.class, false, true);
097                          this.add(PV1.class, false, false);
098                          this.add(PV2.class, false, false);
099                          this.add(ROL.class, false, true);
100                          this.add(DB1.class, false, true);
101                          this.add(DFT_P11_COMMON_ORDER.class, false, true);
102                          this.add(DG1.class, false, true);
103                          this.add(DRG.class, false, false);
104                          this.add(GT1.class, false, true);
105                          this.add(DFT_P11_INSURANCE.class, false, true);
106                          this.add(ACC.class, false, false);
107                          this.add(DFT_P11_FINANCIAL.class, true, true);
108       } catch(HL7Exception e) {
109          log.error("Unexpected error creating DFT_P11 - this is probably a bug in the source code generator.", e);
110       }
111    }
112
113    /** 
114     * Returns "2.6"
115     */
116    public String getVersion() {
117       return "2.6";
118    }
119
120
121
122    /**
123     * Returns
124     * MSH (Message Header) - creates it if necessary
125     */
126    public MSH getMSH() { 
127       return getTyped("MSH", MSH.class);
128    }
129
130
131
132
133    /**
134     * Returns
135     * the first repetition of 
136     * SFT (Software Segment) - creates it if necessary
137     */
138    public SFT getSFT() { 
139       return getTyped("SFT", SFT.class);
140    }
141
142
143    /**
144     * Returns a specific repetition of
145     * SFT (Software Segment) - creates it if necessary
146     *
147     * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
148     * @throws HL7Exception if the repetition requested is more than one 
149     *     greater than the number of existing repetitions.
150     */
151    public SFT getSFT(int rep) { 
152       return getTyped("SFT", rep, SFT.class);
153    }
154
155    /** 
156     * Returns the number of existing repetitions of SFT 
157     */ 
158    public int getSFTReps() { 
159        return getReps("SFT");
160    } 
161
162    /** 
163     * <p>
164     * Returns a non-modifiable List containing all current existing repetitions of SFT.
165     * <p>
166     * <p>
167     * Note that unlike {@link #getSFT()}, this method will not create any reps
168     * if none are already present, so an empty list may be returned.
169     * </p>
170     */ 
171    public List<SFT> getSFTAll() throws HL7Exception {
172        return getAllAsList("SFT", SFT.class);
173    } 
174
175    /**
176     * Inserts a specific repetition of SFT (Software Segment)
177     * @see AbstractGroup#insertRepetition(Structure, int) 
178     */
179    public void insertSFT(SFT structure, int rep) throws HL7Exception { 
180       super.insertRepetition( "SFT", structure, rep);
181    }
182
183
184    /**
185     * Inserts a specific repetition of SFT (Software Segment)
186     * @see AbstractGroup#insertRepetition(Structure, int) 
187     */
188    public SFT insertSFT(int rep) throws HL7Exception { 
189       return (SFT)super.insertRepetition("SFT", rep);
190    }
191
192
193    /**
194     * Removes a specific repetition of SFT (Software Segment)
195     * @see AbstractGroup#removeRepetition(String, int) 
196     */
197    public SFT removeSFT(int rep) throws HL7Exception { 
198       return (SFT)super.removeRepetition("SFT", rep);
199    }
200
201
202
203    /**
204     * Returns
205     * UAC (User Authentication Credential Segment) - creates it if necessary
206     */
207    public UAC getUAC() { 
208       return getTyped("UAC", UAC.class);
209    }
210
211
212
213
214    /**
215     * Returns
216     * EVN (Event Type) - creates it if necessary
217     */
218    public EVN getEVN() { 
219       return getTyped("EVN", EVN.class);
220    }
221
222
223
224
225    /**
226     * Returns
227     * PID (Patient Identification) - creates it if necessary
228     */
229    public PID getPID() { 
230       return getTyped("PID", PID.class);
231    }
232
233
234
235
236    /**
237     * Returns
238     * PD1 (Patient Additional Demographic) - creates it if necessary
239     */
240    public PD1 getPD1() { 
241       return getTyped("PD1", PD1.class);
242    }
243
244
245
246
247    /**
248     * Returns
249     * the first repetition of 
250     * ROL (Role) - creates it if necessary
251     */
252    public ROL getROL() { 
253       return getTyped("ROL", ROL.class);
254    }
255
256
257    /**
258     * Returns a specific repetition of
259     * ROL (Role) - creates it if necessary
260     *
261     * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
262     * @throws HL7Exception if the repetition requested is more than one 
263     *     greater than the number of existing repetitions.
264     */
265    public ROL getROL(int rep) { 
266       return getTyped("ROL", rep, ROL.class);
267    }
268
269    /** 
270     * Returns the number of existing repetitions of ROL 
271     */ 
272    public int getROLReps() { 
273        return getReps("ROL");
274    } 
275
276    /** 
277     * <p>
278     * Returns a non-modifiable List containing all current existing repetitions of ROL.
279     * <p>
280     * <p>
281     * Note that unlike {@link #getROL()}, this method will not create any reps
282     * if none are already present, so an empty list may be returned.
283     * </p>
284     */ 
285    public List<ROL> getROLAll() throws HL7Exception {
286        return getAllAsList("ROL", ROL.class);
287    } 
288
289    /**
290     * Inserts a specific repetition of ROL (Role)
291     * @see AbstractGroup#insertRepetition(Structure, int) 
292     */
293    public void insertROL(ROL structure, int rep) throws HL7Exception { 
294       super.insertRepetition( "ROL", structure, rep);
295    }
296
297
298    /**
299     * Inserts a specific repetition of ROL (Role)
300     * @see AbstractGroup#insertRepetition(Structure, int) 
301     */
302    public ROL insertROL(int rep) throws HL7Exception { 
303       return (ROL)super.insertRepetition("ROL", rep);
304    }
305
306
307    /**
308     * Removes a specific repetition of ROL (Role)
309     * @see AbstractGroup#removeRepetition(String, int) 
310     */
311    public ROL removeROL(int rep) throws HL7Exception { 
312       return (ROL)super.removeRepetition("ROL", rep);
313    }
314
315
316
317    /**
318     * Returns
319     * PV1 (Patient Visit) - creates it if necessary
320     */
321    public PV1 getPV1() { 
322       return getTyped("PV1", PV1.class);
323    }
324
325
326
327
328    /**
329     * Returns
330     * PV2 (Patient Visit - Additional Information) - creates it if necessary
331     */
332    public PV2 getPV2() { 
333       return getTyped("PV2", PV2.class);
334    }
335
336
337
338
339    /**
340     * Returns
341     * the first repetition of 
342     * ROL2 (Role) - creates it if necessary
343     */
344    public ROL getROL2() { 
345       return getTyped("ROL2", ROL.class);
346    }
347
348
349    /**
350     * Returns a specific repetition of
351     * ROL2 (Role) - creates it if necessary
352     *
353     * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
354     * @throws HL7Exception if the repetition requested is more than one 
355     *     greater than the number of existing repetitions.
356     */
357    public ROL getROL2(int rep) { 
358       return getTyped("ROL2", rep, ROL.class);
359    }
360
361    /** 
362     * Returns the number of existing repetitions of ROL2 
363     */ 
364    public int getROL2Reps() { 
365        return getReps("ROL2");
366    } 
367
368    /** 
369     * <p>
370     * Returns a non-modifiable List containing all current existing repetitions of ROL2.
371     * <p>
372     * <p>
373     * Note that unlike {@link #getROL2()}, this method will not create any reps
374     * if none are already present, so an empty list may be returned.
375     * </p>
376     */ 
377    public List<ROL> getROL2All() throws HL7Exception {
378        return getAllAsList("ROL2", ROL.class);
379    } 
380
381    /**
382     * Inserts a specific repetition of ROL2 (Role)
383     * @see AbstractGroup#insertRepetition(Structure, int) 
384     */
385    public void insertROL2(ROL structure, int rep) throws HL7Exception { 
386       super.insertRepetition( "ROL2", structure, rep);
387    }
388
389
390    /**
391     * Inserts a specific repetition of ROL2 (Role)
392     * @see AbstractGroup#insertRepetition(Structure, int) 
393     */
394    public ROL insertROL2(int rep) throws HL7Exception { 
395       return (ROL)super.insertRepetition("ROL2", rep);
396    }
397
398
399    /**
400     * Removes a specific repetition of ROL2 (Role)
401     * @see AbstractGroup#removeRepetition(String, int) 
402     */
403    public ROL removeROL2(int rep) throws HL7Exception { 
404       return (ROL)super.removeRepetition("ROL2", rep);
405    }
406
407
408
409    /**
410     * Returns
411     * the first repetition of 
412     * DB1 (Disability) - creates it if necessary
413     */
414    public DB1 getDB1() { 
415       return getTyped("DB1", DB1.class);
416    }
417
418
419    /**
420     * Returns a specific repetition of
421     * DB1 (Disability) - creates it if necessary
422     *
423     * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
424     * @throws HL7Exception if the repetition requested is more than one 
425     *     greater than the number of existing repetitions.
426     */
427    public DB1 getDB1(int rep) { 
428       return getTyped("DB1", rep, DB1.class);
429    }
430
431    /** 
432     * Returns the number of existing repetitions of DB1 
433     */ 
434    public int getDB1Reps() { 
435        return getReps("DB1");
436    } 
437
438    /** 
439     * <p>
440     * Returns a non-modifiable List containing all current existing repetitions of DB1.
441     * <p>
442     * <p>
443     * Note that unlike {@link #getDB1()}, this method will not create any reps
444     * if none are already present, so an empty list may be returned.
445     * </p>
446     */ 
447    public List<DB1> getDB1All() throws HL7Exception {
448        return getAllAsList("DB1", DB1.class);
449    } 
450
451    /**
452     * Inserts a specific repetition of DB1 (Disability)
453     * @see AbstractGroup#insertRepetition(Structure, int) 
454     */
455    public void insertDB1(DB1 structure, int rep) throws HL7Exception { 
456       super.insertRepetition( "DB1", structure, rep);
457    }
458
459
460    /**
461     * Inserts a specific repetition of DB1 (Disability)
462     * @see AbstractGroup#insertRepetition(Structure, int) 
463     */
464    public DB1 insertDB1(int rep) throws HL7Exception { 
465       return (DB1)super.insertRepetition("DB1", rep);
466    }
467
468
469    /**
470     * Removes a specific repetition of DB1 (Disability)
471     * @see AbstractGroup#removeRepetition(String, int) 
472     */
473    public DB1 removeDB1(int rep) throws HL7Exception { 
474       return (DB1)super.removeRepetition("DB1", rep);
475    }
476
477
478
479    /**
480     * Returns
481     * the first repetition of 
482     * COMMON_ORDER (a Group object) - creates it if necessary
483     */
484    public DFT_P11_COMMON_ORDER getCOMMON_ORDER() { 
485       return getTyped("COMMON_ORDER", DFT_P11_COMMON_ORDER.class);
486    }
487
488
489    /**
490     * Returns a specific repetition of
491     * COMMON_ORDER (a Group object) - creates it if necessary
492     *
493     * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
494     * @throws HL7Exception if the repetition requested is more than one 
495     *     greater than the number of existing repetitions.
496     */
497    public DFT_P11_COMMON_ORDER getCOMMON_ORDER(int rep) { 
498       return getTyped("COMMON_ORDER", rep, DFT_P11_COMMON_ORDER.class);
499    }
500
501    /** 
502     * Returns the number of existing repetitions of COMMON_ORDER 
503     */ 
504    public int getCOMMON_ORDERReps() { 
505        return getReps("COMMON_ORDER");
506    } 
507
508    /** 
509     * <p>
510     * Returns a non-modifiable List containing all current existing repetitions of COMMON_ORDER.
511     * <p>
512     * <p>
513     * Note that unlike {@link #getCOMMON_ORDER()}, this method will not create any reps
514     * if none are already present, so an empty list may be returned.
515     * </p>
516     */ 
517    public List<DFT_P11_COMMON_ORDER> getCOMMON_ORDERAll() throws HL7Exception {
518        return getAllAsList("COMMON_ORDER", DFT_P11_COMMON_ORDER.class);
519    } 
520
521    /**
522     * Inserts a specific repetition of COMMON_ORDER (a Group object)
523     * @see AbstractGroup#insertRepetition(Structure, int) 
524     */
525    public void insertCOMMON_ORDER(DFT_P11_COMMON_ORDER structure, int rep) throws HL7Exception { 
526       super.insertRepetition( "COMMON_ORDER", structure, rep);
527    }
528
529
530    /**
531     * Inserts a specific repetition of COMMON_ORDER (a Group object)
532     * @see AbstractGroup#insertRepetition(Structure, int) 
533     */
534    public DFT_P11_COMMON_ORDER insertCOMMON_ORDER(int rep) throws HL7Exception { 
535       return (DFT_P11_COMMON_ORDER)super.insertRepetition("COMMON_ORDER", rep);
536    }
537
538
539    /**
540     * Removes a specific repetition of COMMON_ORDER (a Group object)
541     * @see AbstractGroup#removeRepetition(String, int) 
542     */
543    public DFT_P11_COMMON_ORDER removeCOMMON_ORDER(int rep) throws HL7Exception { 
544       return (DFT_P11_COMMON_ORDER)super.removeRepetition("COMMON_ORDER", rep);
545    }
546
547
548
549    /**
550     * Returns
551     * the first repetition of 
552     * DG1 (Diagnosis) - creates it if necessary
553     */
554    public DG1 getDG1() { 
555       return getTyped("DG1", DG1.class);
556    }
557
558
559    /**
560     * Returns a specific repetition of
561     * DG1 (Diagnosis) - creates it if necessary
562     *
563     * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
564     * @throws HL7Exception if the repetition requested is more than one 
565     *     greater than the number of existing repetitions.
566     */
567    public DG1 getDG1(int rep) { 
568       return getTyped("DG1", rep, DG1.class);
569    }
570
571    /** 
572     * Returns the number of existing repetitions of DG1 
573     */ 
574    public int getDG1Reps() { 
575        return getReps("DG1");
576    } 
577
578    /** 
579     * <p>
580     * Returns a non-modifiable List containing all current existing repetitions of DG1.
581     * <p>
582     * <p>
583     * Note that unlike {@link #getDG1()}, this method will not create any reps
584     * if none are already present, so an empty list may be returned.
585     * </p>
586     */ 
587    public List<DG1> getDG1All() throws HL7Exception {
588        return getAllAsList("DG1", DG1.class);
589    } 
590
591    /**
592     * Inserts a specific repetition of DG1 (Diagnosis)
593     * @see AbstractGroup#insertRepetition(Structure, int) 
594     */
595    public void insertDG1(DG1 structure, int rep) throws HL7Exception { 
596       super.insertRepetition( "DG1", structure, rep);
597    }
598
599
600    /**
601     * Inserts a specific repetition of DG1 (Diagnosis)
602     * @see AbstractGroup#insertRepetition(Structure, int) 
603     */
604    public DG1 insertDG1(int rep) throws HL7Exception { 
605       return (DG1)super.insertRepetition("DG1", rep);
606    }
607
608
609    /**
610     * Removes a specific repetition of DG1 (Diagnosis)
611     * @see AbstractGroup#removeRepetition(String, int) 
612     */
613    public DG1 removeDG1(int rep) throws HL7Exception { 
614       return (DG1)super.removeRepetition("DG1", rep);
615    }
616
617
618
619    /**
620     * Returns
621     * DRG (Diagnosis Related Group) - creates it if necessary
622     */
623    public DRG getDRG() { 
624       return getTyped("DRG", DRG.class);
625    }
626
627
628
629
630    /**
631     * Returns
632     * the first repetition of 
633     * GT1 (Guarantor) - creates it if necessary
634     */
635    public GT1 getGT1() { 
636       return getTyped("GT1", GT1.class);
637    }
638
639
640    /**
641     * Returns a specific repetition of
642     * GT1 (Guarantor) - creates it if necessary
643     *
644     * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
645     * @throws HL7Exception if the repetition requested is more than one 
646     *     greater than the number of existing repetitions.
647     */
648    public GT1 getGT1(int rep) { 
649       return getTyped("GT1", rep, GT1.class);
650    }
651
652    /** 
653     * Returns the number of existing repetitions of GT1 
654     */ 
655    public int getGT1Reps() { 
656        return getReps("GT1");
657    } 
658
659    /** 
660     * <p>
661     * Returns a non-modifiable List containing all current existing repetitions of GT1.
662     * <p>
663     * <p>
664     * Note that unlike {@link #getGT1()}, this method will not create any reps
665     * if none are already present, so an empty list may be returned.
666     * </p>
667     */ 
668    public List<GT1> getGT1All() throws HL7Exception {
669        return getAllAsList("GT1", GT1.class);
670    } 
671
672    /**
673     * Inserts a specific repetition of GT1 (Guarantor)
674     * @see AbstractGroup#insertRepetition(Structure, int) 
675     */
676    public void insertGT1(GT1 structure, int rep) throws HL7Exception { 
677       super.insertRepetition( "GT1", structure, rep);
678    }
679
680
681    /**
682     * Inserts a specific repetition of GT1 (Guarantor)
683     * @see AbstractGroup#insertRepetition(Structure, int) 
684     */
685    public GT1 insertGT1(int rep) throws HL7Exception { 
686       return (GT1)super.insertRepetition("GT1", rep);
687    }
688
689
690    /**
691     * Removes a specific repetition of GT1 (Guarantor)
692     * @see AbstractGroup#removeRepetition(String, int) 
693     */
694    public GT1 removeGT1(int rep) throws HL7Exception { 
695       return (GT1)super.removeRepetition("GT1", rep);
696    }
697
698
699
700    /**
701     * Returns
702     * the first repetition of 
703     * INSURANCE (a Group object) - creates it if necessary
704     */
705    public DFT_P11_INSURANCE getINSURANCE() { 
706       return getTyped("INSURANCE", DFT_P11_INSURANCE.class);
707    }
708
709
710    /**
711     * Returns a specific repetition of
712     * INSURANCE (a Group object) - creates it if necessary
713     *
714     * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
715     * @throws HL7Exception if the repetition requested is more than one 
716     *     greater than the number of existing repetitions.
717     */
718    public DFT_P11_INSURANCE getINSURANCE(int rep) { 
719       return getTyped("INSURANCE", rep, DFT_P11_INSURANCE.class);
720    }
721
722    /** 
723     * Returns the number of existing repetitions of INSURANCE 
724     */ 
725    public int getINSURANCEReps() { 
726        return getReps("INSURANCE");
727    } 
728
729    /** 
730     * <p>
731     * Returns a non-modifiable List containing all current existing repetitions of INSURANCE.
732     * <p>
733     * <p>
734     * Note that unlike {@link #getINSURANCE()}, this method will not create any reps
735     * if none are already present, so an empty list may be returned.
736     * </p>
737     */ 
738    public List<DFT_P11_INSURANCE> getINSURANCEAll() throws HL7Exception {
739        return getAllAsList("INSURANCE", DFT_P11_INSURANCE.class);
740    } 
741
742    /**
743     * Inserts a specific repetition of INSURANCE (a Group object)
744     * @see AbstractGroup#insertRepetition(Structure, int) 
745     */
746    public void insertINSURANCE(DFT_P11_INSURANCE structure, int rep) throws HL7Exception { 
747       super.insertRepetition( "INSURANCE", structure, rep);
748    }
749
750
751    /**
752     * Inserts a specific repetition of INSURANCE (a Group object)
753     * @see AbstractGroup#insertRepetition(Structure, int) 
754     */
755    public DFT_P11_INSURANCE insertINSURANCE(int rep) throws HL7Exception { 
756       return (DFT_P11_INSURANCE)super.insertRepetition("INSURANCE", rep);
757    }
758
759
760    /**
761     * Removes a specific repetition of INSURANCE (a Group object)
762     * @see AbstractGroup#removeRepetition(String, int) 
763     */
764    public DFT_P11_INSURANCE removeINSURANCE(int rep) throws HL7Exception { 
765       return (DFT_P11_INSURANCE)super.removeRepetition("INSURANCE", rep);
766    }
767
768
769
770    /**
771     * Returns
772     * ACC (Accident) - creates it if necessary
773     */
774    public ACC getACC() { 
775       return getTyped("ACC", ACC.class);
776    }
777
778
779
780
781    /**
782     * Returns
783     * the first repetition of 
784     * FINANCIAL (a Group object) - creates it if necessary
785     */
786    public DFT_P11_FINANCIAL getFINANCIAL() { 
787       return getTyped("FINANCIAL", DFT_P11_FINANCIAL.class);
788    }
789
790
791    /**
792     * Returns a specific repetition of
793     * FINANCIAL (a Group object) - creates it if necessary
794     *
795     * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
796     * @throws HL7Exception if the repetition requested is more than one 
797     *     greater than the number of existing repetitions.
798     */
799    public DFT_P11_FINANCIAL getFINANCIAL(int rep) { 
800       return getTyped("FINANCIAL", rep, DFT_P11_FINANCIAL.class);
801    }
802
803    /** 
804     * Returns the number of existing repetitions of FINANCIAL 
805     */ 
806    public int getFINANCIALReps() { 
807        return getReps("FINANCIAL");
808    } 
809
810    /** 
811     * <p>
812     * Returns a non-modifiable List containing all current existing repetitions of FINANCIAL.
813     * <p>
814     * <p>
815     * Note that unlike {@link #getFINANCIAL()}, this method will not create any reps
816     * if none are already present, so an empty list may be returned.
817     * </p>
818     */ 
819    public List<DFT_P11_FINANCIAL> getFINANCIALAll() throws HL7Exception {
820        return getAllAsList("FINANCIAL", DFT_P11_FINANCIAL.class);
821    } 
822
823    /**
824     * Inserts a specific repetition of FINANCIAL (a Group object)
825     * @see AbstractGroup#insertRepetition(Structure, int) 
826     */
827    public void insertFINANCIAL(DFT_P11_FINANCIAL structure, int rep) throws HL7Exception { 
828       super.insertRepetition( "FINANCIAL", structure, rep);
829    }
830
831
832    /**
833     * Inserts a specific repetition of FINANCIAL (a Group object)
834     * @see AbstractGroup#insertRepetition(Structure, int) 
835     */
836    public DFT_P11_FINANCIAL insertFINANCIAL(int rep) throws HL7Exception { 
837       return (DFT_P11_FINANCIAL)super.insertRepetition("FINANCIAL", rep);
838    }
839
840
841    /**
842     * Removes a specific repetition of FINANCIAL (a Group object)
843     * @see AbstractGroup#removeRepetition(String, int) 
844     */
845    public DFT_P11_FINANCIAL removeFINANCIAL(int rep) throws HL7Exception { 
846       return (DFT_P11_FINANCIAL)super.removeRepetition("FINANCIAL", rep);
847    }
848
849
850
851}
852