module trdatbuf_intmod
  !
  ! **generated by gensis_f90.py -- do not edit!
 
  IMPLICIT NONE
 
  ! module containing trdatbuf object integer data names, sizes and values
  !   for use with MDSplus I/O
 
  integer, parameter :: nivar = 904
  ! number of integer, parameter variables in trdatbuf object
 
  integer :: ivarsize(nivar+1)
  ! size (dimensions) of integer variables in trdatbuf object
 
  integer :: ilen2
  ! computed length for intbuf (=sum(ivarsize(1:nivar+1))
 
  integer, dimension(:), allocatable :: intbuf
  ! concatenation of all integer data in trdatbuf object
                                                ! for use in MDSplus I/O
 
  character*16 :: ivarname(nivar+1)
  ! names of integer variables in trdatbuf object
 
  contains
 
    subroutine intmod_init
 
      call trdatbuf_intmod_sub1(ivarname,ivarsize,nivar+1)
 
      ilen2 = sum(ivarsize)
      allocate(intbuf(ilen2))
 
      return
 
    end subroutine intmod_init
 
    subroutine fill_intbuf(s)
      use trdatbuf_obj
 
      type(trdatbuf) :: s
 
      call trdatbuf_intmod_sub2(s,ivarsize,nivar+1,intbuf,ilen2)
 
      return
 
    end subroutine fill_intbuf
 
    subroutine get_intbuf(s)
      use trdatbuf_obj
 
      type(trdatbuf) :: s
 
      ! gensis_f90 mod: allow recovery from singleton deletions, only...
 
      call trdatbuf_intmod_sub3(s,ivarsize,ivarname,nivar+1,intbuf,ilen2)
 
      return
 
    end subroutine get_intbuf
 
end module trdatbuf_intmod
