#ifndef __FONFONT_H__
#define __FONFONT_H__
 
#include "CPA_Expt.h"
 
#undef EXTERN
#undef extern
#if !defined(FON_MainFile)
#define EXTERN extern
#else
#define EXTERN
#endif /* FON_MainFile */
 
#ifdef  __cplusplus
extern "C" {
#endif
 
/*typedef struct FON_tdstVisualFont_
{
 unsigned short uwCharacter; // *** For normal and unicode characters ***
 MTH_tdxReal xBaseY;
 struct FON_st3DFont_ *h3DObject;
} FON_tdstVisualFont;*/
 
/*typedef struct FON_tdstVisualFont_ *FON_tdxHandleOfVisual;*/
 
/*#if !defined(U64)
LST2_M_StaticUseListOf(FON_tdxHandleOfFont);
#endif // U64
*/
 
/* Font structure*/
/*typedef struct FON_stFont_
{
 #if !defined(U64)
 LST2_M_StaticElementDeclaration(FON_tdxHandleOfFont)
 char *p_szFontName;
 #endif // U64
 
 enum FON_tdeTypeOfFont_ eTypeOfFont;
 
 unsigned long ulMaxNumberOfCharacters;
 FON_tdxHandleOfVisual *dLetter;
 MTH_tdxReal xCharacterSpace;
} FON_tdstFont;*/
 
    /*
typedef enum eLanguageDefinition_
{
  E_ld_French,
  E_ld_English,
  E_ld_German,
  E_ld_Italian,
  E_ld_Spanish,
  E_ld_Japanese,
  E_ld_Chinese,
  E_ld_MaxNumberOfLanguages
} tdeLanguageDefinition;
*/

#define FON_C_HandleOffsetForCommonLanguage 20000
 
typedef struct stLanguage_
{
  char **d_pTextsArray; /* an array of pointers to strings*/
  unsigned short uwMaxNumberOfTexts; /*size of this array*/
  unsigned short uwNumberOfTexts; /*used elements in this array*/
} tdstLanguage;
 
typedef struct FON_tdstGeneral_
{
  unsigned long ulElapsedTime;
  RND_tdxHandleToRandomIndex hRandomHandle;
 
  unsigned short uwNumberOfLanguages; /*number of defined languages*/
  tdstLanguage *d_sLanguageArray; /*array of defined languages*/
  tdstLanguage *p_stCommonLanguage ; /* structure for common strings */
/*FB010199 (for controller pak)*/
#ifdef U64
  unsigned long ulIndexOfFirstControllerPakText;
#endif /*U64*/
} FON_tdstGeneral;
 
/* Function prototypes*/
/*void FON_fn_vTreatLoadedFont(FON_tdxHandleOfFont hFont);*/
/*void FON_fn_vAddCharacterInFont(FON_tdxHandleOfFont hFont,unsigned long ulCharacterNumber,unsigned short uwCharacter,struct FON_st3DFont_ *h3DObject,MTH_tdxReal xBaseY);*/
/*struct FON_st3DFont_ *FON_fn_p_stGet3dObjectOfCharacter(FON_tdxHandleOfFont hFont,unsigned short uwCharacter);*/
/*MTH_tdxReal FON_fn_xGetBaseYOfCharacter(FON_tdxHandleOfFont hFont,unsigned short uwCharacher);*/
/*FON_tdxHandleOfFont FON_fn_xCreateFont(char *szFontName,unsigned long ulMaxNumberOfCharacters);*/
/*void FON_fn_vReleaseFont(FON_tdxHandleOfFont hFont);*/
/*void FON_fn_vRemoveFont(char *szFontName);*/
 
/*void FON_fn_vRemoveAllFonts();*/
 
#if !defined(U64)
/*LST2_M_StaticAnchorDeclaration(FON_tdxHandleOfFont) hFontList;*/
SCR_tdst_Link_Table FON_g_stTextLinkTable;
/* SCR_tdst_Link_Table stFontLinkTable;*/
#endif /* U64 */
 
EXTERN FON_tdstGeneral FON_g_stGeneral;
 
#ifdef  __cplusplus
}/* extern "C" */
#endif
 
#endif /* __FONFONT_H__ */
 
