aboutsummaryrefslogtreecommitdiff
path: root/Carpet/LoopControl/src/loopcontrol.F90
blob: 9d91ec4079c616a89ca2e27304d70972a2927b9f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
#include "cctk.h"

#include "loopcontrol.h"



module loopcontrol
  use loopcontrol_types
  implicit none
  
  interface
     
     subroutine lc_stats_init(stats, name)
       use loopcontrol_types
       implicit none
       CCTK_POINTER :: stats
       character(*) :: name
     end subroutine lc_stats_init
     
     subroutine lc_control_init( &
          control, stats, &
          imin, jmin, kmin, &
          imax, jmax, kmax, &
          iash, jash, kash, &
          di, dj, dk)
       use loopcontrol_types
       implicit none
       type(lc_control_t) :: control
       CCTK_POINTER       :: stats
       CCTK_POINTER       :: imin, jmin, kmin
       CCTK_POINTER       :: imax, jmax, kmax
       CCTK_POINTER       :: iash, jash, kash
       CCTK_POINTER       :: di, dj, dk
     end subroutine lc_control_init

     subroutine lc_control_finish(control, stats)
       use loopcontrol_types
       implicit none
       type(lc_control_t) :: control
       CCTK_POINTER       :: stats
     end subroutine lc_control_finish
     
     subroutine lc_thread_init(control)
       use loopcontrol_types
       implicit none
       type(lc_control_t) :: control
     end subroutine lc_thread_init
     
     logical function lc_thread_done(control)
       use loopcontrol_types
       implicit none
       type(lc_control_t) :: control
     end function lc_thread_done
     
     subroutine lc_thread_step(control)
       use loopcontrol_types
       implicit none
       type(lc_control_t) :: control
     end subroutine lc_thread_step
     
     subroutine lc_get_fortran_type_sizes(type_sizes)
       use loopcontrol_types
       implicit none
       CCTK_POINTER :: type_sizes(4)
     end subroutine lc_get_fortran_type_sizes
     
  end interface
  
end module loopcontrol