!     -*- f90 -*-
!     This file is autogenerated with f2py (version:2)
!     It contains Fortran 90 wrappers to fortran functions.

      subroutine f2py_parameters_getdims_roi(r,s,f2pysetdata,flag)
      use parameters, only: d => roi

      integer flag
      external f2pysetdata
      logical ns
      integer r,i,j
      integer(4) s(*)
      ns = .FALSE.
      if (allocated(d)) then
         do i=1,r
            if ((size(d,i).ne.s(i)).and.(s(i).ge.0)) then
               ns = .TRUE.
            end if
         end do
         if (ns) then
            deallocate(d)
         end if
      end if
      if ((.not.allocated(d)).and.(s(1).ge.1)) then
       allocate(d(s(1),s(2)))
      end if
      if (allocated(d)) then
         do i=1,r
            s(i) = size(d,i)
         end do
      end if
      flag = 1
      call f2pysetdata(d,allocated(d))
      end subroutine f2py_parameters_getdims_roi
      subroutine f2py_parameters_getdims_t2(r,s,f2pysetdata,flag)
      use parameters, only: d => t2

      integer flag
      external f2pysetdata
      logical ns
      integer r,i,j
      integer(4) s(*)
      ns = .FALSE.
      if (allocated(d)) then
         do i=1,r
            if ((size(d,i).ne.s(i)).and.(s(i).ge.0)) then
               ns = .TRUE.
            end if
         end do
         if (ns) then
            deallocate(d)
         end if
      end if
      if ((.not.allocated(d)).and.(s(1).ge.1)) then
       allocate(d(s(1),s(2)))
      end if
      if (allocated(d)) then
         do i=1,r
            s(i) = size(d,i)
         end do
      end if
      flag = 1
      call f2pysetdata(d,allocated(d))
      end subroutine f2py_parameters_getdims_t2
      subroutine f2py_parameters_getdims_pulse(r,s,f2pysetdata,flag)
      use parameters, only: d => pulse

      integer flag
      external f2pysetdata
      logical ns
      integer r,i,j
      integer(4) s(*)
      ns = .FALSE.
      if (allocated(d)) then
         do i=1,r
            if ((size(d,i).ne.s(i)).and.(s(i).ge.0)) then
               ns = .TRUE.
            end if
         end do
         if (ns) then
            deallocate(d)
         end if
      end if
      if ((.not.allocated(d)).and.(s(1).ge.1)) then
       allocate(d(s(1),s(2)))
      end if
      if (allocated(d)) then
         do i=1,r
            s(i) = size(d,i)
         end do
      end if
      flag = 1
      call f2pysetdata(d,allocated(d))
      end subroutine f2py_parameters_getdims_pulse
      subroutine f2py_parameters_getdims_ros(r,s,f2pysetdata,flag)
      use parameters, only: d => ros

      integer flag
      external f2pysetdata
      logical ns
      integer r,i,j
      integer(4) s(*)
      ns = .FALSE.
      if (allocated(d)) then
         do i=1,r
            if ((size(d,i).ne.s(i)).and.(s(i).ge.0)) then
               ns = .TRUE.
            end if
         end do
         if (ns) then
            deallocate(d)
         end if
      end if
      if ((.not.allocated(d)).and.(s(1).ge.1)) then
       allocate(d(s(1),s(2)))
      end if
      if (allocated(d)) then
         do i=1,r
            s(i) = size(d,i)
         end do
      end if
      flag = 1
      call f2pysetdata(d,allocated(d))
      end subroutine f2py_parameters_getdims_ros
      subroutine f2py_parameters_getdims_nphase(r,s,f2pysetdata,flag)
      use parameters, only: d => nphase

      integer flag
      external f2pysetdata
      logical ns
      integer r,i,j
      integer(4) s(*)
      ns = .FALSE.
      if (allocated(d)) then
         do i=1,r
            if ((size(d,i).ne.s(i)).and.(s(i).ge.0)) then
               ns = .TRUE.
            end if
         end do
         if (ns) then
            deallocate(d)
         end if
      end if
      if ((.not.allocated(d)).and.(s(1).ge.1)) then
       allocate(d(s(1)))
      end if
      if (allocated(d)) then
         do i=1,r
            s(i) = size(d,i)
         end do
      end if
      flag = 1
      call f2pysetdata(d,allocated(d))
      end subroutine f2py_parameters_getdims_nphase
      subroutine f2py_parameters_getdims_dipole(r,s,f2pysetdata,flag)
      use parameters, only: d => dipole

      integer flag
      external f2pysetdata
      logical ns
      integer r,i,j
      integer(4) s(*)
      ns = .FALSE.
      if (allocated(d)) then
         do i=1,r
            if ((size(d,i).ne.s(i)).and.(s(i).ge.0)) then
               ns = .TRUE.
            end if
         end do
         if (ns) then
            deallocate(d)
         end if
      end if
      if ((.not.allocated(d)).and.(s(1).ge.1)) then
       allocate(d(s(1),s(2)))
      end if
      if (allocated(d)) then
         do i=1,r
            s(i) = size(d,i)
         end do
      end if
      flag = 1
      call f2pysetdata(d,allocated(d))
      end subroutine f2py_parameters_getdims_dipole
      subroutine f2py_parameters_getdims_pulseangle(r,s,f2pysetdata,flag&
     &)
      use parameters, only: d => pulseangle

      integer flag
      external f2pysetdata
      logical ns
      integer r,i,j
      integer(4) s(*)
      ns = .FALSE.
      if (allocated(d)) then
         do i=1,r
            if ((size(d,i).ne.s(i)).and.(s(i).ge.0)) then
               ns = .TRUE.
            end if
         end do
         if (ns) then
            deallocate(d)
         end if
      end if
      if ((.not.allocated(d)).and.(s(1).ge.1)) then
       allocate(d(s(1)))
      end if
      if (allocated(d)) then
         do i=1,r
            s(i) = size(d,i)
         end do
      end if
      flag = 1
      call f2pysetdata(d,allocated(d))
      end subroutine f2py_parameters_getdims_pulseangle
      subroutine f2py_parameters_getdims_delay(r,s,f2pysetdata,flag)
      use parameters, only: d => delay

      integer flag
      external f2pysetdata
      logical ns
      integer r,i,j
      integer(4) s(*)
      ns = .FALSE.
      if (allocated(d)) then
         do i=1,r
            if ((size(d,i).ne.s(i)).and.(s(i).ge.0)) then
               ns = .TRUE.
            end if
         end do
         if (ns) then
            deallocate(d)
         end if
      end if
      if ((.not.allocated(d)).and.(s(1).ge.1)) then
       allocate(d(s(1),s(2)))
      end if
      if (allocated(d)) then
         do i=1,r
            s(i) = size(d,i)
         end do
      end if
      flag = 1
      call f2pysetdata(d,allocated(d))
      end subroutine f2py_parameters_getdims_delay
      subroutine f2py_parameters_getdims_quadrupole(r,s,f2pysetdata,flag&
     &)
      use parameters, only: d => quadrupole

      integer flag
      external f2pysetdata
      logical ns
      integer r,i,j
      integer(4) s(*)
      ns = .FALSE.
      if (allocated(d)) then
         do i=1,r
            if ((size(d,i).ne.s(i)).and.(s(i).ge.0)) then
               ns = .TRUE.
            end if
         end do
         if (ns) then
            deallocate(d)
         end if
      end if
      if ((.not.allocated(d)).and.(s(1).ge.1)) then
       allocate(d(s(1),s(2)))
      end if
      if (allocated(d)) then
         do i=1,r
            s(i) = size(d,i)
         end do
      end if
      flag = 1
      call f2pysetdata(d,allocated(d))
      end subroutine f2py_parameters_getdims_quadrupole
      subroutine f2py_parameters_getdims_qu2(r,s,f2pysetdata,flag)
      use parameters, only: d => qu2

      integer flag
      external f2pysetdata
      logical ns
      integer r,i,j
      integer(4) s(*)
      ns = .FALSE.
      if (allocated(d)) then
         do i=1,r
            if ((size(d,i).ne.s(i)).and.(s(i).ge.0)) then
               ns = .TRUE.
            end if
         end do
         if (ns) then
            deallocate(d)
         end if
      end if
      if ((.not.allocated(d)).and.(s(1).ge.1)) then
       allocate(d(s(1),s(2)))
      end if
      if (allocated(d)) then
         do i=1,r
            s(i) = size(d,i)
         end do
      end if
      flag = 1
      call f2pysetdata(d,allocated(d))
      end subroutine f2py_parameters_getdims_qu2
      subroutine f2py_parameters_getdims_spec(r,s,f2pysetdata,flag)
      use parameters, only: d => spec

      integer flag
      external f2pysetdata
      logical ns
      integer r,i,j
      integer(4) s(*)
      ns = .FALSE.
      if (allocated(d)) then
         do i=1,r
            if ((size(d,i).ne.s(i)).and.(s(i).ge.0)) then
               ns = .TRUE.
            end if
         end do
         if (ns) then
            deallocate(d)
         end if
      end if
      if ((.not.allocated(d)).and.(s(1).ge.1)) then
       allocate(d(s(1)))
      end if
      if (allocated(d)) then
         do i=1,r
            s(i) = size(d,i)
         end do
      end if
      flag = 1
      call f2pysetdata(d,allocated(d))
      end subroutine f2py_parameters_getdims_spec
      subroutine f2py_parameters_getdims_indirect(r,s,f2pysetdata,flag)
      use parameters, only: d => indirect

      integer flag
      external f2pysetdata
      logical ns
      integer r,i,j
      integer(4) s(*)
      ns = .FALSE.
      if (allocated(d)) then
         do i=1,r
            if ((size(d,i).ne.s(i)).and.(s(i).ge.0)) then
               ns = .TRUE.
            end if
         end do
         if (ns) then
            deallocate(d)
         end if
      end if
      if ((.not.allocated(d)).and.(s(1).ge.1)) then
       allocate(d(s(1),s(2)))
      end if
      if (allocated(d)) then
         do i=1,r
            s(i) = size(d,i)
         end do
      end if
      flag = 1
      call f2pysetdata(d,allocated(d))
      end subroutine f2py_parameters_getdims_indirect
      subroutine f2py_parameters_getdims_nucleus(r,s,f2pysetdata,flag)
      use parameters, only: d => nucleus

      integer flag
      external f2pysetdata
      logical ns
      integer r,i,j
      integer(4) s(*)
      ns = .FALSE.
      if (allocated(d)) then
         do i=1,r
            if ((size(d,i).ne.s(i)).and.(s(i).ge.0)) then
               ns = .TRUE.
            end if
         end do
         if (ns) then
            deallocate(d)
         end if
      end if
      if ((.not.allocated(d)).and.(s(1).ge.1)) then
       allocate(d(s(1),s(2)))
      end if
      if (allocated(d)) then
         do i=1,r
            s(i) = size(d,i)
         end do
      end if
      flag = 1
      call f2pysetdata(d,allocated(d))
      end subroutine f2py_parameters_getdims_nucleus
      subroutine f2py_parameters_getdims_iref(r,s,f2pysetdata,flag)
      use parameters, only: d => iref

      integer flag
      external f2pysetdata
      logical ns
      integer r,i,j
      integer(4) s(*)
      ns = .FALSE.
      if (allocated(d)) then
         do i=1,r
            if ((size(d,i).ne.s(i)).and.(s(i).ge.0)) then
               ns = .TRUE.
            end if
         end do
         if (ns) then
            deallocate(d)
         end if
      end if
      if ((.not.allocated(d)).and.(s(1).ge.1)) then
       allocate(d(s(1)))
      end if
      if (allocated(d)) then
         do i=1,r
            s(i) = size(d,i)
         end do
      end if
      flag = 1
      call f2pysetdata(d,allocated(d))
      end subroutine f2py_parameters_getdims_iref
      subroutine f2py_parameters_getdims_chemicalshift(r,s,f2pysetdata,f&
     &lag)
      use parameters, only: d => chemicalshift

      integer flag
      external f2pysetdata
      logical ns
      integer r,i,j
      integer(4) s(*)
      ns = .FALSE.
      if (allocated(d)) then
         do i=1,r
            if ((size(d,i).ne.s(i)).and.(s(i).ge.0)) then
               ns = .TRUE.
            end if
         end do
         if (ns) then
            deallocate(d)
         end if
      end if
      if ((.not.allocated(d)).and.(s(1).ge.1)) then
       allocate(d(s(1),s(2)))
      end if
      if (allocated(d)) then
         do i=1,r
            s(i) = size(d,i)
         end do
      end if
      flag = 1
      call f2pysetdata(d,allocated(d))
      end subroutine f2py_parameters_getdims_chemicalshift
      subroutine f2py_parameters_getdims_ctp(r,s,f2pysetdata,flag)
      use parameters, only: d => ctp

      integer flag
      external f2pysetdata
      logical ns
      integer r,i,j
      integer(4) s(*)
      ns = .FALSE.
      if (allocated(d)) then
         do i=1,r
            if ((size(d,i).ne.s(i)).and.(s(i).ge.0)) then
               ns = .TRUE.
            end if
         end do
         if (ns) then
            deallocate(d)
         end if
      end if
      if ((.not.allocated(d)).and.(s(1).ge.1)) then
       allocate(d(s(1),s(2)))
      end if
      if (allocated(d)) then
         do i=1,r
            s(i) = size(d,i)
         end do
      end if
      flag = 1
      call f2pysetdata(d,allocated(d))
      end subroutine f2py_parameters_getdims_ctp
      subroutine f2py_parameters_getdims_level(r,s,f2pysetdata,flag)
      use parameters, only: d => level

      integer flag
      external f2pysetdata
      logical ns
      integer r,i,j
      integer(4) s(*)
      ns = .FALSE.
      if (allocated(d)) then
         do i=1,r
            if ((size(d,i).ne.s(i)).and.(s(i).ge.0)) then
               ns = .TRUE.
            end if
         end do
         if (ns) then
            deallocate(d)
         end if
      end if
      if ((.not.allocated(d)).and.(s(1).ge.1)) then
       allocate(d(s(1)))
      end if
      if (allocated(d)) then
         do i=1,r
            s(i) = size(d,i)
         end do
      end if
      flag = 1
      call f2pysetdata(d,allocated(d))
      end subroutine f2py_parameters_getdims_level
      subroutine f2py_parameters_getdims_qu1(r,s,f2pysetdata,flag)
      use parameters, only: d => qu1

      integer flag
      external f2pysetdata
      logical ns
      integer r,i,j
      integer(4) s(*)
      ns = .FALSE.
      if (allocated(d)) then
         do i=1,r
            if ((size(d,i).ne.s(i)).and.(s(i).ge.0)) then
               ns = .TRUE.
            end if
         end do
         if (ns) then
            deallocate(d)
         end if
      end if
      if ((.not.allocated(d)).and.(s(1).ge.1)) then
       allocate(d(s(1),s(2)))
      end if
      if (allocated(d)) then
         do i=1,r
            s(i) = size(d,i)
         end do
      end if
      flag = 1
      call f2pysetdata(d,allocated(d))
      end subroutine f2py_parameters_getdims_qu1
      subroutine f2py_parameters_getdims_coher(r,s,f2pysetdata,flag)
      use parameters, only: d => coher

      integer flag
      external f2pysetdata
      logical ns
      integer r,i,j
      integer(4) s(*)
      ns = .FALSE.
      if (allocated(d)) then
         do i=1,r
            if ((size(d,i).ne.s(i)).and.(s(i).ge.0)) then
               ns = .TRUE.
            end if
         end do
         if (ns) then
            deallocate(d)
         end if
      end if
      if ((.not.allocated(d)).and.(s(1).ge.1)) then
       allocate(d(s(1),s(2)))
      end if
      if (allocated(d)) then
         do i=1,r
            s(i) = size(d,i)
         end do
      end if
      flag = 1
      call f2pysetdata(d,allocated(d))
      end subroutine f2py_parameters_getdims_coher
      
      subroutine f2pyinitparameters(f2pysetupfunc)
      use parameters, only : ifasing
      use parameters, only : roi
      use parameters, only : twopi
      use parameters, only : qfactor
      use parameters, only : verbose
      use parameters, only : t2
      use parameters, only : nsb
      use parameters, only : sq6
      use parameters, only : pulse
      use parameters, only : accuracymax
      use parameters, only : keepgoing
      use parameters, only : warning
      use parameters, only : tab
      use parameters, only : twopim6
      use parameters, only : message
      use parameters, only : ros
      use parameters, only : nphase
      use parameters, only : rfstep
      use parameters, only : ncycles
      use parameters, only : exception_text
      use parameters, only : dipole
      use parameters, only : pulseangle
      use parameters, only : nall
      use parameters, only : delay
      use parameters, only : quadrupole
      use parameters, only : critical
      use parameters, only : qu2
      use parameters, only : message_fmt
      use parameters, only : pi
      use parameters, only : spec
      use parameters, only : accuracy
      use parameters, only : idealpulse
      use parameters, only : zerospectrum
      use parameters, only : spinningspeed
      use parameters, only : indirect
      use parameters, only : rcph
      use parameters, only : error
      use parameters, only : nucleus
      use parameters, only : crlf
      use parameters, only : iref
      use parameters, only : chemicalshift
      use parameters, only : spectrometerfield
      use parameters, only : underline
      use parameters, only : info
      use parameters, only : exception
      use parameters, only : spectrum_compute
      use parameters, only : ctp
      use parameters, only : level
      use parameters, only : protonfrequency
      use parameters, only : sr
      use parameters, only : sw
      use parameters, only : eps
      use parameters, only : qu1
      use parameters, only : loglevel
      use parameters, only : nptsmax
      use parameters, only : coher
      use parameters, only : czjzek
      use parameters, only : debug
      use parameters, only : npts
      use parameters, only : spinningangle
      use parameters, only : nboucle
      external f2pysetupfunc
      external f2py_parameters_getdims_roi
      external f2py_parameters_getdims_t2
      external f2py_parameters_getdims_pulse
      external f2py_parameters_getdims_ros
      external f2py_parameters_getdims_nphase
      external f2py_parameters_getdims_dipole
      external f2py_parameters_getdims_pulseangle
      external f2py_parameters_getdims_delay
      external f2py_parameters_getdims_quadrupole
      external f2py_parameters_getdims_qu2
      external f2py_parameters_getdims_spec
      external f2py_parameters_getdims_indirect
      external f2py_parameters_getdims_nucleus
      external f2py_parameters_getdims_iref
      external f2py_parameters_getdims_chemicalshift
      external f2py_parameters_getdims_ctp
      external f2py_parameters_getdims_level
      external f2py_parameters_getdims_qu1
      external f2py_parameters_getdims_coher
      call f2pysetupfunc(ifasing,f2py_parameters_getdims_roi,twopi,qfact&
     &or,verbose,f2py_parameters_getdims_t2,nsb,sq6,f2py_parameters_getd&
     &ims_pulse,accuracymax,keepgoing,warning,tab,twopim6,message,f2py_p&
     &arameters_getdims_ros,f2py_parameters_getdims_nphase,rfstep,ncycle&
     &s,exception_text,f2py_parameters_getdims_dipole,f2py_parameters_ge&
     &tdims_pulseangle,nall,f2py_parameters_getdims_delay,f2py_parameter&
     &s_getdims_quadrupole,critical,f2py_parameters_getdims_qu2,message_&
     &fmt,pi,f2py_parameters_getdims_spec,accuracy,idealpulse,zerospectr&
     &um,spinningspeed,f2py_parameters_getdims_indirect,rcph,error,f2py_&
     &parameters_getdims_nucleus,crlf,f2py_parameters_getdims_iref,f2py_&
     &parameters_getdims_chemicalshift,spectrometerfield,underline,info,&
     &exception,spectrum_compute,f2py_parameters_getdims_ctp,f2py_parame&
     &ters_getdims_level,protonfrequency,sr,sw,eps,f2py_parameters_getdi&
     &ms_qu1,loglevel,nptsmax,f2py_parameters_getdims_coher,czjzek,debug&
     &,npts,spinningangle,nboucle)
      end subroutine f2pyinitparameters


