reman3/Rayman_X/cpa/public/GLI/load.h

114 lines
5.0 KiB
C

/**************
LOAD.H
Ver 2.1
***************/
#ifndef _LOAD_H_
#define _LOAD_H_
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */
/* For DLL using these function :*/
#include "cpa_expt.h"
#include "SCR.h"
#ifdef EXTERN_GLI
#undef EXTERN_GLI
#endif
#ifdef MAIN_GLI
#define EXTERN_GLI
#else
#define EXTERN_GLI extern
#endif
/*HP 03/03/98*/
#if !defined(U64)
#define GLI_C_SectionTexture "Texture"
#define GLI_C_SectionVisualMaterial "Material"
#define GLI_C_SectionGeometric "Geometric"
#define GLI_C_SectionPhysical "Physical"
#define GLI_C_SectionSpecialEffect "SpecialEffect"
#define GLI_C_SectionElementIndexedTriangles "ElementIndexedTriangles"
#define GLI_C_SectionElementFaceMapDescriptors "ElementFaceMapDescriptors"
#define GLI_C_SectionElementSprites "ElementSprites"
#define GLI_C_SectionElementTMeshes "ElementTMeshes"
#define GLI_C_SectionElementLines "ElementLines"
#define GLI_C_SectionElementSpheres "ElementSpheres"
#define GLI_C_SectionElementAlignedBoxes "ElementAlignedBoxes"
#define GLI_C_SectionElementPoints "ElementPoints"
#define GLI_C_SectionElementCones "ElementCones"
#ifdef USE_ALTIMAPS
/*--- Marc FASCIA - Annecy - 12/02/1998 ---*/
#define GLI_C_SectionElementAltimap "ElementAltimap"
#endif /*USE_ALTIMAPS*/
#define GLI_C_SectionFaceMapDescriptor "FaceMapDescriptor"
#define GLI_C_SectionSprite "Sprite"
/*=============*/
/* STRUCTURES */
/*=============*/
typedef struct GLI_tdstGeometricInfo_
{
char a_cFileName[255];
char a_cSectionName[255];
ACP_tdxHandleOfObject hObject;
} GLI_tdstGeometricInfo;
/*===========================================================*/
/* FONCTIONS UTILISEES POUR LE CHARGEMENT D'OBJET GRAPHIQUE */
/*===========================================================*/
extern CPA_EXPORT ACP_tdxHandleOfObject GLI_pLoadGeometricInFile(char *szGeometricName);
extern CPA_EXPORT ACP_tdxHandleOfObject GLI_pLoadBinGeometricInFile(char *szGeometricName);
extern CPA_EXPORT SCR_tde_Anl_ReturnValue GLI_xLoadGeometric(SCR_tdst_File_Description *p_fFile, char *szAction, char *szParams[], SCR_tde_Anl_Action cType);
extern CPA_EXPORT SCR_tde_Anl_ReturnValue GLI_xLoadElementIndexedTriangles(SCR_tdst_File_Description *p_fFile, char *szAction, char *szParams[], SCR_tde_Anl_Action cType);
extern CPA_EXPORT SCR_tde_Anl_ReturnValue GLI_xLoadElementFaceMapDescriptors(SCR_tdst_File_Description *p_fFile, char *szAction, char *szParams[], SCR_tde_Anl_Action cType);
extern CPA_EXPORT SCR_tde_Anl_ReturnValue GLI_xLoadElementSprites(SCR_tdst_File_Description *p_fFile, char *szAction, char *szParams[], SCR_tde_Anl_Action cType);
extern CPA_EXPORT SCR_tde_Anl_ReturnValue GLI_xLoadElementLines(SCR_tdst_File_Description *p_fFile, char *szAction, char *szParams[], SCR_tde_Anl_Action cType);
extern CPA_EXPORT SCR_tde_Anl_ReturnValue GLI_xLoadElementSpheres(SCR_tdst_File_Description *p_fFile, char *szAction, char *szParams[], SCR_tde_Anl_Action cType);
extern CPA_EXPORT SCR_tde_Anl_ReturnValue GLI_xLoadElementAlignedBoxes(SCR_tdst_File_Description *p_fFile, char *szAction, char *szParams[], SCR_tde_Anl_Action cType);
extern CPA_EXPORT SCR_tde_Anl_ReturnValue GLI_xLoadElementPoints(SCR_tdst_File_Description *p_fFile, char *szAction, char *szParams[], SCR_tde_Anl_Action cType);
#ifdef USE_ALTIMAPS
/*--- Marc FASCIA - Annecy - 12/02/1998 ---*/
extern CPA_EXPORT SCR_tde_Anl_ReturnValue GLI_xLoadElementAltimap(SCR_tdst_File_Description *p_fFile, char *szAction, char *szParams[], SCR_tde_Anl_Action cType);
#endif /*USE_ALTIMAPS*/
extern CPA_EXPORT SCR_tde_Anl_ReturnValue GLI_xLoadMaterial(SCR_tdst_File_Description *p_fFile, char *szAction, char *szParams[], SCR_tde_Anl_Action cType);
extern CPA_EXPORT SCR_tde_Anl_ReturnValue GLI_xLoadFaceMapDescriptor(SCR_tdst_File_Description *p_fFile, char *szAction, char *szParams[], SCR_tde_Anl_Action cType);
extern CPA_EXPORT SCR_tde_Anl_ReturnValue GLI_xLoadSprite(SCR_tdst_File_Description *p_fFile, char *szAction, char *szParams[], SCR_tde_Anl_Action cType);
extern CPA_EXPORT SCR_tde_Anl_ReturnValue GLI_xLoadElementTMeshes(SCR_tdst_File_Description *p_fFile, char *szAction, char *szParams[], SCR_tde_Anl_Action cType);
/*============================================================*/
/* FONCTIONS UTILISEES POUR LE CHARGEMENT D'UN FICHIER ENTIER */
/*============================================================*/
extern CPA_EXPORT void GLI_vLoadMODFile(char *szPathName, char *szFileName, GLI_tdstGeometricInfo **h_xGeometricInFile, ACP_tdxIndex *p_xNbGeometric);
#endif /* U64 */
extern CPA_EXPORT void GLI_vInitLoad();
extern CPA_EXPORT double GLI_dGetFileVersion(char *szGeometricFile);
extern CPA_EXPORT double GLI_dGetUnitInMeterInFile(char *szGeometricFile);
extern CPA_EXPORT void GLI_vSetPathOfTexture(char *szLoadPath);
extern CPA_EXPORT char *GLI_fn_szGetPathOfTexture(void);
/*================================================*/
/* FONCTIONS UTILISEES POUR LA SAUVEGARDE BINAIRE */
/*================================================*/
extern CPA_EXPORT void GLI_fn_vPrepareSaveMaterialBinaryBloc();
#ifdef __cplusplus
};
#endif /* __cplusplus */
#endif /* _LOAD_H_ */