Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00048 #ifndef _orxANIMSET_H_
00049 #define _orxANIMSET_H_
00050
00051
00052 #include "orxInclude.h"
00053
00054 #include "anim/orxAnim.h"
00055
00056
00059 #define orxANIMSET_KU32_FLAG_NONE 0x00000000
00061 #define orxANIMSET_KU32_FLAG_REFERENCE_LOCK 0x00010000
00062 #define orxANIMSET_KU32_FLAG_LINK_STATIC 0x00020000
00066 #define orxANIMSET_KU32_LINK_FLAG_NONE 0x00000000
00068 #define orxANIMSET_KU32_LINK_FLAG_LOOP_COUNTER 0x10000000
00069 #define orxANIMSET_KU32_LINK_FLAG_PRIORITY 0x20000000
00070 #define orxANIMSET_KU32_LINK_FLAG_IMMEDIATE_CUT 0x40000000
00071 #define orxANIMSET_KU32_LINK_FLAG_CLEAR_TARGET 0x80000000
00075 #define orxANIMSET_KU32_MAX_ANIM_NUMBER 128
00080 typedef struct __orxANIMSET_t orxANIMSET;
00081
00084 typedef struct __orxANIMSET_LINK_TABLE_t orxANIMSET_LINK_TABLE;
00085
00086
00089 extern orxDLLAPI void orxFASTCALL orxAnimSet_Setup();
00090
00094 extern orxDLLAPI orxSTATUS orxFASTCALL orxAnimSet_Init();
00095
00098 extern orxDLLAPI void orxFASTCALL orxAnimSet_Exit();
00099
00100
00105 extern orxDLLAPI orxANIMSET *orxFASTCALL orxAnimSet_Create(orxU32 _u32Size);
00106
00111 extern orxDLLAPI orxANIMSET *orxFASTCALL orxAnimSet_CreateFromConfig(const orxSTRING _zConfigID);
00112
00116 extern orxDLLAPI orxSTATUS orxFASTCALL orxAnimSet_Delete(orxANIMSET *_pstAnimSet);
00117
00121 extern orxDLLAPI void orxFASTCALL orxAnimSet_AddReference(orxANIMSET *_pstAnimSet);
00122
00126 extern orxDLLAPI void orxFASTCALL orxAnimSet_RemoveReference(orxANIMSET *_pstAnimSet);
00127
00132 extern orxDLLAPI orxANIMSET_LINK_TABLE *orxFASTCALL orxAnimSet_CloneLinkTable(const orxANIMSET *_pstAnimSet);
00133
00137 extern orxDLLAPI void orxFASTCALL orxAnimSet_DeleteLinkTable(orxANIMSET_LINK_TABLE *_pstLinkTable);
00138
00139
00145 extern orxDLLAPI orxHANDLE orxFASTCALL orxAnimSet_AddAnim(orxANIMSET *_pstAnimSet, orxANIM *_pstAnim);
00146
00152 extern orxDLLAPI orxSTATUS orxFASTCALL orxAnimSet_RemoveAnim(orxANIMSET *_pstAnimSet, orxHANDLE _hAnimHandle);
00153
00158 extern orxDLLAPI orxSTATUS orxFASTCALL orxAnimSet_RemoveAllAnims(orxANIMSET *_pstAnimSet);
00159
00160
00167 extern orxDLLAPI orxHANDLE orxFASTCALL orxAnimSet_AddLink(orxANIMSET *_pstAnimSet, orxHANDLE _hSrcAnim, orxHANDLE _hDstAnim);
00168
00174 extern orxDLLAPI orxSTATUS orxFASTCALL orxAnimSet_RemoveLink(orxANIMSET *_pstAnimSet, orxHANDLE _hLinkHandle);
00175
00182 extern orxDLLAPI orxHANDLE orxFASTCALL orxAnimSet_GetLink(const orxANIMSET *_pstAnimSet, orxHANDLE _hSrcAnim, orxHANDLE _hDstAnim);
00183
00191 extern orxDLLAPI orxSTATUS orxFASTCALL orxAnimSet_SetLinkProperty(orxANIMSET *_pstAnimSet, orxHANDLE _hLinkHandle, orxU32 _u32Property, orxU32 _u32Value);
00192
00199 extern orxDLLAPI orxU32 orxFASTCALL orxAnimSet_GetLinkProperty(const orxANIMSET *_pstAnimSet, orxHANDLE _hLinkHandle, orxU32 _u32Property);
00200
00211 extern orxDLLAPI orxHANDLE orxFASTCALL orxAnimSet_ComputeAnim(orxANIMSET *_pstAnimSet, orxHANDLE _hSrcAnim, orxHANDLE _hDstAnim, orxFLOAT *_pfTime, orxANIMSET_LINK_TABLE *_pstLinkTable, orxBOOL *_pbCut, orxBOOL *_pbClearTarget);
00212
00218 extern orxDLLAPI orxANIM *orxFASTCALL orxAnimSet_GetAnim(const orxANIMSET *_pstAnimSet, orxHANDLE _hAnimHandle);
00219
00224 extern orxDLLAPI orxU32 orxFASTCALL orxAnimSet_GetAnimStorageSize(const orxANIMSET *_pstAnimSet);
00225
00230 extern orxDLLAPI orxU32 orxFASTCALL orxAnimSet_GetAnimCounter(const orxANIMSET *_pstAnimSet);
00231
00237 extern orxDLLAPI orxHANDLE orxFASTCALL orxAnimSet_GetAnimHandleFromID(const orxANIMSET *_pstAnimSet, orxU32 _u32AnimID);
00238
00239 #endif
00240