module RotaryTableMain
    implicit none
    public
    contains
    
    subroutine RotaryTable_Setup()
        !use CSimulationVariables
        !call OnSimulationInitialization%Add(RotaryTable_Init)
        !call OnSimulationStop%Add(RotaryTable_Init)
        !call OnRotaryTableStep%Add(RotaryTable_Step)
        !call OnRotaryTableOutput%Add(RotaryTable_Output)
        !call OnRotaryTableMain%Add(RotaryTableMainBody)
    end subroutine
    
    subroutine RotaryTable_Init
        Call RTable_StartUp            
    end subroutine RotaryTable_Init
    
    subroutine RotaryTable_Step 
        Call Rtable_MainSolver
    end subroutine RotaryTable_Step

    subroutine RotaryTable_Output
        implicit none
    end subroutine RotaryTable_Output
    
    
    subroutine RotaryTableMainBody
    
        use SimulationVariables !@
    
        implicit none
        
    
        Call RTable_StartUp
        
        loopRtablestart : do
                    
            Call RTable_MainSolver
        
        end do loopRtablestart
    
    
    end subroutine RotaryTableMainBody



end module RotaryTableMain