3  use, 
intrinsic :: iso_c_binding
 
   10  interface roctxrangepusha
 
   11     subroutine roctxrangepusha(name) bind(C, name='roctxRangePushA')
 
   13       character(kind=c_char) :: name(256)
 
   14     end subroutine roctxrangepusha
 
   15  end interface roctxrangepusha
 
   17  interface roctxrangepop
 
   18     subroutine roctxrangepop() bind(C, name='roctxRangePop')
 
   19     end subroutine roctxrangepop
 
   20  end interface roctxrangepop
 
   22  public :: roctxstartrange, roctxrangepusha, roctxrangepop
 
   26  subroutine roctxstartrange(name)
 
   27    character(kind=c_char,len=*) :: name
 
   31    str_len = len(trim(name))
 
   32    do i = 1, len(trim(name))
 
   35    c_name(str_len+1) = c_null_char
 
   37    call roctxrangepusha(c_name)
 
   39  end subroutine roctxstartrange
 
integer, parameter roctx_max_len