orx 1.16
Portable Game Engine
|
Data Structures | |
struct | orxSTRUCTURE |
Macros | |
#define | orxANIM(STRUCTURE) |
#define | orxANIMPOINTER(STRUCTURE) |
#define | orxANIMSET(STRUCTURE) |
#define | orxBODY(STRUCTURE) |
#define | orxCAMERA(STRUCTURE) |
#define | orxCLOCK(STRUCTURE) |
#define | orxFONT(STRUCTURE) |
#define | orxFRAME(STRUCTURE) |
#define | orxFX(STRUCTURE) |
#define | orxFXPOINTER(STRUCTURE) |
#define | orxGRAPHIC(STRUCTURE) |
#define | orxOBJECT(STRUCTURE) |
#define | orxSHADER(STRUCTURE) |
#define | orxSOUND(STRUCTURE) |
#define | orxSOUNDPOINTER(STRUCTURE) |
#define | orxSPAWNER(STRUCTURE) |
#define | orxSTRUCTURE(STRUCTURE) |
#define | orxSTRUCTURE_ASSERT(STRUCTURE) |
#define | orxSTRUCTURE_GET_POINTER(STRUCTURE, TYPE) |
#define | orxSTRUCTURE_GUID_MAGIC_TAG_DELETED 0xDEFACED0DEADC0DEULL |
#define | orxSTRUCTURE_GUID_MASK_INSTANCE_ID 0xFFFFFFFF00000000ULL |
#define | orxSTRUCTURE_GUID_MASK_ITEM_ID 0x00000000FFFFFF00ULL |
#define | orxSTRUCTURE_GUID_MASK_STRUCTURE_ID 0x00000000000000FFULL |
#define | orxSTRUCTURE_GUID_SHIFT_INSTANCE_ID 32 |
#define | orxSTRUCTURE_GUID_SHIFT_ITEM_ID 8 |
#define | orxSTRUCTURE_GUID_SHIFT_STRUCTURE_ID 0 |
#define | orxSTRUCTURE_REGISTER(TYPE, STORAGE_TYPE, MEMORY_TYPE, BANK_SIZE, UPDATE_FUNCTION) |
#define | orxTEXT(STRUCTURE) |
#define | orxTEXTURE(STRUCTURE) |
#define | orxTIMELINE(STRUCTURE) |
#define | orxTRIGGER(STRUCTURE) |
#define | orxVIEWPORT(STRUCTURE) |
Typedefs | |
typedef orxSTATUS(orxFASTCALL * | orxSTRUCTURE_UPDATE_FUNCTION) (orxSTRUCTURE *_pstStructure, const orxSTRUCTURE *_pstCaller, const orxCLOCK_INFO *_pstClockInfo) |
Enumerations | |
enum | orxSTRUCTURE_ID { orxSTRUCTURE_ID_ANIMPOINTER = 0 , orxSTRUCTURE_ID_BODY , orxSTRUCTURE_ID_CLOCK , orxSTRUCTURE_ID_FRAME , orxSTRUCTURE_ID_FXPOINTER , orxSTRUCTURE_ID_GRAPHIC , orxSTRUCTURE_ID_SHADER , orxSTRUCTURE_ID_SOUNDPOINTER , orxSTRUCTURE_ID_SPAWNER , orxSTRUCTURE_ID_TIMELINE , orxSTRUCTURE_ID_TRIGGER , orxSTRUCTURE_ID_LINKABLE_NUMBER , orxSTRUCTURE_ID_ANIM = orxSTRUCTURE_ID_LINKABLE_NUMBER , orxSTRUCTURE_ID_ANIMSET , orxSTRUCTURE_ID_CAMERA , orxSTRUCTURE_ID_FONT , orxSTRUCTURE_ID_FX , orxSTRUCTURE_ID_OBJECT , orxSTRUCTURE_ID_SOUND , orxSTRUCTURE_ID_TEXT , orxSTRUCTURE_ID_TEXTURE , orxSTRUCTURE_ID_VIEWPORT , orxSTRUCTURE_ID_NUMBER , orxSTRUCTURE_ID_NONE = orxENUM_NONE } |
enum | orxSTRUCTURE_STORAGE_TYPE { orxSTRUCTURE_STORAGE_TYPE_LINKLIST = 0 , orxSTRUCTURE_STORAGE_TYPE_TREE , orxSTRUCTURE_STORAGE_TYPE_NUMBER , orxSTRUCTURE_STORAGE_TYPE_NONE = orxENUM_NONE } |
Functions | |
static orxINLINE orxSTRUCTURE * | _orxStructure_GetPointer (const void *_pStructure, orxSTRUCTURE_ID _eStructureID) |
orxDLLAPI orxSTRUCTURE *orxFASTCALL | orxStructure_Create (orxSTRUCTURE_ID _eStructureID) |
static orxINLINE void | orxStructure_DecreaseCount (void *_pStructure) |
orxDLLAPI orxSTATUS orxFASTCALL | orxStructure_Delete (void *_pStructure) |
orxDLLAPI void orxFASTCALL | orxStructure_Exit () |
orxDLLAPI orxSTRUCTURE *orxFASTCALL | orxStructure_Get (orxU64 _u64GUID) |
orxDLLAPI orxSTRUCTURE *orxFASTCALL | orxStructure_GetChild (const void *_pStructure) |
orxDLLAPI orxU32 orxFASTCALL | orxStructure_GetCount (orxSTRUCTURE_ID _eStructureID) |
orxDLLAPI orxSTRUCTURE *orxFASTCALL | orxStructure_GetFirst (orxSTRUCTURE_ID _eStructureID) |
static orxINLINE orxU32 | orxStructure_GetFlags (const void *_pStructure, orxU32 _u32Mask) |
static orxINLINE orxU64 | orxStructure_GetGUID (const void *_pStructure) |
static orxINLINE orxSTRUCTURE_ID | orxStructure_GetID (const void *_pStructure) |
static orxINLINE const orxSTRING | orxStructure_GetIDString (orxSTRUCTURE_ID _eID) |
orxDLLAPI orxSTRUCTURE *orxFASTCALL | orxStructure_GetLast (orxSTRUCTURE_ID _eStructureID) |
orxDLLAPI orxSTRUCTURE *orxFASTCALL | orxStructure_GetNext (const void *_pStructure) |
orxDLLAPI orxSTRUCTURE *orxFASTCALL | orxStructure_GetOwner (const void *_pStructure) |
orxDLLAPI orxSTRUCTURE *orxFASTCALL | orxStructure_GetParent (const void *_pStructure) |
orxDLLAPI orxSTRUCTURE *orxFASTCALL | orxStructure_GetPrevious (const void *_pStructure) |
static orxINLINE orxU32 | orxStructure_GetRefCount (const void *_pStructure) |
orxDLLAPI orxSTRUCTURE *orxFASTCALL | orxStructure_GetSibling (const void *_pStructure) |
orxDLLAPI orxSTRUCTURE_STORAGE_TYPE orxFASTCALL | orxStructure_GetStorageType (orxSTRUCTURE_ID _eStructureID) |
static orxINLINE void | orxStructure_IncreaseCount (void *_pStructure) |
orxDLLAPI orxSTATUS orxFASTCALL | orxStructure_Init () |
orxDLLAPI orxSTATUS orxFASTCALL | orxStructure_LogAll (orxBOOL _bPrivate) |
orxDLLAPI orxSTATUS orxFASTCALL | orxStructure_Register (orxSTRUCTURE_ID _eStructureID, orxSTRUCTURE_STORAGE_TYPE _eStorageType, orxMEMORY_TYPE _eMemoryType, orxU32 _u32Size, orxU32 _u32BankSize, const orxSTRUCTURE_UPDATE_FUNCTION _pfnUpdate) |
static orxINLINE void | orxStructure_SetFlags (void *_pStructure, orxU32 _u32AddFlags, orxU32 _u32RemoveFlags) |
orxDLLAPI orxSTATUS orxFASTCALL | orxStructure_SetOwner (void *_pStructure, void *_pOwner) |
orxDLLAPI orxSTATUS orxFASTCALL | orxStructure_SetParent (void *_pStructure, void *_phParent) |
orxDLLAPI void orxFASTCALL | orxStructure_Setup () |
static orxINLINE orxBOOL | orxStructure_TestAllFlags (const void *_pStructure, orxU32 _u32Flags) |
static orxINLINE orxBOOL | orxStructure_TestFlags (const void *_pStructure, orxU32 _u32Flags) |
orxDLLAPI orxSTATUS orxFASTCALL | orxStructure_Unregister (orxSTRUCTURE_ID _eStructureID) |
orxDLLAPI orxSTATUS orxFASTCALL | orxStructure_Update (void *_pStructure, const void *_phCaller, const orxCLOCK_INFO *_pstClockInfo) |
Structure module Allows to create and handle structures. Structures can be referenced by other structures.
#define orxANIM | ( | STRUCTURE | ) |
Definition at line 61 of file orxStructure.h.
#define orxANIMPOINTER | ( | STRUCTURE | ) |
Definition at line 62 of file orxStructure.h.
#define orxANIMSET | ( | STRUCTURE | ) |
Definition at line 63 of file orxStructure.h.
#define orxBODY | ( | STRUCTURE | ) |
Definition at line 64 of file orxStructure.h.
#define orxCAMERA | ( | STRUCTURE | ) |
Definition at line 65 of file orxStructure.h.
#define orxCLOCK | ( | STRUCTURE | ) |
Definition at line 66 of file orxStructure.h.
#define orxFONT | ( | STRUCTURE | ) |
Definition at line 67 of file orxStructure.h.
#define orxFRAME | ( | STRUCTURE | ) |
Definition at line 68 of file orxStructure.h.
#define orxFX | ( | STRUCTURE | ) |
Definition at line 69 of file orxStructure.h.
#define orxFXPOINTER | ( | STRUCTURE | ) |
Definition at line 70 of file orxStructure.h.
#define orxGRAPHIC | ( | STRUCTURE | ) |
Definition at line 71 of file orxStructure.h.
#define orxOBJECT | ( | STRUCTURE | ) |
Definition at line 72 of file orxStructure.h.
#define orxSHADER | ( | STRUCTURE | ) |
Definition at line 75 of file orxStructure.h.
#define orxSOUND | ( | STRUCTURE | ) |
Definition at line 73 of file orxStructure.h.
#define orxSOUNDPOINTER | ( | STRUCTURE | ) |
Definition at line 74 of file orxStructure.h.
#define orxSPAWNER | ( | STRUCTURE | ) |
Definition at line 76 of file orxStructure.h.
#define orxSTRUCTURE | ( | STRUCTURE | ) |
Definition at line 59 of file orxStructure.h.
#define orxSTRUCTURE_ASSERT | ( | STRUCTURE | ) |
Structure assert
Definition at line 90 of file orxStructure.h.
#define orxSTRUCTURE_GET_POINTER | ( | STRUCTURE, | |
TYPE ) |
Structure pointer get helpers
Definition at line 57 of file orxStructure.h.
#define orxSTRUCTURE_GUID_MAGIC_TAG_DELETED 0xDEFACED0DEADC0DEULL |
Structure magic number
Definition at line 95 of file orxStructure.h.
#define orxSTRUCTURE_GUID_MASK_INSTANCE_ID 0xFFFFFFFF00000000ULL |
Definition at line 105 of file orxStructure.h.
#define orxSTRUCTURE_GUID_MASK_ITEM_ID 0x00000000FFFFFF00ULL |
Definition at line 102 of file orxStructure.h.
#define orxSTRUCTURE_GUID_MASK_STRUCTURE_ID 0x00000000000000FFULL |
Structure GUID masks/shifts
Definition at line 99 of file orxStructure.h.
#define orxSTRUCTURE_GUID_SHIFT_INSTANCE_ID 32 |
Definition at line 106 of file orxStructure.h.
#define orxSTRUCTURE_GUID_SHIFT_ITEM_ID 8 |
Definition at line 103 of file orxStructure.h.
#define orxSTRUCTURE_GUID_SHIFT_STRUCTURE_ID 0 |
Definition at line 100 of file orxStructure.h.
#define orxSTRUCTURE_REGISTER | ( | TYPE, | |
STORAGE_TYPE, | |||
MEMORY_TYPE, | |||
BANK_SIZE, | |||
UPDATE_FUNCTION ) |
Structure register macro
Definition at line 85 of file orxStructure.h.
#define orxTEXT | ( | STRUCTURE | ) |
Definition at line 77 of file orxStructure.h.
#define orxTEXTURE | ( | STRUCTURE | ) |
Definition at line 78 of file orxStructure.h.
#define orxTIMELINE | ( | STRUCTURE | ) |
Definition at line 79 of file orxStructure.h.
#define orxTRIGGER | ( | STRUCTURE | ) |
Definition at line 80 of file orxStructure.h.
#define orxVIEWPORT | ( | STRUCTURE | ) |
Definition at line 81 of file orxStructure.h.
typedef orxSTATUS(orxFASTCALL * orxSTRUCTURE_UPDATE_FUNCTION) (orxSTRUCTURE *_pstStructure, const orxSTRUCTURE *_pstCaller, const orxCLOCK_INFO *_pstClockInfo) |
Structure update callback function type
Definition at line 181 of file orxStructure.h.
enum orxSTRUCTURE_ID |
Structure IDs
Definition at line 111 of file orxStructure.h.
Structure storage types
Enumerator | |
---|---|
orxSTRUCTURE_STORAGE_TYPE_LINKLIST | |
orxSTRUCTURE_STORAGE_TYPE_TREE | |
orxSTRUCTURE_STORAGE_TYPE_NUMBER | |
orxSTRUCTURE_STORAGE_TYPE_NONE |
Definition at line 150 of file orxStructure.h.
|
static |
Gets structure pointer / debug mode
[in] | _pStructure | Concerned structure |
[in] | _eStructureID | ID to test the structure against |
Definition at line 189 of file orxStructure.h.
|
extern |
Creates a clean structure for given type
[in] | _eStructureID | Concerned structure ID |
|
static |
Decreases structure reference count
[in] | _pStructure | Concerned structure |
Definition at line 412 of file orxStructure.h.
Deletes a structure (needs to be cleaned beforehand)
[in] | _pStructure | Concerned structure |
|
extern |
Exits from the structure module
|
extern |
*** Structure storage accessors *** Gets structure given its GUID
[in] | _u64GUID | Structure's GUID |
|
extern |
|
extern |
Gets given type structure count
[in] | _eStructureID | Concerned structure ID |
|
extern |
Gets first stored structure (first list cell or tree root depending on storage type)
[in] | _eStructureID | Concerned structure ID |
|
static |
Gets structure flags
[in] | _pStructure | Concerned structure |
[in] | _u32Mask | Mask to use for getting flags |
Definition at line 497 of file orxStructure.h.
|
static |
Gets structure GUID
[in] | _pStructure | Concerned structure |
Definition at line 442 of file orxStructure.h.
|
static |
Gets structure ID
[in] | _pStructure | Concerned structure |
Definition at line 455 of file orxStructure.h.
|
static |
Gets structure ID string
[in] | _eID | Concerned ID |
Definition at line 204 of file orxStructure.h.
|
extern |
Gets last stored structure (last list cell or tree root depending on storage type)
[in] | _eStructureID | Concerned structure ID |
|
extern |
|
extern |
Gets structure's owner
[in] | _pStructure | Concerned structure |
|
extern |
|
extern |
|
static |
Gets structure reference count
[in] | _pStructure | Concerned structure |
Definition at line 429 of file orxStructure.h.
|
extern |
|
extern |
Gets structure storage type
[in] | _eStructureID | Concerned structure ID |
|
static |
*** Inlined structure accessors *** Increases structure reference count
[in] | _pStructure | Concerned structure |
Definition at line 396 of file orxStructure.h.
Initializess the structure module
Logs all user-generated (& optionally private) active structures
[in] | _bPrivate | Include all private structures in the log |
|
extern |
Registers a given ID
[in] | _eStructureID | Concerned structure ID |
[in] | _eStorageType | Storage type to use for this structure type |
[in] | _eMemoryType | Memory type to store this structure type |
[in] | _u32Size | Structure size |
[in] | _u32BankSize | Bank (segment) size |
[in] | _pfnUpdate | Structure update function |
|
static |
Sets structure flags
[in] | _pStructure | Concerned structure |
[in] | _u32AddFlags | Flags to add |
[in] | _u32RemoveFlags | Flags to remove |
Definition at line 511 of file orxStructure.h.
Sets structure owner
[in] | _pStructure | Concerned structure |
[in] | _pOwner | Structure to set as owner |
|
extern |
Sets structure tree parent
[in] | _pStructure | Concerned structure |
[in] | _phParent | Structure to set as parent |
|
extern |
Structure module setup
|
static |
Tests all flags against structure ones
[in] | _pStructure | Concerned structure |
[in] | _u32Flags | Flags to test |
Definition at line 483 of file orxStructure.h.
|
static |
Tests flags against structure ones
[in] | _pStructure | Concerned structure |
[in] | _u32Flags | Flags to test |
Definition at line 469 of file orxStructure.h.
|
extern |
Unregisters a given ID
[in] | _eStructureID | Concerned structure ID |
|
extern |
Updates structure if update function was registered for the structure type
[in] | _pStructure | Concerned structure |
[in] | _phCaller | Caller structure |
[in] | _pstClockInfo | Update associated clock info |