module CKickProblems
    use CKickProblemsVariables
	implicit none    
	public 
    contains
    
    ! Input routines
    subroutine SetKick(v)
    !DEC$ ATTRIBUTES DLLEXPORT :: SetKick
    !DEC$ ATTRIBUTES ALIAS: 'SetKick' :: SetKick
	    implicit none
	    type(CProblem), intent(in) :: v
	    KickProblems%Kick = SetDue(v, ChangeKick)
#ifdef deb
	    print*, 'Kick%ProblemType=', KickProblems%Kick%ProblemType
	    print*, 'Kick%StatusType=', KickProblems%Kick%StatusType
	    print*, 'Kick%Value=', KickProblems%Kick%Value
#endif
    end subroutine
    
    subroutine SetFluidTypeP(v)
    !DEC$ ATTRIBUTES DLLEXPORT :: SetFluidTypeP
    !DEC$ ATTRIBUTES ALIAS: 'SetFluidTypeP' :: SetFluidTypeP
	    implicit none
	    integer, intent(in) :: v
	    KickProblems%FluidType = v
#ifdef deb
	    print*, 'FluidType=', KickProblems%FluidType
#endif
    end subroutine

    subroutine SetFlowRateP(v)
    !DEC$ ATTRIBUTES DLLEXPORT :: SetFlowRateP
    !DEC$ ATTRIBUTES ALIAS: 'SetFlowRateP' :: SetFlowRateP
	    implicit none
	    real*8, intent(in) :: v
	    KickProblems%FlowRate = v
#ifdef deb
	    print*, 'FlowRate=', KickProblems%FlowRate
#endif
    end subroutine

    subroutine SetOverBalancePressure(v)
    !DEC$ ATTRIBUTES DLLEXPORT :: SetOverBalancePressure
    !DEC$ ATTRIBUTES ALIAS: 'SetOverBalancePressure' :: SetOverBalancePressure
	    implicit none
	    real*8, intent(in) :: v
	    KickProblems%OverBalancePressure = v
#ifdef deb
	    print*, 'OverBalancePressure=', KickProblems%OverBalancePressure
#endif
    end subroutine

    subroutine SetIsAutoMigrationRateSelectedP(v)
    !DEC$ ATTRIBUTES DLLEXPORT :: SetIsAutoMigrationRateSelectedP
    !DEC$ ATTRIBUTES ALIAS: 'SetIsAutoMigrationRateSelectedP' :: SetIsAutoMigrationRateSelectedP
	    implicit none
	    logical, intent(in) :: v
	    KickProblems%IsAutoMigrationRateSelected = v
#ifdef deb
	    print*, 'IsAutoMigrationRateSelected=', KickProblems%IsAutoMigrationRateSelected
#endif
    end subroutine

    subroutine SetAutoMigrationRateP(v)
    !DEC$ ATTRIBUTES DLLEXPORT :: SetAutoMigrationRateP
    !DEC$ ATTRIBUTES ALIAS: 'SetAutoMigrationRateP' :: SetAutoMigrationRateP
	    implicit none
	    real*8, intent(in) :: v
	    KickProblems%AutoMigrationRate = v
#ifdef deb
	    print*, 'AutoMigrationRate=', KickProblems%AutoMigrationRate
#endif
    end subroutine

end module CKickProblems