scg3  0.6
CameraController.h
Go to the documentation of this file.
1 
9 /*
10  * Copyright 2014 Volker Ahlers
11  *
12  * Licensed under the Apache License, Version 2.0 (the "License");
13  * you may not use this file except in compliance with the License.
14  * You may obtain a copy of the License at
15  *
16  * http://www.apache.org/licenses/LICENSE-2.0
17  *
18  * Unless required by applicable law or agreed to in writing, software
19  * distributed under the License is distributed on an "AS IS" BASIS,
20  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21  * See the License for the specific language governing permissions and
22  * limitations under the License.
23  */
24 
25 #ifndef CAMERACONTROLLER_H_
26 #define CAMERACONTROLLER_H_
27 
28 #include "scg_glew.h"
29 #include "Controller.h"
30 #include "scg_internals.h"
31 
32 namespace scg {
33 
34 
44 
45 public:
46 
50  CameraController(CameraSP camera);
51 
55  virtual ~CameraController() = 0;
56 
60  void setCamera(CameraSP camera);
61 
65  void setMoveVelocity(GLfloat moveVelocity);
66 
70  void setRotateVelocity(GLfloat rotateVelocity);
71 
75  void setFlightVelocity(GLfloat flightVelocity);
76 
80  void setFlightVelocityStep(GLfloat flightVelocityStep);
81 
87  virtual void checkInput(ViewState* viewState) = 0;
88 
89 protected:
90 
92  GLfloat moveVelocity_;
93  GLfloat rotateVelocity_;
94  GLfloat flightVelocity_;
96  bool isFlyMode_;
98 };
99 
100 
101 } /* namespace scg */
102 
103 #endif /* CAMERACONTROLLER_H_ */
virtual ~CameraController()=0
Base class for all cameras (composite node, abstract).
Definition: Camera.h:51
void setCamera(CameraSP camera)
void setRotateVelocity(GLfloat rotateVelocity)
virtual void checkInput(ViewState *viewState)=0
void setFlightVelocity(GLfloat flightVelocity)
Base class for all controllers (abstract).
void setMoveVelocity(GLfloat moveVelocity)
Base class for all camera controllers, acting on a Camera node (abstract).
Local header file for GLEW library.
The view state of the application, managed by Viewer and accessible by Controller::checkInput() (or d...
Definition: ViewState.h:39
void setFlightVelocityStep(GLfloat flightVelocityStep)
CameraController(CameraSP camera)
Definition: Animation.h:28
Internal definitions required by most classes.
Base class for all controllers (abstract).
Definition: Controller.h:36