001    /*
002     * To change this template, choose Tools | Templates
003     * and open the template in the editor.
004     */
005    
006    package ca.uhn.hl7v2.model;
007    
008    import java.util.List;
009    
010    /**
011     *
012     * @author t3903uhn
013     */
014    public interface MessageVisitor {
015    
016            void startGroup(List<Structure> thePathToGroup, AbstractGroup theGroup);
017    
018            void endGroup(List<Structure> thePathToGroup, AbstractGroup theGroup);
019    
020            void startSegment(List<Structure> thePathToGroup, AbstractSegment theSegment);
021    
022            void endSegment(List<Structure> thePathToGroup, AbstractSegment theSegment);
023    
024            void value(AbstractSegment theSegment, int theFieldNum, Type theDataType);
025    
026    }