summaryrefslogtreecommitdiff
path: root/indra/newview/llviewercamera.h
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llviewercamera.h')
-rw-r--r--indra/newview/llviewercamera.h22
1 files changed, 21 insertions, 1 deletions
diff --git a/indra/newview/llviewercamera.h b/indra/newview/llviewercamera.h
index 6a0c42beec..90b77f771f 100644
--- a/indra/newview/llviewercamera.h
+++ b/indra/newview/llviewercamera.h
@@ -34,8 +34,9 @@
#define LL_LLVIEWERCAMERA_H
#include "llcamera.h"
-#include "lltimer.h"
+#include "llsingleton.h"
#include "llstat.h"
+#include "lltimer.h"
#include "m4math.h"
class LLCoordGL;
@@ -54,6 +55,24 @@ const BOOL NOT_FOR_SELECTION = FALSE;
class LLViewerCamera : public LLCamera, public LLSingleton<LLViewerCamera>
{
public:
+
+ typedef enum
+ {
+ CAMERA_WORLD = 0,
+ CAMERA_SHADOW0,
+ CAMERA_SHADOW1,
+ CAMERA_SHADOW2,
+ CAMERA_SHADOW3,
+ CAMERA_SHADOW4,
+ CAMERA_SHADOW5,
+ CAMERA_WATER0,
+ CAMERA_WATER1,
+ CAMERA_GI_SOURCE,
+ NUM_CAMERAS
+ } eCameraID;
+
+ static U32 sCurCameraID;
+
LLViewerCamera();
void updateCameraLocation(const LLVector3 &center,
@@ -61,6 +80,7 @@ public:
const LLVector3 &point_of_interest);
static void updateFrustumPlanes(LLCamera& camera, BOOL ortho = FALSE, BOOL zflip = FALSE, BOOL no_hacks = FALSE);
+ static void updateCameraAngle(void* user_data, const LLSD& value);
void setPerspective(BOOL for_selection, S32 x, S32 y_from_bot, S32 width, S32 height, BOOL limit_select_distance, F32 z_near = 0, F32 z_far = 0);
const LLMatrix4 &getProjection() const;