Changeset 1494 for code/branches/network/src/orxonox/objects/Camera.h
- Timestamp:
- May 31, 2008, 11:24:44 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
code/branches/network/src/orxonox/objects/Camera.h
- Property svn:eol-style set to native
r1406 r1494 1 /* 2 * ORXONOX - the hottest 3D action shooter ever to exist 3 * > www.orxonox.net < 4 * 5 * 6 * License notice: 7 * 8 * This program is free software; you can redistribute it and/or 9 * modify it under the terms of the GNU General Public License 10 * as published by the Free Software Foundation; either version 2 11 * of the License, or (at your option) any later version. 12 * 13 * This program is distributed in the hope that it will be useful, 14 * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 * GNU General Public License for more details. 17 * 18 * You should have received a copy of the GNU General Public License 19 * along with this program; if not, write to the Free Software 20 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 21 * 22 * Author: 23 * Fabian 'x3n' Landau 24 * Co-authors: 25 * Benjamin Knecht 26 * 27 */ 28 29 #ifndef _Camera_H__ 30 #define _Camera_H__ 31 32 #include <OgrePrerequisites.h> 33 #include <OgreSceneNode.h> 34 #include <OgreCamera.h> 35 36 #include "OrxonoxPrereqs.h" 37 38 namespace orxonox 39 { 40 class _OrxonoxExport Camera 41 { 42 friend class CameraHandler; 43 public: 44 Camera(Ogre::SceneNode* node = NULL); 45 virtual ~Camera(); 46 47 void setPositionNode(Ogre::SceneNode* node); 48 inline Ogre::SceneNode* getCameraNode() { return this->positionNode_; } 49 // maybe also BaseObject 50 void setTargetNode(Ogre::SceneNode* obj); 51 1 /* * ORXONOX - the hottest 3D action shooter ever to exist * > www.orxonox.net < * * * License notice: * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version 2 * of the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * Author: * Fabian 'x3n' Landau * Co-authors: * Benjamin Knecht * */#ifndef _Camera_H__#define _Camera_H__#include <OgrePrerequisites.h>#include <OgreSceneNode.h>#include <OgreCamera.h>#include "OrxonoxPrereqs.h"namespace orxonox{ class _OrxonoxExport Camera { friend class CameraHandler; public: Camera(Ogre::SceneNode* node = NULL); virtual ~Camera(); void setPositionNode(Ogre::SceneNode* node); inline Ogre::SceneNode* getCameraNode() { return this->positionNode_; } // maybe also BaseObject void setTargetNode(Ogre::SceneNode* obj); 52 2 Ogre::Camera* cam_; 53 54 void tick(float dt); 55 void update(); 56 inline bool hasFocus() { return this->bHasFocus_; } 57 58 private: 59 void removeFocus(); 60 void setFocus(Ogre::Camera* ogreCam); 61 62 private: 63 Ogre::SceneNode* targetNode_; 64 Ogre::SceneNode* positionNode_; 65 Ogre::SceneNode* cameraNode_; 66 Ogre::Vector3 oldPos; 67 bool bHasFocus_; 68 }; 69 } 70 71 #endif /* _Camera_H__ */ 3 void tick(float dt); void update(); inline bool hasFocus() { return this->bHasFocus_; } private: void removeFocus(); void setFocus(Ogre::Camera* ogreCam); private: Ogre::SceneNode* targetNode_; Ogre::SceneNode* positionNode_; Ogre::SceneNode* cameraNode_; Ogre::Vector3 oldPos; bool bHasFocus_; };}#endif /* _Camera_H__ */
Note: See TracChangeset
for help on using the changeset viewer.