module CPumpsVariables
    use CIActionReference
    implicit none    
    public        
    
    
    ! Pumps Specifications
    Type::PumpSpecificationType
        real(8) :: MudPump1LinerDiameter
        real(8) :: MudPump1Stroke
        real(8) :: MudPump1MechanicalEfficiency
        real(8) :: MudPump1VolumetricEfficiency
        real(8) :: MudPump1Output
        real(8) :: MudPump1OutputBblStroke
        real(8) :: MudPump1Maximum
        real(8) :: MudPump1ReliefValvePressure
        
        real(8) :: MudPump2LinerDiameter
        real(8) :: MudPump2Stroke
        real(8) :: MudPump2MechanicalEfficiency
        real(8) :: MudPump2VolumetricEfficiency
        real(8) :: MudPump2Output
        real(8) :: MudPump2OutputBblStroke
        real(8) :: MudPump2Maximum
        real(8) :: MudPump2ReliefValvePressure
        
        real(8) :: CementPumpLinerDiameter
        real(8) :: CementPumpStroke
        real(8) :: CementPumpMechanicalEfficiency
        real(8) :: CementPumpVolumetricEfficiency
        real(8) :: CementPumpOutput
        real(8) :: CementPumpOutputBblStroke
        real(8) :: CementPumpMaximum
        real(8) :: CementPumpReliefValvePressure
        
        logical :: MudPump1ReliefValveIsSet
        logical :: MudPump2ReliefValveIsSet
        logical :: CementPumpReliefValveIsSet
        
        logical :: ManualPumpPower
        logical :: Valve1
        logical :: Valve2
        logical :: Valve3
        logical :: Valve4
        logical :: Valve5
    End type PumpSpecificationType
    ! Type(PumpSpecificationType)::PumpsSpecification
    
    ! procedure (ActionDouble), pointer :: MudPump1LinerDiameterPtr
    ! procedure (ActionDouble), pointer :: MudPump2LinerDiameterPtr
    ! procedure (ActionDouble), pointer :: MudPump3LinerDiameterPtr
    ! procedure (ActionDouble), pointer :: MudPump1OutputBblStrokePtr
    ! procedure (ActionDouble), pointer :: MudPump2OutputBblStrokePtr
    ! procedure (ActionDouble), pointer :: MudPump3OutputBblStrokePtr
    
    
    real(8) :: MathPI = 3.14159265358979d0
    
    contains
end module CPumpsVariables