ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/libmdtools/status_module.F90
Revision: 1239
Committed: Fri Jun 4 14:59:27 2004 UTC (20 years, 1 month ago) by gezelter
File size: 1827 byte(s)
Log Message:
More work on Fortran side of error handler

File Contents

# Content
1 module status
2 implicit none
3 PRIVATE
4
5 #define __FORTRAN90
6 #include "simError.h"
7
8 character(len=1), parameter :: nullchar = char(0)
9 character(len=1), parameter :: newline = char(10)
10 character(len=1), parameter :: tab = char(9)
11 INTEGER, PARAMETER:: statusMsgSize = MAX_SIM_ERROR_MSG_LENGTH
12
13 !!$interface
14 !!$
15 !!$ subroutine c_simError(painCave)
16 !!$ type(errorStruct), pointer :: painCave
17 !!$ end subroutine c_simError
18 !!$
19 !!$end interface
20
21 public :: handleInfo
22 public :: handleError
23 public :: handleWarning
24 public :: statusMsgSize
25 public :: nullchar
26 public :: newline
27 public :: tab
28
29 contains
30
31 subroutine handleInfo(myRoutine, myMessage)
32 character(len=*), intent(in) :: myRoutine
33 character(len=*), intent(in) :: myMessage
34
35 painCave%errMsg = "Location: " // trim(myRoutine) // newline // &
36 tab // trim(myMessage) // newline // nullchar
37
38 painCave%severity = OOPSE_INFO
39 painCave%isFatal = .false.
40
41 call c_simError(painCave)
42 end subroutine handleInfo
43
44
45 subroutine handleError(myRoutine, myMessage)
46 character(len=*), intent(in) :: myRoutine
47 character(len=*), intent(in) :: myMessage
48
49 painCave%errMsg = "Location: " // trim(myRoutine) // newline // &
50 tab // trim(myMessage) // newline // nullchar
51
52 painCave%severity = OOPSE_ERROR
53 painCave%isFatal = .true.
54
55 call c_simError(painCave)
56
57 end subroutine handleError
58
59 subroutine handleWarning(myRoutine, myMessage)
60 character(len=*), intent(in) :: myRoutine
61 character(len=*), intent(in) :: myMessage
62
63 painCave%errMsg = "Location: " // trim(myRoutine) // newline // &
64 tab // trim(myMessage) // newline // nullchar
65
66 painCave%severity = OOPSE_WARNING
67 painCave%isFatal = .false.
68
69 call c_simError(painCave)
70
71 end subroutine handleWarning
72
73 end module status