orx  1.14
Portable Game Engine
orxFrame.h
Go to the documentation of this file.
1 /* Orx - Portable Game Engine
2  *
3  * Copyright (c) 2008-2022 Orx-Project
4  *
5  * This software is provided 'as-is', without any express or implied
6  * warranty. In no event will the authors be held liable for any damages
7  * arising from the use of this software.
8  *
9  * Permission is granted to anyone to use this software for any purpose,
10  * including commercial applications, and to alter it and redistribute it
11  * freely, subject to the following restrictions:
12  *
13  * 1. The origin of this software must not be misrepresented; you must not
14  * claim that you wrote the original software. If you use this software
15  * in a product, an acknowledgment in the product documentation would be
16  * appreciated but is not required.
17  *
18  * 2. Altered source versions must be plainly marked as such, and must not be
19  * misrepresented as being the original software.
20  *
21  * 3. This notice may not be removed or altered from any source
22  * distribution.
23  */
24 
51 #ifndef _orxFRAME_H_
52 #define _orxFRAME_H_
53 
54 #include "orxInclude.h"
55 
56 #include "math/orxVector.h"
57 
58 
61 #define orxFRAME_KU32_FLAG_NONE 0x00000000
63 #define orxFRAME_KU32_FLAG_SCROLL_X 0x00000001
64 #define orxFRAME_KU32_FLAG_SCROLL_Y 0x00000002
65 #define orxFRAME_KU32_MASK_SCROLL_BOTH 0x00000003
67 #define orxFRAME_KU32_FLAG_DEPTH_SCALE 0x00000004
69 #define orxFRAME_KU32_FLAG_FLIP_X 0x00000010
70 #define orxFRAME_KU32_FLAG_FLIP_Y 0x00000020
71 #define orxFRAME_KU32_MASK_FLIP_BOTH 0x00000030
73 #define orxFRAME_KU32_FLAG_IGNORE_NONE 0x00000000
74 #define orxFRAME_KU32_FLAG_IGNORE_ROTATION 0x00000100
75 #define orxFRAME_KU32_FLAG_IGNORE_SCALE_X 0x00000200
76 #define orxFRAME_KU32_FLAG_IGNORE_SCALE_Y 0x00000400
77 #define orxFRAME_KU32_FLAG_IGNORE_SCALE_Z 0x00000800
78 #define orxFRAME_KU32_MASK_IGNORE_SCALE 0x00000E00
79 #define orxFRAME_KU32_FLAG_IGNORE_POSITION_ROTATION 0x00001000
80 #define orxFRAME_KU32_FLAG_IGNORE_POSITION_SCALE_X 0x00002000
81 #define orxFRAME_KU32_FLAG_IGNORE_POSITION_SCALE_Y 0x00004000
82 #define orxFRAME_KU32_FLAG_IGNORE_POSITION_SCALE_Z 0x00008000
83 #define orxFRAME_KU32_MASK_IGNORE_POSITION_SCALE 0x0000E000
84 #define orxFRAME_KU32_FLAG_IGNORE_POSITION_POSITION_X 0x00010000
85 #define orxFRAME_KU32_FLAG_IGNORE_POSITION_POSITION_Y 0x00020000
86 #define orxFRAME_KU32_FLAG_IGNORE_POSITION_POSITION_Z 0x00040000
87 #define orxFRAME_KU32_MASK_IGNORE_POSITION_POSITION 0x00070000
88 #define orxFRAME_KU32_MASK_IGNORE_POSITION 0x0007F000
89 #define orxFRAME_KU32_MASK_IGNORE_ALL 0x0007FF00
91 #define orxFRAME_KU32_MASK_USER_ALL 0x0007FFFF
96 typedef enum __orxFRAME_SPACE_t
97 {
100 
102 
103  orxFRAME_SPACE_NONE = orxENUM_NONE
104 
106 
107 
110 typedef struct __orxFRAME_t orxFRAME;
111 
112 
117 extern orxDLLAPI orxU32 orxFASTCALL orxFrame_GetIgnoreFlagValues(const orxSTRING _zFlags);
118 
123 extern orxDLLAPI const orxSTRING orxFASTCALL orxFrame_GetIgnoreFlagNames(orxU32 _u32Flags);
124 
125 
128 extern orxDLLAPI void orxFASTCALL orxFrame_Setup();
129 
133 extern orxDLLAPI orxSTATUS orxFASTCALL orxFrame_Init();
134 
137 extern orxDLLAPI void orxFASTCALL orxFrame_Exit();
138 
139 
144 extern orxDLLAPI orxFRAME *orxFASTCALL orxFrame_Create(orxU32 _u32Flags);
145 
150 extern orxDLLAPI orxSTATUS orxFASTCALL orxFrame_Delete(orxFRAME *_pstFrame);
151 
152 
157 extern orxDLLAPI void orxFASTCALL orxFrame_SetParent(orxFRAME *_pstFrame, orxFRAME * _pstParent);
158 
163 extern orxDLLAPI orxFRAME *orxFASTCALL orxFrame_GetParent(const orxFRAME *_pstFrame);
164 
169 extern orxDLLAPI orxFRAME *orxFASTCALL orxFrame_GetChild(const orxFRAME *_pstFrame);
170 
175 extern orxDLLAPI orxFRAME *orxFASTCALL orxFrame_GetSibling(const orxFRAME *_pstFrame);
176 
181 extern orxDLLAPI orxBOOL orxFASTCALL orxFrame_IsRootChild(const orxFRAME *_pstFrame);
182 
183 
189 extern orxDLLAPI void orxFASTCALL orxFrame_SetPosition(orxFRAME *_pstFrame, orxFRAME_SPACE _eSpace, const orxVECTOR *_pvPos);
190 
196 extern orxDLLAPI void orxFASTCALL orxFrame_SetRotation(orxFRAME *_pstFrame, orxFRAME_SPACE _eSpace, orxFLOAT _fRotation);
197 
203 extern orxDLLAPI void orxFASTCALL orxFrame_SetScale(orxFRAME *_pstFrame, orxFRAME_SPACE _eSpace, const orxVECTOR *_pvScale);
204 
205 
212 extern orxDLLAPI orxVECTOR *orxFASTCALL orxFrame_GetPosition(orxFRAME *_pstFrame, orxFRAME_SPACE _eSpace, orxVECTOR *_pvPos);
213 
219 extern orxDLLAPI orxFLOAT orxFASTCALL orxFrame_GetRotation(orxFRAME *_pstFrame, orxFRAME_SPACE _eSpace);
220 
227 extern orxDLLAPI orxVECTOR *orxFASTCALL orxFrame_GetScale(orxFRAME *_pstFrame, orxFRAME_SPACE _eSpace, orxVECTOR *_pvScale);
228 
229 
236 extern orxDLLAPI orxVECTOR *orxFASTCALL orxFrame_TransformPosition(orxFRAME *_pstFrame, orxFRAME_SPACE _eSpace, orxVECTOR *_pvPos);
237 
244 extern orxDLLAPI orxFLOAT orxFASTCALL orxFrame_TransformRotation(orxFRAME *_pstFrame, orxFRAME_SPACE _eSpace, orxFLOAT _fRotation);
245 
252 extern orxDLLAPI orxVECTOR *orxFASTCALL orxFrame_TransformScale(orxFRAME *_pstFrame, orxFRAME_SPACE _eSpace, orxVECTOR *_pvScale);
253 
254 #endif /* _orxFRAME_H_ */
255 
orxDLLAPI orxSTATUS orxFASTCALL orxFrame_Delete(orxFRAME *_pstFrame)
orxDLLAPI void orxFASTCALL orxFrame_SetPosition(orxFRAME *_pstFrame, orxFRAME_SPACE _eSpace, const orxVECTOR *_pvPos)
orxDLLAPI orxVECTOR *orxFASTCALL orxFrame_TransformPosition(orxFRAME *_pstFrame, orxFRAME_SPACE _eSpace, orxVECTOR *_pvPos)
orxDLLAPI void orxFASTCALL orxFrame_SetParent(orxFRAME *_pstFrame, orxFRAME *_pstParent)
struct __orxFRAME_t orxFRAME
Definition: orxFrame.h:110
orxDLLAPI orxFLOAT orxFASTCALL orxFrame_GetRotation(orxFRAME *_pstFrame, orxFRAME_SPACE _eSpace)
orxDLLAPI orxFLOAT orxFASTCALL orxFrame_TransformRotation(orxFRAME *_pstFrame, orxFRAME_SPACE _eSpace, orxFLOAT _fRotation)
orxDLLAPI orxFRAME *orxFASTCALL orxFrame_GetSibling(const orxFRAME *_pstFrame)
orxDLLAPI void orxFASTCALL orxFrame_Exit()
orxDLLAPI const orxSTRING orxFASTCALL orxFrame_GetIgnoreFlagNames(orxU32 _u32Flags)
orxDLLAPI orxSTATUS orxFASTCALL orxFrame_Init()
orxDLLAPI orxVECTOR *orxFASTCALL orxFrame_TransformScale(orxFRAME *_pstFrame, orxFRAME_SPACE _eSpace, orxVECTOR *_pvScale)
orxDLLAPI orxVECTOR *orxFASTCALL orxFrame_GetPosition(orxFRAME *_pstFrame, orxFRAME_SPACE _eSpace, orxVECTOR *_pvPos)
orxDLLAPI orxFRAME *orxFASTCALL orxFrame_Create(orxU32 _u32Flags)
orxSTATUS
Definition: orxType.h:256
orxDLLAPI void orxFASTCALL orxFrame_SetRotation(orxFRAME *_pstFrame, orxFRAME_SPACE _eSpace, orxFLOAT _fRotation)
orxDLLAPI orxFRAME *orxFASTCALL orxFrame_GetParent(const orxFRAME *_pstFrame)
orxDLLAPI void orxFASTCALL orxFrame_SetScale(orxFRAME *_pstFrame, orxFRAME_SPACE _eSpace, const orxVECTOR *_pvScale)
orxDLLAPI void orxFASTCALL orxFrame_Setup()
#define orxDLLAPI
Definition: orxDecl.h:370
orxDLLAPI orxFRAME *orxFASTCALL orxFrame_GetChild(const orxFRAME *_pstFrame)
orxDLLAPI orxU32 orxFASTCALL orxFrame_GetIgnoreFlagValues(const orxSTRING _zFlags)
orxDLLAPI orxVECTOR *orxFASTCALL orxFrame_GetScale(orxFRAME *_pstFrame, orxFRAME_SPACE _eSpace, orxVECTOR *_pvScale)
orxDLLAPI orxBOOL orxFASTCALL orxFrame_IsRootChild(const orxFRAME *_pstFrame)
orxFRAME_SPACE
Definition: orxFrame.h:96

Generated for orx by doxygen 1.8.11