574 lines
25 KiB
C
574 lines
25 KiB
C
|
|
/*SectExt.h*/
|
|
|
|
#ifndef __SECTOREXT
|
|
#define __SECTOREXT
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif /* __cplusplus */
|
|
|
|
/* For DLL using these function :*/
|
|
#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
|
|
|
|
/*Prototypes*/
|
|
|
|
/*This function is used to know Sector Change History with the number of change (0=no change)*/
|
|
extern CPA_EXPORT ACP_tdxIndex SCT_fn_xGetSectorChangeHistory(HIE_tdxHandleToSuperObject **_p_hHistory);
|
|
|
|
/*This function is used when we need to know in each sector where we are*/
|
|
extern CPA_EXPORT HIE_tdxHandleToSuperObject SECT_fn_hResearchInWhatSectorIAm(HIE_tdxHandleToSuperObject _SECT_hFatherSector,
|
|
MTH3D_tdstVector *_p_stAbsolutePosition);
|
|
|
|
/*This function allows the script to read correctly the .sct*/
|
|
extern CPA_EXPORT BOOL SECT_fn_bInitSectorLoading(void);
|
|
|
|
extern CPA_EXPORT BOOL SECT_fn_bIsInBorderBox (MTH3D_tdstVector *_p_stPosition, SECT_tdxHandleOfSectorObject _hSector);
|
|
|
|
/* Binary exports*/
|
|
extern CPA_EXPORT
|
|
unsigned long SCT_fn_ulReadSectorBinaryBloc(
|
|
char *_p_cLoadedBuffer,
|
|
unsigned long _ulLoadedBufferSize);
|
|
|
|
extern CPA_EXPORT
|
|
void SCT_fn_vReadAllSectorBinaryBlocs(
|
|
char *_szBinaryFileName);
|
|
|
|
extern CPA_EXPORT
|
|
unsigned long SCT_fn_ulWriteBinaryBloc(
|
|
unsigned long _ulStructAddress,
|
|
char *_p_cDestBuffer);
|
|
|
|
extern CPA_EXPORT
|
|
void SCT_fn_vWriteAllSectorBinaryBlocs(
|
|
char *_szBinaryFileName);
|
|
|
|
extern CPA_EXPORT
|
|
void SCT_fn_vPrepareSaveBinaryBloc(
|
|
void);
|
|
|
|
extern CPA_EXPORT
|
|
SECT_tdxHandleOfSectorObject SCT_fn_hLoadSector(
|
|
char *_szSectionName);
|
|
|
|
extern CPA_EXPORT
|
|
void SCT_fn_vResolveAllSectorBinaryBlocs(
|
|
void);
|
|
extern CPA_EXPORT void SCT_fn_vReadAllSectorBinaryBlocs2(char *_szBinaryFileName);
|
|
extern CPA_EXPORT void SCT_fn_vResolveSectorBinaryBloc2(unsigned long _ulAddress);
|
|
|
|
|
|
/*This function is used to display the scene with the use of the graphical interaction */
|
|
/* with water effect according position of camera*/
|
|
extern CPA_EXPORT void SCT_fn_vSendSectorWhereIAmToViewport(
|
|
MTH3D_tdstVector *_p_stAbsolutePositionOfCamera,
|
|
struct GLD_tdstViewportAttributes_ *_p_stVpt,
|
|
HIE_tdxHandleToSuperObject _hSprObjSector ,
|
|
long _lDrawMask
|
|
);
|
|
|
|
/* Function to optimize mirror search in hierarchy*/
|
|
extern CPA_EXPORT void SCT_fn_vInitMirrorFlagForAllSectors(HIE_tdxHandleToSuperObject _hStaticRoot);
|
|
|
|
/*The new function with mirror*/
|
|
extern CPA_EXPORT void SCT_fn_vSendSectorWhereIAmToViewportWithMirror(
|
|
MTH3D_tdstVector *_p_stAbsolutePositionOfCamera,
|
|
GLD_tdhDevice _hDevice,
|
|
GLD_tdhViewport _hViewport,
|
|
struct GLD_tdstViewportAttributes_ *_p_stVpt,
|
|
HIE_tdxHandleToSuperObject _hSprObjSector ,
|
|
long _lDrawMask
|
|
);
|
|
|
|
/*From sectdraw*/
|
|
extern void SECT_fn_vSendDynamicLightsFromWhereIAmToViewport(
|
|
struct GLD_tdstViewportAttributes_ *_p_stVpt,
|
|
HIE_tdxHandleToSuperObject _hSprObjSector
|
|
);
|
|
|
|
/*This function is used to display the scene with the use of the graphical interaction*/
|
|
extern CPA_EXPORT void SECT_fn_vSendSectorWhereIAmToViewport ( struct GLD_tdstViewportAttributes_ *p_stVpt ,
|
|
HIE_tdxHandleToSuperObject hSprObjSector ,
|
|
long lDrawMask
|
|
);
|
|
/*This function is used to display all the world*/
|
|
extern CPA_EXPORT void SECT_fn_vSendAllSectorsToViewport ( struct GLD_tdstViewportAttributes_ *_p_stVpt ,
|
|
HIE_tdxHandleToSuperObject _hSprObjSectorFather ,
|
|
long _lDrawMask
|
|
);
|
|
|
|
/*This function is used to notice if we change of sector with a history*/
|
|
extern CPA_EXPORT void SCT_fn_vTestChangeSectorWithHistory(
|
|
MTH3D_tdstVector *_p_stBeforeAbsolutePosition,
|
|
MTH3D_tdstVector *_p_stAfterAbsolutePosition,
|
|
HIE_tdxHandleToSuperObject *_p_hSectorSOWhereIWas
|
|
);
|
|
|
|
|
|
|
|
/*This function is used to initialyse the light buffer*/
|
|
extern CPA_EXPORT void SCT_fn_vComputeAllLightBuffer (GLD_tdhDevice _hDevice,
|
|
GLD_tdhViewport _hViewport ,
|
|
HIE_tdxHandleToSuperObject _hSprObjFatherOfSector);
|
|
|
|
|
|
/*This function is used to notice if we change of sector*/
|
|
extern CPA_EXPORT void SECT_fn_vTestChangeSector(
|
|
MTH3D_tdstVector *p_stBeforeAbsolutePosition,
|
|
MTH3D_tdstVector *p_stAfterAbsolutePosition,
|
|
HIE_tdxHandleToSuperObject *p_hSectorSOWhereIWas
|
|
);
|
|
|
|
/*This function is used to correct the break of smoothing*/
|
|
extern CPA_EXPORT void fn_vGeneralCoherenceOfSmoothing(HIE_tdxHandleToSuperObject hSprObjSector);
|
|
|
|
|
|
/*This function have to be used after any load of map*/
|
|
extern CPA_EXPORT void SCT_fn_vInitMaterialForGoThrough(void);
|
|
|
|
|
|
/*This function is used in order to display all GoThroughs below _hSprObjFatherOfSector*/
|
|
extern CPA_EXPORT void SECT_fn_vSendAllGoThroughOfSectorToViewport ( struct GLD_tdstViewportAttributes_ *_p_stVpt ,
|
|
HIE_tdxHandleToSuperObject _hSprObjFatherOfSector
|
|
);
|
|
/* Function to know if a sector is virtual or not*/
|
|
extern CPA_EXPORT ACP_tdxBool SECT_fn_bIsThisSectorVirtual (HIE_tdxHandleToSuperObject _hSprObjSector);
|
|
|
|
/* Function to know if a sector is virtual or not*/
|
|
extern CPA_EXPORT ACP_tdxBool SECT_fn_bIsThisSectorUniverse (HIE_tdxHandleToSuperObject _hSprObjSector);
|
|
|
|
/*Link table*/
|
|
#if !defined(U64)
|
|
extern CPA_EXPORT SCR_tdst_Link_Table *SECT_fn_pGetLinkTable(void);
|
|
#endif /* U64 */
|
|
|
|
extern CPA_EXPORT void SECT_fn_vDisinit(void);
|
|
|
|
/* take pointer in the element*/
|
|
|
|
/* ANNECY AV {*/
|
|
|
|
/* All this functions are now inline function
|
|
|
|
extern CPA_EXPORT GLI_tdxHandleToLight SECT_GetDNMLightsInList(
|
|
SECT_tdxHandleOfElementLstDNMLights hDNMLightsList);
|
|
|
|
extern CPA_EXPORT GLI_tdxHandleToLight SECT_GetStaticLightsInList(
|
|
SECT_tdxHandleOfElementLstStaticLights hStaticLightsList);
|
|
|
|
extern CPA_EXPORT HIE_tdxHandleToSuperObject SECT_GetCharacterInList(
|
|
SECT_tdxHandleOfElementLstCharacter
|
|
);
|
|
extern CPA_EXPORT HIE_tdxHandleToSuperObject SECT_GetSectorInCollisionList(
|
|
SECT_tdxHandleOfElementLstCollisionInteraction
|
|
);
|
|
extern CPA_EXPORT HIE_tdxHandleToSuperObject SECT_GetSectorInActivityList(
|
|
SECT_tdxHandleOfElementLstActivityInteraction
|
|
);
|
|
extern CPA_EXPORT HIE_tdxHandleToSuperObject SECT_GetSectorInGraphicList(
|
|
SECT_tdxHandleOfElementLstGraphicInteraction
|
|
);
|
|
extern CPA_EXPORT short SCT_fn_wGetLODInGraphicList(SECT_tdxHandleOfElementLstGraphicInteraction hGraphicList);
|
|
|
|
extern CPA_EXPORT HIE_tdxHandleToSuperObject SECT_GetSectorInSoundList(
|
|
SECT_tdxHandleOfElementLstSoundInteraction
|
|
);
|
|
|
|
extern CPA_EXPORT long SCT_fn_lGetVolumeInSoundList(SECT_tdxHandleOfElementLstSoundInteraction hSoundList);
|
|
|
|
extern CPA_EXPORT HIE_tdxHandleToSuperObject SCT_fn_hGetSectorInSoundEventList(SCT_tdxHandleOfLstSoundEvent hSoundEventList);
|
|
|
|
extern CPA_EXPORT SND_tdxHandleToSoundEvent SCT_fn_uGetSoundEventInSoundEventList(SCT_tdxHandleOfLstSoundEvent hSoundEventList);
|
|
|
|
// Function to use list
|
|
extern CPA_EXPORT SECT_tdxHandleOfElementLstDNMLights SECT_fn_hGetFirstDNMLightsListInSector(
|
|
HIE_tdxHandleToSuperObject
|
|
);
|
|
extern CPA_EXPORT SECT_tdxHandleOfElementLstDNMLights SECT_fn_hGetNextDNMLightsListInSector(
|
|
SECT_tdxHandleOfElementLstDNMLights
|
|
);
|
|
extern CPA_EXPORT SECT_tdxHandleOfElementLstStaticLights SECT_fn_hGetFirstStaticLightsListInSector(
|
|
HIE_tdxHandleToSuperObject
|
|
);
|
|
extern CPA_EXPORT SECT_tdxHandleOfElementLstStaticLights SECT_fn_hGetNextStaticLightsListInSector(
|
|
SECT_tdxHandleOfElementLstStaticLights
|
|
);
|
|
extern CPA_EXPORT SECT_tdxHandleOfElementLstCharacter SECT_fn_hGetFirstCharListInSector(HIE_tdxHandleToSuperObject);
|
|
extern CPA_EXPORT SECT_tdxHandleOfElementLstCharacter SECT_fn_hGetNextCharListInSector(
|
|
SECT_tdxHandleOfElementLstCharacter
|
|
);
|
|
extern CPA_EXPORT long SECT_fn_lGetNbCharListInSector(HIE_tdxHandleToSuperObject _hSector);
|
|
extern CPA_EXPORT SECT_tdxHandleOfElementLstCollisionInteraction SECT_fn_hGetFirstCollisionNodeInCollisionList(
|
|
HIE_tdxHandleToSuperObject
|
|
);
|
|
extern CPA_EXPORT SECT_tdxHandleOfElementLstCollisionInteraction SECT_fn_hGetNextCollisionNodeInCollisionList(
|
|
SECT_tdxHandleOfElementLstCollisionInteraction
|
|
);
|
|
extern CPA_EXPORT SECT_tdxHandleOfElementLstActivityInteraction SECT_fn_hGetFirstActivityNodeInActivityList(
|
|
HIE_tdxHandleToSuperObject
|
|
);
|
|
extern CPA_EXPORT SECT_tdxHandleOfElementLstActivityInteraction SECT_fn_hGetNextActivityNodeInActivityList(
|
|
SECT_tdxHandleOfElementLstActivityInteraction
|
|
);
|
|
extern CPA_EXPORT SECT_tdxHandleOfElementLstGraphicInteraction SECT_fn_hGetFirstGraphicNodeInGraphicList(
|
|
HIE_tdxHandleToSuperObject
|
|
);
|
|
extern CPA_EXPORT SECT_tdxHandleOfElementLstGraphicInteraction SECT_fn_hGetNextGraphicNodeInGraphicList(
|
|
SECT_tdxHandleOfElementLstGraphicInteraction
|
|
);
|
|
extern CPA_EXPORT SECT_tdxHandleOfElementLstSoundInteraction SECT_fn_hGetFirstSoundNodeInSoundList(
|
|
HIE_tdxHandleToSuperObject
|
|
);
|
|
extern CPA_EXPORT SECT_tdxHandleOfElementLstSoundInteraction SECT_fn_hGetNextSoundNodeInSoundList(
|
|
SECT_tdxHandleOfElementLstSoundInteraction
|
|
);
|
|
extern CPA_EXPORT SCT_tdxHandleOfLstSoundEvent SCT_fn_hGetFirstSoundEventNodeInSoundEventList(HIE_tdxHandleToSuperObject _hSector);
|
|
extern CPA_EXPORT SCT_tdxHandleOfLstSoundEvent SCT_fn_hGetNextSoundEventNodeInSoundEventList(SCT_tdxHandleOfLstSoundEvent _hSoundEventNode);
|
|
|
|
*/
|
|
/* END ANNECY AV }*/
|
|
|
|
extern CPA_EXPORT void SECT_fn_vIsolateCharListNode(SECT_tdxHandleOfElementLstCharacter);
|
|
extern CPA_EXPORT void SECT_fn_vAddTailCharListNode(HIE_tdxHandleToSuperObject,SECT_tdxHandleOfElementLstCharacter);
|
|
extern CPA_EXPORT void SECT_fn_vAddHeadCharListNode(HIE_tdxHandleToSuperObject,SECT_tdxHandleOfElementLstCharacter);
|
|
|
|
extern CPA_EXPORT void SECT_fn_vIsolateDNMLightsListNode(SECT_tdxHandleOfElementLstDNMLights);
|
|
extern CPA_EXPORT void SECT_fn_vAddTailDNMLightsListNode(HIE_tdxHandleToSuperObject,SECT_tdxHandleOfElementLstDNMLights);
|
|
|
|
#ifdef ACTIVE_EDITOR
|
|
extern CPA_EXPORT void SECT_fn_vIsolateStaticLightsListNode(SECT_tdxHandleOfElementLstStaticLights _hNode);
|
|
extern CPA_EXPORT void SECT_fn_vDestructStaticLightsListNode(SECT_tdxHandleOfElementLstStaticLights _hNode);
|
|
extern CPA_EXPORT void SECT_fn_vAddTailStaticLightsListNode(HIE_tdxHandleToSuperObject,SECT_tdxHandleOfElementLstStaticLights);
|
|
#endif /* ACTIVE_EDITOR */
|
|
|
|
extern CPA_EXPORT SECT_tdxHandleOfElementLstCharacter SECT_fn_hCreateElementLstCharacter(void);
|
|
extern CPA_EXPORT SECT_tdxHandleOfElementLstCollisionInteraction SECT_fn_hCreateElementLstCollisionInteraction(void);
|
|
extern CPA_EXPORT SECT_tdxHandleOfElementLstActivityInteraction SECT_fn_hCreateElementLstActivityInteraction(void);
|
|
extern CPA_EXPORT SECT_tdxHandleOfElementLstGraphicInteraction SECT_fn_hCreateElementLstGraphicInteraction(void);
|
|
extern CPA_EXPORT SECT_tdxHandleOfElementLstSoundInteraction SECT_fn_hCreateElementLstSoundInteraction(void);
|
|
extern CPA_EXPORT SCT_tdxHandleOfLstSoundEvent SCT_fn_hCreateElementLstSoundEvent(void);
|
|
|
|
extern CPA_EXPORT SECT_tdxHandleOfElementLstDNMLights SECT_fn_hCreateElementLstDNMLights(void);
|
|
extern CPA_EXPORT SECT_tdxHandleOfElementLstStaticLights SECT_fn_hCreateElementLstStaticLights(void);
|
|
|
|
/* functions to manage the border*/
|
|
extern CPA_EXPORT void SECT_fn_vSetMinPointInBorder (SECT_tdxHandleOfSectorObject _hSector,
|
|
MTH3D_tdstVector *_p_stMinPoint);
|
|
|
|
extern CPA_EXPORT void SECT_fn_vSetMaxPointInBorder (SECT_tdxHandleOfSectorObject _hSector,
|
|
MTH3D_tdstVector *_p_stMaxPoint);
|
|
|
|
extern CPA_EXPORT void SECT_fn_vGetMinPointInBorder (SECT_tdxHandleOfSectorObject _hSector,
|
|
MTH3D_tdstVector *_p_stMinPoint);
|
|
|
|
extern CPA_EXPORT void SECT_fn_vGetMaxPointInBorder (SECT_tdxHandleOfSectorObject _hSector,
|
|
MTH3D_tdstVector *_p_stMaxPoint);
|
|
|
|
MTH3D_tdstVector *SECT_fn_p_stGetMinPointInBorder(SECT_tdxHandleOfSectorObject _hSector);
|
|
MTH3D_tdstVector *SECT_fn_p_stGetMaxPointInBorder(SECT_tdxHandleOfSectorObject _hSector);
|
|
|
|
extern CPA_EXPORT void SECT_fn_vGetCenterOfBorder (SECT_tdxHandleOfSectorObject _hSector,
|
|
MTH3D_tdstVector *_p_stCenter);
|
|
|
|
extern CPA_EXPORT void SECT_fn_vComputeBorder (HIE_tdxHandleToSuperObject _hSectorObject);
|
|
|
|
extern CPA_EXPORT void SECT_fn_vInitAllBorders (HIE_tdxHandleToSuperObject _hSectorRoot);
|
|
|
|
#ifdef ACTIVE_EDITOR
|
|
|
|
extern CPA_EXPORT MTH_tdxReal SECT_fn_xGetZmaxOfBorder (SECT_tdxHandleOfSectorObject _hSector);
|
|
|
|
extern CPA_EXPORT void SECT_fn_vSetZmaxOfBorder (SECT_tdxHandleOfSectorObject _hSector, MTH_tdxReal _xZmaxOfBorder);
|
|
|
|
extern CPA_EXPORT MTH_tdxReal SECT_fn_xGetRealZmax (SECT_tdxHandleOfSectorObject _hSector);
|
|
|
|
extern CPA_EXPORT void SECT_fn_vSetRealZmax (SECT_tdxHandleOfSectorObject _hSector, MTH_tdxReal _xZmaxOfBorder);
|
|
|
|
#endif /*ACTIVE_EDITOR*/
|
|
|
|
/*functions to set objects*/
|
|
extern CPA_EXPORT SECT_tdxHandleOfSectorObject SECT_fn_hCreateSector(void);
|
|
|
|
extern CPA_EXPORT void SECT_fn_vSetOnVirtualSector(SECT_tdxHandleOfSectorObject hSector);
|
|
|
|
extern CPA_EXPORT void SECT_fn_vSetOffVirtualSector(SECT_tdxHandleOfSectorObject hSector);
|
|
|
|
extern CPA_EXPORT void SECT_fn_vSetSectorPriority(SECT_tdxHandleOfSectorObject hSector, char cPriority);
|
|
|
|
extern CPA_EXPORT char SECT_fn_cGetSectorPriority(SECT_tdxHandleOfSectorObject hSector);
|
|
|
|
|
|
extern CPA_EXPORT void SECT_fn_vSetCharacterPointerInCharacterList(
|
|
SECT_tdxHandleOfElementLstCharacter hCharacterElement,
|
|
HIE_tdxHandleToSuperObject hSuperObject);
|
|
|
|
extern CPA_EXPORT void SECT_fn_vSetSectorPointedElementLSTCollisionInt(
|
|
SECT_tdxHandleOfElementLstCollisionInteraction hColElement,
|
|
HIE_tdxHandleToSuperObject hSectorSuperObject);
|
|
|
|
extern CPA_EXPORT void SECT_fn_vSetSectorPointedElementLSTActivityInt(
|
|
SECT_tdxHandleOfElementLstActivityInteraction hActElement,
|
|
HIE_tdxHandleToSuperObject hSectorSuperObject);
|
|
|
|
extern CPA_EXPORT void SECT_fn_vSetSectorPointedElementLSTGraphicInt(
|
|
SECT_tdxHandleOfElementLstGraphicInteraction hGElement,
|
|
HIE_tdxHandleToSuperObject hSectorSuperObject);
|
|
|
|
extern CPA_EXPORT void SECT_fn_vSetLevelElementLSTGraphicInt(SECT_tdxHandleOfElementLstGraphicInteraction hGElement,
|
|
short wLevelOfDetail);
|
|
|
|
|
|
/* Begin Shaitan ModeLook*/
|
|
extern CPA_EXPORT void SECT_fn_vSetModeElementLSTGraphicInt(SECT_tdxHandleOfElementLstGraphicInteraction hGElement,
|
|
char cDisplayMode);
|
|
/* End Shaitan ModeLook*/
|
|
|
|
extern CPA_EXPORT void SECT_fn_vSetSectorPointedElementLSTSoundInt(
|
|
SECT_tdxHandleOfElementLstSoundInteraction hSndElement,
|
|
HIE_tdxHandleToSuperObject hSectorSuperObject);
|
|
|
|
extern CPA_EXPORT void SCT_fn_vSetVolumeLSTSoundInt(SECT_tdxHandleOfElementLstSoundInteraction hSndElement,long lVolume);
|
|
|
|
extern CPA_EXPORT void SCT_fn_vSetSectorPointedElementLSTSoundEvent(
|
|
SCT_tdxHandleOfLstSoundEvent hSndEventElement,
|
|
HIE_tdxHandleToSuperObject hSectorSuperObject);
|
|
|
|
extern CPA_EXPORT void SCT_fn_vSetEventListElementLSTSoundEvent(SCT_tdxHandleOfLstSoundEvent hSndEventElement,SND_tdxHandleToSoundEvent hSoundEvent);
|
|
|
|
|
|
extern CPA_EXPORT void SECT_fn_vSetHandleOfLightsInDNMLightsList(
|
|
SECT_tdxHandleOfElementLstDNMLights hDNMLightsElement,
|
|
GLI_tdxHandleToLight hDNMLights
|
|
);
|
|
|
|
extern CPA_EXPORT void SECT_fn_vSetHandleOfLightsInStaticLightsList(
|
|
SECT_tdxHandleOfElementLstStaticLights hStaticLightsElement,
|
|
GLI_tdxHandleToLight hStaticLights
|
|
);
|
|
|
|
#if (defined(_DEBUG) || defined(USE_PROFILER))
|
|
extern CPA_EXPORT char * fn_szGetSectorName(
|
|
HIE_tdxHandleToSuperObject _hSector);
|
|
#endif /* _DEBUG || USE_PROFILER */
|
|
|
|
extern CPA_EXPORT char fn_cGetSectorCameraType(HIE_tdxHandleToSuperObject _hSector);
|
|
extern CPA_EXPORT void fn_vSetSectorCameraType(HIE_tdxHandleToSuperObject _hSector, char cType);
|
|
|
|
/*
|
|
* Access function for ZFar
|
|
*/
|
|
extern CPA_EXPORT MTH_tdxReal fn_xGetSectorZFar(HIE_tdxHandleToSuperObject _hSprObjSector);
|
|
extern CPA_EXPORT void fn_vSetSectorZFar(HIE_tdxHandleToSuperObject _hSprObjSector, MTH_tdxReal _xZFar);
|
|
|
|
|
|
extern CPA_EXPORT void SCT_fn_vClearCharacterSectorLink(SECT_tdxHandleOfElementLstCharacter hLstChar);
|
|
extern CPA_EXPORT void SCT_fn_vClearLightSectorLink(SECT_tdxHandleOfElementLstDNMLights hLstLight);
|
|
|
|
|
|
#ifdef __cplusplus
|
|
};
|
|
#endif /* __cplusplus */
|
|
|
|
/*AR 9808 Function for the "static list" macros*/
|
|
/*static __inline SECT_tdxHandleOfElementLstStaticLights SECT_fn_hGetFirstStaticLightsListInSector(HIE_tdxHandleToSuperObject _hSector)
|
|
{
|
|
return(LST2_M_StaticGetFirstElement( &((SECT_tdxHandleOfSectorObject)HIE_fn_hGetSuperObjectObject(_hSector))->stListOfStaticLights));
|
|
}
|
|
|
|
static __inline SECT_tdxHandleOfElementLstCollisionInteraction SECT_fn_hGetFirstCollisionNodeInCollisionList(HIE_tdxHandleToSuperObject _hSector)
|
|
{
|
|
return(LST2_M_StaticGetFirstElement( &((SECT_tdxHandleOfSectorObject)HIE_fn_hGetSuperObjectObject(_hSector))->stListOfSectorsInCollisionInteraction));
|
|
}
|
|
|
|
static __inline SECT_tdxHandleOfElementLstActivityInteraction SECT_fn_hGetFirstActivityNodeInActivityList(HIE_tdxHandleToSuperObject _hSector)
|
|
{
|
|
return(LST2_M_StaticGetFirstElement( &((SECT_tdxHandleOfSectorObject)HIE_fn_hGetSuperObjectObject(_hSector))->stListOfSectorsInActivityInteraction));
|
|
}
|
|
|
|
static __inline SECT_tdxHandleOfElementLstGraphicInteraction SECT_fn_hGetFirstGraphicNodeInGraphicList(HIE_tdxHandleToSuperObject _hSector)
|
|
{
|
|
return(LST2_M_StaticGetFirstElement( &((SECT_tdxHandleOfSectorObject)HIE_fn_hGetSuperObjectObject(_hSector))->stListOfSectorsInGraphicInteraction));
|
|
}
|
|
|
|
static __inline SECT_tdxHandleOfElementLstSoundInteraction SECT_fn_hGetFirstSoundNodeInSoundList(HIE_tdxHandleToSuperObject _hSector)
|
|
{
|
|
return(LST2_M_StaticGetFirstElement( &((SECT_tdxHandleOfSectorObject)HIE_fn_hGetSuperObjectObject(_hSector))->stListOfSectorsInSoundInteraction));
|
|
}
|
|
|
|
static __inline SCT_tdxHandleOfLstSoundEvent SCT_fn_hGetFirstSoundEventNodeInSoundEventList(HIE_tdxHandleToSuperObject _hSector)
|
|
{
|
|
return(LST2_M_StaticGetFirstElement( &((SECT_tdxHandleOfSectorObject)HIE_fn_hGetSuperObjectObject(_hSector))->stListOfSoundEvent));
|
|
}
|
|
|
|
static __inline SECT_tdxHandleOfElementLstStaticLights SECT_fn_hGetNextStaticLightsListInSector(SECT_tdxHandleOfElementLstStaticLights _hStaticLightsList)
|
|
{
|
|
return(LST2_M_StaticGetNextElement( _hStaticLightsList));
|
|
}
|
|
|
|
static __inline SECT_tdxHandleOfElementLstCollisionInteraction SECT_fn_hGetNextCollisionNodeInCollisionList(SECT_tdxHandleOfElementLstCollisionInteraction _hCollNode)
|
|
{
|
|
return(LST2_M_StaticGetNextElement( _hCollNode));
|
|
}
|
|
|
|
static __inline SECT_tdxHandleOfElementLstActivityInteraction SECT_fn_hGetNextActivityNodeInActivityList(SECT_tdxHandleOfElementLstActivityInteraction _hActNode)
|
|
{
|
|
return(LST2_M_StaticGetNextElement( _hActNode));
|
|
}
|
|
|
|
static __inline SECT_tdxHandleOfElementLstGraphicInteraction SECT_fn_hGetNextGraphicNodeInGraphicList(SECT_tdxHandleOfElementLstGraphicInteraction _GraphicNode)
|
|
{
|
|
return(LST2_M_StaticGetNextElement( _GraphicNode));
|
|
}
|
|
|
|
static __inline SECT_tdxHandleOfElementLstSoundInteraction SECT_fn_hGetNextSoundNodeInSoundList(SECT_tdxHandleOfElementLstSoundInteraction _hSoundNode)
|
|
{
|
|
return(LST2_M_StaticGetNextElement( _hSoundNode));
|
|
}
|
|
|
|
static __inline SCT_tdxHandleOfLstSoundEvent SCT_fn_hGetNextSoundEventNodeInSoundEventList(SCT_tdxHandleOfLstSoundEvent _hSoundEventNode)
|
|
{
|
|
return(LST2_M_StaticGetNextElement( _hSoundEventNode));
|
|
}
|
|
*/
|
|
#ifndef CODEWARRIOR
|
|
static
|
|
#endif
|
|
__inline int SECT_fn_iGetNumberOfNodesInStaticLightsList(HIE_tdxHandleToSuperObject hSector)
|
|
{
|
|
return LST2_M_StaticGetNumberOfElements(&((SECT_tdxHandleOfSectorObject)HIE_fn_hGetSuperObjectObject(hSector))->stListOfStaticLights);
|
|
}
|
|
|
|
#ifndef CODEWARRIOR
|
|
static
|
|
#endif
|
|
__inline int SECT_fn_iGetNumberOfNodesInCollisionList(HIE_tdxHandleToSuperObject hSector)
|
|
{
|
|
return LST2_M_StaticGetNumberOfElements(&((SECT_tdxHandleOfSectorObject)HIE_fn_hGetSuperObjectObject(hSector))->stListOfSectorsInCollisionInteraction);
|
|
}
|
|
|
|
#ifndef CODEWARRIOR
|
|
static
|
|
#endif
|
|
__inline int SECT_fn_iGetNumberOfNodesInActivityInteractionList(HIE_tdxHandleToSuperObject hSector)
|
|
{
|
|
return LST2_M_StaticGetNumberOfElements(&((SECT_tdxHandleOfSectorObject)HIE_fn_hGetSuperObjectObject(hSector))->stListOfSectorsInActivityInteraction);
|
|
}
|
|
|
|
#ifndef CODEWARRIOR
|
|
static
|
|
#endif
|
|
__inline int SECT_fn_iGetNumberOfNodesInGraphicInteractionList(HIE_tdxHandleToSuperObject hSector)
|
|
{
|
|
return LST2_M_StaticGetNumberOfElements(&((SECT_tdxHandleOfSectorObject)HIE_fn_hGetSuperObjectObject(hSector))->stListOfSectorsInGraphicInteraction);
|
|
}
|
|
|
|
#ifndef CODEWARRIOR
|
|
static
|
|
#endif
|
|
__inline int SECT_fn_iGetNumberOfNodesInSoundInteractionList(HIE_tdxHandleToSuperObject hSector)
|
|
{
|
|
return LST2_M_StaticGetNumberOfElements(&((SECT_tdxHandleOfSectorObject)HIE_fn_hGetSuperObjectObject(hSector))->stListOfSectorsInSoundInteraction);
|
|
}
|
|
|
|
#ifndef CODEWARRIOR
|
|
static
|
|
#endif
|
|
__inline int SECT_fn_iGetNumberOfNodesInSoundEventList(HIE_tdxHandleToSuperObject hSector)
|
|
{
|
|
return LST2_M_StaticGetNumberOfElements(&((SECT_tdxHandleOfSectorObject)HIE_fn_hGetSuperObjectObject(hSector))->stListOfSoundEvent);
|
|
}
|
|
/* end AR 9808 Function for the "static list" macros*/
|
|
|
|
#define SECT_M_ForEachCharListInSector(_hSector,_hCharList,_i) \
|
|
for \
|
|
( \
|
|
_i=0,(_hCharList)=SECT_fn_hGetFirstCharListInSector(_hSector); \
|
|
_hCharList; \
|
|
_i++,_hCharList=SECT_fn_hGetNextCharListInSector(_hCharList) \
|
|
)
|
|
|
|
#define SECT_M_ForEachXMovingCharListInSector(_hSector,_hCharList,_hNextCharList,_i) \
|
|
for \
|
|
( \
|
|
_i=SECT_fn_lGetNbCharListInSector(_hSector),(_hCharList)=SECT_fn_hGetFirstCharListInSector(_hSector),\
|
|
(_hNextCharList)=(_hCharList)?SECT_fn_hGetNextCharListInSector(_hCharList):NULL; \
|
|
_hCharList&&_i; \
|
|
_i--,_hCharList=_hNextCharList,_hNextCharList?_hNextCharList=SECT_fn_hGetNextCharListInSector(_hNextCharList):NULL \
|
|
)
|
|
|
|
#define SECT_M_ForEachCollisionNodeInCollisionInteractionList(_hSector,_hCollList,_i) \
|
|
for \
|
|
( \
|
|
_i=SECT_fn_iGetNumberOfNodesInCollisionList(_hSector), \
|
|
(_hCollList)=SECT_fn_hGetFirstCollisionNodeInCollisionList(_hSector); \
|
|
_i>0;/*_hCollList;*/ \
|
|
_i--,(_hCollList)=SECT_fn_hGetNextCollisionNodeInCollisionList(_hCollList) \
|
|
)
|
|
|
|
#define SECT_M_ForEachActivityNodeInActivityInteractionList(_hSector,_hActList,_i) \
|
|
for \
|
|
( \
|
|
_i=SECT_fn_iGetNumberOfNodesInActivityInteractionList(_hSector), \
|
|
(_hActList)=SECT_fn_hGetFirstActivityNodeInActivityList(_hSector); \
|
|
_i>0;/*_hActList;*/ \
|
|
_i--,(_hActList)=SECT_fn_hGetNextActivityNodeInActivityList(_hActList) \
|
|
)
|
|
|
|
#define SECT_M_ForEachGraphicNodeInGraphicInteractionList(_hSector,_hGraList,_i) \
|
|
for \
|
|
( \
|
|
_i=SECT_fn_iGetNumberOfNodesInGraphicInteractionList(_hSector), \
|
|
(_hGraList)=SECT_fn_hGetFirstGraphicNodeInGraphicList(_hSector); \
|
|
_i>0;/*_hGraList;*/ \
|
|
_i--,(_hGraList)=SECT_fn_hGetNextGraphicNodeInGraphicList(_hGraList) \
|
|
)
|
|
|
|
#define SECT_M_ForEachSoundNodeInSoundInteractionList(_hSector,_hSoundList,_i) \
|
|
for \
|
|
( \
|
|
_i=SECT_fn_iGetNumberOfNodesInSoundInteractionList(_hSector), \
|
|
(_hSoundList)=SECT_fn_hGetFirstSoundNodeInSoundList(_hSector); \
|
|
_i>0;/*_hSoundList;*/ \
|
|
_i--,(_hSoundList)=SECT_fn_hGetNextSoundNodeInSoundList(_hSoundList) \
|
|
)
|
|
|
|
#define SCT_M_ForEachSoundEventNodeInSoundEventList(_hSector,_hSoundEventList,_i) \
|
|
for \
|
|
( \
|
|
_i=SECT_fn_iGetNumberOfNodesInSoundEventList(_hSector), \
|
|
(_hSoundEventList)=SCT_fn_hGetFirstSoundEventNodeInSoundEventList(_hSector); \
|
|
_i>0;/*_hSoundEventList;*/ \
|
|
_i--,(_hSoundEventList)=SCT_fn_hGetNextSoundEventNodeInSoundEventList(_hSoundEventList) \
|
|
)
|
|
|
|
#define SECT_M_ForEachDNMLightsListInSector(_hSector,_hDNMLightsList,_i) \
|
|
for \
|
|
( \
|
|
_i=0,(_hDNMLightsList)=SECT_fn_hGetFirstDNMLightsListInSector(_hSector); \
|
|
_hDNMLightsList; \
|
|
_i++,_hDNMLightsList=SECT_fn_hGetNextDNMLightsListInSector(_hDNMLightsList) \
|
|
)
|
|
|
|
#define SECT_M_ForEachStaticLightsListInSector(_hSector,_hStaticLightsList,_i) \
|
|
for \
|
|
( \
|
|
_i=SECT_fn_iGetNumberOfNodesInStaticLightsList(_hSector), \
|
|
(_hStaticLightsList)=SECT_fn_hGetFirstStaticLightsListInSector(_hSector); \
|
|
_i>0;/*_hStaticLightsList;*/ \
|
|
_i--,_hStaticLightsList=SECT_fn_hGetNextStaticLightsListInSector(_hStaticLightsList) \
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
#endif /*__SECTOREXT*/
|