/* ------------------------------------------------------------------------------------------ HEADER FILE FOR : Error definition file for mathematic module ------------------------------------------------------------------------------------------ File Name : ErrMth.h ------------------------------------------------------------------------------------------ Creation : * Date : Feburary 18,1997 * Author : Albert Pais ------------------------------------------------------------------------------------------ Contents : This file contains definition for the error management concerning the mathematical module ------------------------------------------------------------------------------------------ Modification : * Date : * Author : * Modify : ------------------------------------------------------------------------------------------ */ #ifndef __ERRMTH_H__ #define __ERRMTH_H__ #define C_szXxxVersion "MTH V5.0.0" /* The format is XXX Va.b.c with Xxx is the Tag of the module */ #define C_szXxxFullName "Module Mathematic for AI"/* the complete and clear name of the module */ #define C_szXxxDate __DATE__ /*The format is "Mmm dd yyyy".You can use __DATE__ but be careful that you have the control of the compilation*/ /*----------*/ /* Constant */ /*----------*/ /* error of the MTH Module*/ typedef enum e_uwMTHErrNumber_{ E_uwMTHFatalErr = 0, #ifdef __FATAL_ERR_MTH__ /* -----------------*/ E_uwMTHFatalNotAFatalError, E_uwMTHFatalInvalidParameter, E_uwMTHFatalAssertionFailure, E_uwMTHFatalFailedAllocationMem, #endif /*__FATAL_ERR_MTH__*/ E_uwMTHStartOfWarning,/* important constant, it allows to recognize if an error is fatal or not.*/ E_uwMTHWarningCanNotFree, #ifdef __WARNING_ERR_MTH__ /* -------------------*/ #endif /*__WARNING_ERR_MTH__*/ E_uwMTHErrNumber } e_uwMTHErrNumber; /*------------------*/ /* Global Variables*/ /*------------------*/ #undef EXTERN #undef extern #ifndef __DeclareGlobalVariableErrMth_h__ #define EXTERN_ERRMTH extern /*external declaration*/ #else /*__DeclareGlobalVariableErrMth_h__*/ #define EXTERN_ERRMTH /*replace by nothing : we have to declare*/ #endif /*__DeclareGlobalVariableErrMth_h__*/ EXTERN_ERRMTH unsigned char g_ucMTHModuleId /*number of identification of the Erm module*/ #ifdef __DeclareGlobalVariableErrMth_h__ = C_ucModuleNotInitialized #endif /*__DeclareGlobalVariableErrMth_h__*/ ; #ifdef __ERROR_STRINGS__ EXTERN_ERRMTH CPA_EXPORT char * g_a_szMTHInformationModule [] #if defined(__DeclareGlobalVariableErrMth_h__) && !defined(CPA_WANTS_IMPORT) = {C_szXxxVersion, C_szXxxFullName, C_szXxxDate} #endif /*__DeclareGlobalVariableErrMth_h__ && CPA_WANTS_IMPORT*/ ; EXTERN_ERRMTH char * g_szMTHModuleName /* Obliged syntax 'g_sz'+[Abbreviation of ModuleName]+'ModuleName'*/ #ifdef __DeclareGlobalVariableErrMth_h__ = "Module Mathematic" #endif /*__DeclareGlobalVariableErrMth_h__*/ ; EXTERN_ERRMTH /*struct!!y!!*/ tdstErrorMsg/*_!!y!!*/ g_a_stMTHTabErr [] /* Obliged syntax 'g_a_st'+[Abbreviation of ModuleName]+'TabErr'*/ #ifdef __DeclareGlobalVariableErrMth_h__/*Call from main program*/ ={ #ifdef __FATAL_ERR_MTH__ E_uwMTHFatalNotAFatalError,"This not a valid mth fatal error", E_uwMTHFatalInvalidParameter,"One or more parameters are invalid", E_uwMTHFatalAssertionFailure,"Assertions failed", E_uwMTHFatalFailedAllocationMem,"Allocation failure in module MTH", /* -------------*/ #endif /*__FATAL_ERR_MTH__*/ #ifdef __WARNING_ERR_MTH__ E_uwMTHWarningCanNotFree,"Free failure in module MTH", /* ----------------*/ #endif /*__WARNING_ERR_MTH__*/ 0xFFFF, "\0"/*fin*/ }; #endif /*__DeclareGlobalVariableErrMth_h__*/ ; #undef extern #endif /*__ERROR_STRINGS__*/ #endif /*__ERRMTH_H__*/