/*========================================================================= * * SpoLoad.h - Loading functions for SPO file * * Version 1.0 * Revision date * *=======================================================================*/ #ifndef __SpoLOAD_H__ #define __SpoLOAD_H__ //--- Includes -------------------------------------------------------- #include "SCR.h" #include "typedef.h" #include "sprobj.h" //---------------------------------------------------------------------- #ifdef _WINDOWS /********************************************************/ #ifdef __cplusplus extern "C" { #endif // __cplusplus /********************************************************/ #endif // _WINDOWS //--- structures -------------------------------------------------------- typedef struct MLT_tdstSPOFlags_ { char szFlag[5]; short sFlag; } MLT_tdstSPOFlags; //--- Globals --------------------------------------------------------- extern BOOL g_bSubFile; extern MLT_tdstSPOFlags g_stSPOFlags[32]; extern int g_iEditorSPOFlags[32]; extern int g_iNbEditorSPOFlags; //--- Functions --------------------------------------------------------- // init extern void MLT_vInitSPOLoad (void); // loading extern SCR_tde_Anl_ReturnValue MLT_xLoadSuperObject (SCR_tdst_File_Description *p_fFile, char *szAction, char *szParams[], SCR_tde_Anl_Action cType); extern SCR_tde_Anl_ReturnValue MLT_xLoadMatrix (SCR_tdst_File_Description *p_fFile, char *szAction, char *szParams[], SCR_tde_Anl_Action cType); // SPO flags extern void MLT_vReadSPOFlagsFile (xString sRawData); extern void MLT_vSetSPOFlags (unsigned long *p_ulSPOFlags, float *p_fTransparency, xString *sIdent); extern int MLT_iGetIndexSPOFlags (char *szFlag); // geometric propertie extern void MLT_vGeomProp (int * p_iGeomProp, xString *sIdent, char *p_cGeom, double* p_fGeom, char * p_sConstraintAxis[4]); // hierarchy extern void MLT_vLoadHierarchy (MLT_tdxHandleToSuperObject *p_hRoot); extern void MLT_vCheckHierarchy (MLT_tdxHandleToSuperObject *p_hRoot); extern void MLT_vDeleteHierarchy (MLT_tdxHandleToSuperObject hSprObj); // search functions extern MLT_tdxHandleToSuperObject MLT_hFindInHierarchy (char *sName, MLT_tdxHandleToSuperObject hSprObj); extern MLT_tdxHandleToSuperObject MLT_hFindInHierarchySector (char *sName, MLT_tdxHandleToSuperObject hSprObj); extern BOOL MLT_bIsNotSameSector (char *sName, char *sSector); // file parameters extern double MLT_dGetUnitInMeterInFile (char *szGeometricFile); #ifdef _WINDOWS /********************************************************/ #ifdef __cplusplus } #endif // __cplusplus /********************************************************/ #endif // _WINDOWS #endif // __SpoLOAD_H__