--- trunk/OOPSE/libmdtools/status_module.F90 2003/07/23 22:13:59 648 +++ trunk/OOPSE/libmdtools/status_module.F90 2004/06/04 14:35:59 1237 @@ -2,27 +2,22 @@ module status implicit none PRIVATE +#define __FORTRAN90 +#include "simError.h" - integer, parameter :: statusMsgSize = 1000 character(len=1), parameter :: nullchar = char(0) -interface - subroutine c_info(cMessage) - character(len=*),intent(in) :: cMessage - end subroutine c_info + character(len=1), parameter :: newline = char(10) + character(len=1), parameter :: tab = char(9) + INTEGER, PARAMETER:: statusMsgSize = MAX_SIM_ERROR_MSG_LENGTH -end interface -interface - subroutine c_warning(cMessage) - character(len=*), intent(in) :: cMessage - end subroutine c_warning +!!$interface +!!$ +!!$ subroutine c_simError(painCave) +!!$ type(errorStruct), pointer :: painCave +!!$ end subroutine c_simError +!!$ +!!$end interface -end interface -interface - subroutine c_error(cMessage) - character(len=*),intent(in) :: cMessage - end subroutine c_error -end interface - public :: handleInfo public :: handleError public :: handleWarning @@ -30,50 +25,46 @@ contains contains - - subroutine handleInfo(myRoutine,myMessage) + subroutine handleInfo(myRoutine, myMessage) character(len=*), intent(inout) :: myRoutine character(len=*), intent(inout) :: myMessage - character(len=len_trim(myRoutine) + len_trim(myMessage) + 10) :: cMessage + painCave%errMsg = "ROUTINE:" // trim(myRoutine) // newline // & + tab // trim(myMessage) // newline // nullchar - cMessage = cMessage//"ROUTINE:"//trim(myRoutine)//trim(myMessage)//nullchar + painCave%severity = OOPSE_INFO + painCave%isFatal = .false. - call c_info(cMessage) + call c_simError(painCave) end subroutine handleInfo - subroutine handleError(myRoutine,myMessage) + subroutine handleError(myRoutine, myMessage) character(len=*), intent(in) :: myRoutine character(len=*), intent(in) :: myMessage - character(len=len_trim(myRoutine) + len_trim(myMessage) + 10) :: cMessage - cMessage = cMessage//"ROUTINE:"//trim(myRoutine)//trim(myMessage)//nullchar + painCave%errMsg = "ROUTINE:" // trim(myRoutine) // newline // & + tab // trim(myMessage) // newline // nullchar - call c_error(cMessage) + painCave%severity = OOPSE_ERROR + painCave%isFatal = .true. + + call c_simError(painCave) + end subroutine handleError - - - - - subroutine handleWarning(myRoutine,myMessage) + subroutine handleWarning(myRoutine, myMessage) character(len=*), intent(in) :: myRoutine character(len=*), intent(in) :: myMessage - character(len=len_trim(myRoutine) + len_trim(myMessage) + 22) :: cMessage - cMessage = cMessage//"WARNING FROM ROUTINE: "//trim(myRoutine)//trim(myMessage)//nullchar + painCave%errMsg = "ROUTINE:" // trim(myRoutine) // newline // & + tab // trim(myMessage) // newline // nullchar - call c_warning(cMessage) - end subroutine handleWarning + painCave%severity = OOPSE_WARNING + painCave%isFatal = .false. + call c_simError(painCave) - - - - - - - - + end subroutine handleWarning + end module status