/*///////////////////////////////////////////////////////////*/
/**/
/*          Management of the Module : Tde*/
/**/
/* File Name    : ErrTde.h*/
/* Date         : 03/10/96*/
/* Author       : Yan Marchal*/
/**/
/*///////////////////////////////////////////////////////////*/
/**/
/* abbreviation of the module-name. Used in macro is 'Tde'*/
/**/
/*///////////////////////////////////////////////////////////*/
 
#ifndef __ERRTDE_H__
#define __ERRTDE_H__
 
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */
 
#define C_szTdeVersion "TDE V5.0.0" /* The format is XXX Va.b.c with Xxx is the Tag of the module */
#define C_szTdeFullName  "2D Engine"/* the complete and clear name of the module */
#define C_szTdeDate __DATE__ /*The format is "Mmm dd yyyy".You can use __DATE__ but be careful that you have the control of the compilation*/
 
/* For DLLs who are using this module : */ 
#undef CPA_EXPORT
#if defined(CPA_WANTS_IMPORT)
 #define CPA_EXPORT __declspec(dllimport)
#elif defined(CPA_WANTS_EXPORT)
 #define CPA_EXPORT __declspec(dllexport)
#else
 #define CPA_EXPORT
#endif
 
 
#include "ERM.h"
 
#define __FATAL_ERR_TDE__
#define __WARNING1_ERR_TDE__
#define __WARNING2_ERR_TDE__
#define __WARNING3_ERR_TDE__
/*----------*/
/* Constant  */
/*----------*/
/* error of the Tde Module*/
typedef enum e_uwTdeErrNumber_{
    E_uwTdeFatalErr,    
#ifdef __FATAL_ERR_TDE__
/*     -----------------*/
    E_uwTdeFatalError1,  
#endif /*__FATAL_ERR_TDE__*/
    E_uwTdeStartOfWarning,/* important constant, it allows to recognize if an error is fatal or not.*/
#ifdef __WARNING1_ERR_TDE__
/*     -------------------*/
    E_uwTdeWarningNotEnoughMemory,
    E_uwTdeWarningCantReadFile,
    E_uwTdeWarningCantOpenFileForReading,
    E_uwTdeWarningCanNotFree,
    E_uwTdeWarningPriorityTooHigh,
    E_uwTdeWarningMatrixStackOverflow,
#endif /*__WARNING1_ERR_TDE__*/
#ifdef __WARNING2_ERR_TDE__
/*     -------------------*/
#endif /*__WARNING2_ERR_TDE__*/
#ifdef __WARNING3_ERR_TDE__
/*     -------------------*/
#endif /*__WARNING3_ERR_TDE__*/
    E_uwTdeErrNumber
} e_uwTdeErrNumber;
 
/*------------------*/
/* Global Variables*/
/*------------------*/
#undef __ERRTDE_EXTERN
#ifndef __DeclareGlobalVariableErrTde_h__
#define __ERRTDE_EXTERN extern /*external declaration*/
#else /*__DeclareGlobalVariableErrTde_h__*/
#define __ERRTDE_EXTERN /*replace by nothing : we have to declare*/
#endif /*__DeclareGlobalVariableErrTde_h__*/
 
__ERRTDE_EXTERN CPA_EXPORT  unsigned char g_ucTdeModuleId /*number of identification of the Erm module*/
#if defined(__DeclareGlobalVariableErrTde_h__) && !defined(CPA_WANTS_IMPORT)
= C_ucModuleNotInitialized
#endif /*__DeclareGlobalVariableErrTde_h__&& CPA_WANTS_IMPORT*/
;
 
#ifdef __ERROR_STRINGS__
 
__ERRTDE_EXTERN CPA_EXPORT  char * g_a_szTdeInformationModule []
#if defined(__DeclareGlobalVariableErrTde_h__) && !defined(CPA_WANTS_IMPORT)
= {C_szTdeVersion, C_szTdeFullName, C_szTdeDate}
#endif /*__DeclareGlobalVariableErrTde_h__ &&  CPA_WANTS_IMPORT*/
;
 
__ERRTDE_EXTERN CPA_EXPORT  char * g_szTdeModuleName /* Mandatory syntax 'g_sz'+[Abbreviation of ModuleName]+'ModuleName'*/
#if defined(__DeclareGlobalVariableErrTde_h__) && !defined(CPA_WANTS_IMPORT)
= "Module Tde"
#endif /*__DeclareGlobalVariableErrTde_h__ && CPA_WANTS_IMPORT*/
;
 
__ERRTDE_EXTERN CPA_EXPORT  struct tdstErrorMsg_ g_a_stTdeTabErr []     /* Mandatory syntax 'g_a_st'+[Abbreviation of ModuleName]+'TabErr'*/
#if defined(__DeclareGlobalVariableErrTde_h__) && !defined(CPA_WANTS_IMPORT)
={ 
#ifdef __FATAL_ERR_TDE__   
/*   -------------*/
    E_uwTdeFatalError1, "Fatal Error 1 ",
#endif /*__FATAL_ERR_TDE__*/
#ifdef __WARNING1_ERR_TDE__
/*   ----------------*/
    E_uwTdeWarningCanNotFree,               "Unable to free a block of allocated memory",
    E_uwTdeWarningNotEnoughMemory,          "Not enough memory",
    E_uwTdeWarningCantReadFile,             "Can't read file (this is probably not the good file format)",
    E_uwTdeWarningCantOpenFileForReading,   "Can't open file for reading (the file probably does not exist)",
    E_uwTdeWarningPriorityTooHigh,          "The Z-priority of a super-object is too high",
    E_uwTdeWarningMatrixStackOverflow,      "Matrix stack overflow : too many levels in the hierarchy",
#endif /*__WARNING1_ERR_TDE__*/
#ifdef __WARNING2_ERR_TDE__
/*   ----------------*/
#endif /*__WARNING2_ERR_TDE__*/
#ifdef __WARNING3_ERR_TDE__
/*   ----------------*/
#endif /*__WARNING3_ERR_TDE__*/
    0xFFFF, "\0"/*fin*/
};
#endif /*__DeclareGlobalVariableErrTde_h__ && CPA_WANTS_IMPORT*/
;
 
#endif /*__ERROR_STRINGS__*/
 
#ifdef __cplusplus
};
#endif /* __cplusplus */
 
#endif /*__ERRTDE_H__*/
 
