The TELEMAC-MASCARET system  trunk
gracestop.f
Go to the documentation of this file.
1 ! ****************
2  MODULE gracestop
3 ! ****************
4 !
5 !
6 !***********************************************************************
7 ! SPECIAL
8 !***********************************************************************
9 !
10 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
11 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
12 !
13  IMPLICIT NONE
14  LOGICAL :: breaker = .false.
15 !SGI INTEGER, PARAMETER :: SIGUSR1=16
16 !LINUX INTEGER, PARAMETER :: SIGUSR1=10
17 !IBM INTEGER, PARAMETER :: SIGUSR1=30
18  INTEGER, PARAMETER :: sigusr1=16
19  CONTAINS
20 !
21  SUBROUTINE handler
22  IMPLICIT NONE
23 !!! WRITE(*,*) 'SIGNAL ',SIGUSR1,' CAUGHT'
24  breaker = .true.
25  END SUBROUTINE handler
26 !
27  SUBROUTINE grace
28  IMPLICIT NONE
29  WRITE(*,*) 'I STOP GRACEFULLY'
30  stop 0
31  END SUBROUTINE grace
32 !
33  SUBROUTINE trapsig
34  IMPLICIT NONE
35 ! INTEGER ISIGNAL, SIGNAL
36 !
37 !SGI ISIGNAL = SIGNAL(SIGUSR1, HANDLER, -1)
38 !LINUX ISIGNAL = SIGNAL(SIGUSR1, HANDLER)
39 !IBM CALL SIGNAL(SIGUSR1, HANDLER)
40 !
41 ! CHOICE HERE : NOTHING
42 ! ISIGNAL = SIGNAL(SIGUSR1, HANDLER, -1)
43 !
44  END SUBROUTINE trapsig
45 !
46  END MODULE gracestop
logical breaker
Definition: gracestop.f:15
integer, parameter sigusr1
Definition: gracestop.f:19