orx  1.14
Portable Game Engine
orxCamera.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 
45 #ifndef _orxCAMERA_H_
46 #define _orxCAMERA_H_
47 
48 
49 #include "orxInclude.h"
50 
51 #include "object/orxFrame.h"
52 #include "object/orxStructure.h"
53 #include "math/orxAABox.h"
54 
55 
58 #define orxCAMERA_KU32_FLAG_NONE 0x00000000
60 #define orxCAMERA_KU32_FLAG_2D 0x00000001
62 #define orxCAMERA_KU32_MASK_USER_ALL 0x000000FF
67 #define orxCAMERA_KU32_GROUP_ID_NUMBER 32
68 
69 
72 typedef struct __orxCAMERA_t orxCAMERA;
73 
74 
77 extern orxDLLAPI void orxFASTCALL orxCamera_Setup();
78 
81 extern orxDLLAPI orxSTATUS orxFASTCALL orxCamera_Init();
82 
85 extern orxDLLAPI void orxFASTCALL orxCamera_Exit();
86 
87 
92 extern orxDLLAPI orxCAMERA *orxFASTCALL orxCamera_Create(orxU32 _u32Flags);
93 
98 extern orxDLLAPI orxCAMERA *orxFASTCALL orxCamera_CreateFromConfig(const orxSTRING _zConfigID);
99 
104 extern orxDLLAPI orxSTATUS orxFASTCALL orxCamera_Delete(orxCAMERA *_pstCamera);
105 
106 
113 extern orxDLLAPI orxSTATUS orxFASTCALL orxCamera_AddGroupID(orxCAMERA *_pstCamera, orxSTRINGID _stGroupID, orxBOOL _bAddFirst);
114 
120 extern orxDLLAPI orxSTATUS orxFASTCALL orxCamera_RemoveGroupID(orxCAMERA *_pstCamera, orxSTRINGID _stGroupID);
121 
126 extern orxDLLAPI orxU32 orxFASTCALL orxCamera_GetGroupIDCount(const orxCAMERA *_pstCamera);
127 
133 extern orxDLLAPI orxSTRINGID orxFASTCALL orxCamera_GetGroupID(const orxCAMERA *_pstCamera, orxU32 _u32Index);
134 
141 extern orxDLLAPI orxSTATUS orxFASTCALL orxCamera_EnableGroupIDSorting(orxCAMERA *_pstCamera, orxU32 _u32Index, orxBOOL _bEnable);
142 
148 extern orxDLLAPI orxBOOL orxFASTCALL orxCamera_IsGroupIDSortingEnabled(const orxCAMERA *_pstCamera, orxU32 _u32Index);
149 
150 
159 extern orxDLLAPI orxSTATUS orxFASTCALL orxCamera_SetFrustum(orxCAMERA *_pstCamera, orxFLOAT _fWidth, orxFLOAT _fHeight, orxFLOAT _fNear, orxFLOAT _fFar);
160 
166 extern orxDLLAPI orxSTATUS orxFASTCALL orxCamera_SetPosition(orxCAMERA *_pstCamera, const orxVECTOR *_pvPosition);
167 
173 extern orxDLLAPI orxSTATUS orxFASTCALL orxCamera_SetRotation(orxCAMERA *_pstCamera, orxFLOAT _fRotation);
174 
180 extern orxDLLAPI orxSTATUS orxFASTCALL orxCamera_SetZoom(orxCAMERA *_pstCamera, orxFLOAT _fZoom);
181 
187 extern orxDLLAPI orxAABOX *orxFASTCALL orxCamera_GetFrustum(const orxCAMERA *_pstCamera, orxAABOX *_pstFrustum);
188 
194 extern orxDLLAPI orxVECTOR *orxFASTCALL orxCamera_GetPosition(const orxCAMERA *_pstCamera, orxVECTOR *_pvPosition);
195 
200 extern orxDLLAPI orxFLOAT orxFASTCALL orxCamera_GetRotation(const orxCAMERA *_pstCamera);
201 
206 extern orxDLLAPI orxFLOAT orxFASTCALL orxCamera_GetZoom(const orxCAMERA *_pstCamera);
207 
212 extern orxDLLAPI const orxSTRING orxFASTCALL orxCamera_GetName(const orxCAMERA *_pstCamera);
213 
218 extern orxDLLAPI orxCAMERA *orxFASTCALL orxCamera_Get(const orxSTRING _zName);
219 
220 
225 extern orxDLLAPI orxFRAME *orxFASTCALL orxCamera_GetFrame(const orxCAMERA *_pstCamera);
226 
227 
233 extern orxDLLAPI orxSTATUS orxFASTCALL orxCamera_SetParent(orxCAMERA *_pstCamera, void *_pParent);
234 
239 extern orxDLLAPI orxSTRUCTURE *orxFASTCALL orxCamera_GetParent(const orxCAMERA *_pstCamera);
240 
241 #endif /* _orxCAMERA_H_ */
242 
orxDLLAPI orxSTATUS orxFASTCALL orxCamera_Delete(orxCAMERA *_pstCamera)
orxDLLAPI orxSTATUS orxFASTCALL orxCamera_SetZoom(orxCAMERA *_pstCamera, orxFLOAT _fZoom)
orxDLLAPI orxSTATUS orxFASTCALL orxCamera_RemoveGroupID(orxCAMERA *_pstCamera, orxSTRINGID _stGroupID)
orxDLLAPI void orxFASTCALL orxCamera_Exit()
orxDLLAPI orxCAMERA *orxFASTCALL orxCamera_CreateFromConfig(const orxSTRING _zConfigID)
orxDLLAPI orxSTATUS orxFASTCALL orxCamera_SetFrustum(orxCAMERA *_pstCamera, orxFLOAT _fWidth, orxFLOAT _fHeight, orxFLOAT _fNear, orxFLOAT _fFar)
orxDLLAPI orxFLOAT orxFASTCALL orxCamera_GetZoom(const orxCAMERA *_pstCamera)
orxDLLAPI orxAABOX *orxFASTCALL orxCamera_GetFrustum(const orxCAMERA *_pstCamera, orxAABOX *_pstFrustum)
struct __orxFRAME_t orxFRAME
Definition: orxFrame.h:110
orxDLLAPI orxSTATUS orxFASTCALL orxCamera_EnableGroupIDSorting(orxCAMERA *_pstCamera, orxU32 _u32Index, orxBOOL _bEnable)
struct __orxCAMERA_t orxCAMERA
Definition: orxCamera.h:72
orxDLLAPI orxFRAME *orxFASTCALL orxCamera_GetFrame(const orxCAMERA *_pstCamera)
orxDLLAPI void orxFASTCALL orxCamera_Setup()
orxDLLAPI orxSTRUCTURE *orxFASTCALL orxCamera_GetParent(const orxCAMERA *_pstCamera)
orxDLLAPI orxBOOL orxFASTCALL orxCamera_IsGroupIDSortingEnabled(const orxCAMERA *_pstCamera, orxU32 _u32Index)
orxDLLAPI orxVECTOR *orxFASTCALL orxCamera_GetPosition(const orxCAMERA *_pstCamera, orxVECTOR *_pvPosition)
orxSTATUS
Definition: orxType.h:256
orxDLLAPI const orxSTRING orxFASTCALL orxCamera_GetName(const orxCAMERA *_pstCamera)
orxDLLAPI orxCAMERA *orxFASTCALL orxCamera_Create(orxU32 _u32Flags)
orxDLLAPI orxSTATUS orxFASTCALL orxCamera_SetRotation(orxCAMERA *_pstCamera, orxFLOAT _fRotation)
orxDLLAPI orxSTATUS orxFASTCALL orxCamera_AddGroupID(orxCAMERA *_pstCamera, orxSTRINGID _stGroupID, orxBOOL _bAddFirst)
orxDLLAPI orxSTRINGID orxFASTCALL orxCamera_GetGroupID(const orxCAMERA *_pstCamera, orxU32 _u32Index)
#define orxDLLAPI
Definition: orxDecl.h:370
orxDLLAPI orxSTATUS orxFASTCALL orxCamera_Init()
orxDLLAPI orxU32 orxFASTCALL orxCamera_GetGroupIDCount(const orxCAMERA *_pstCamera)
orxDLLAPI orxFLOAT orxFASTCALL orxCamera_GetRotation(const orxCAMERA *_pstCamera)
orxDLLAPI orxCAMERA *orxFASTCALL orxCamera_Get(const orxSTRING _zName)
orxDLLAPI orxSTATUS orxFASTCALL orxCamera_SetParent(orxCAMERA *_pstCamera, void *_pParent)
orxDLLAPI orxSTATUS orxFASTCALL orxCamera_SetPosition(orxCAMERA *_pstCamera, const orxVECTOR *_pvPosition)

Generated for orx by doxygen 1.8.11