ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/libmdtools/status_module.F90
Revision: 1237
Committed: Fri Jun 4 14:35:59 2004 UTC (20 years, 1 month ago) by gezelter
File size: 1776 byte(s)
Log Message:
Unifying the error handlers

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
26 contains
27
28 subroutine handleInfo(myRoutine, myMessage)
29 character(len=*), intent(inout) :: myRoutine
30 character(len=*), intent(inout) :: myMessage
31
32 painCave%errMsg = "ROUTINE:" // trim(myRoutine) // newline // &
33 tab // trim(myMessage) // newline // nullchar
34
35 painCave%severity = OOPSE_INFO
36 painCave%isFatal = .false.
37
38 call c_simError(painCave)
39 end subroutine handleInfo
40
41
42 subroutine handleError(myRoutine, myMessage)
43 character(len=*), intent(in) :: myRoutine
44 character(len=*), intent(in) :: myMessage
45
46 painCave%errMsg = "ROUTINE:" // trim(myRoutine) // newline // &
47 tab // trim(myMessage) // newline // nullchar
48
49 painCave%severity = OOPSE_ERROR
50 painCave%isFatal = .true.
51
52 call c_simError(painCave)
53
54 end subroutine handleError
55
56 subroutine handleWarning(myRoutine, myMessage)
57 character(len=*), intent(in) :: myRoutine
58 character(len=*), intent(in) :: myMessage
59
60 painCave%errMsg = "ROUTINE:" // trim(myRoutine) // newline // &
61 tab // trim(myMessage) // newline // nullchar
62
63 painCave%severity = OOPSE_WARNING
64 painCave%isFatal = .false.
65
66 call c_simError(painCave)
67
68 end subroutine handleWarning
69
70 end module status