--- trunk/OOPSE/libmdtools/status_module.F90 2003/07/17 19:29:09 632 +++ trunk/OOPSE/libmdtools/status_module.F90 2004/06/04 14:35:59 1237 @@ -2,77 +2,69 @@ module status implicit none PRIVATE +#define __FORTRAN90 +#include "simError.h" - character(len=1), parameter :: null = char(0) -interface - subroutine c_info(cMessage) - character(len=*),intent(in) :: cMessage - end subroutine c_info + character(len=1), parameter :: nullchar = char(0) + 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 :: info +public :: handleInfo public :: handleError -public :: warning +public :: handleWarning +public :: statusMsgSize - contains - - subroutine info(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)//null + painCave%severity = OOPSE_INFO + painCave%isFatal = .false. - call c_info(cMessage) - end subroutine info + 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)//null + 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 warning(myRoutine,myMessage) + subroutine handleWarning(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)//null + painCave%errMsg = "ROUTINE:" // trim(myRoutine) // newline // & + tab // trim(myMessage) // newline // nullchar - call c_warning(cMessage) - end subroutine warning + painCave%severity = OOPSE_WARNING + painCave%isFatal = .false. + call c_simError(painCave) - - - - - - - - + end subroutine handleWarning + end module status