Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/trunk/src/world_entities/cameraman.h @ 10414

Last change on this file since 10414 was 10414, checked in by snellen, 17 years ago

fixed segfault if syntax error in xml

File size: 1.7 KB
Line 
1#ifndef _CAMERAMAN_H
2#define _CAMERAMAN_H
3
4
5#include <vector>
6#include "base_object.h"
7
8class BlackScreen;
9class Camera;
10class PNode;
11
12class CameraMan : public BaseObject {
13  ObjectListDeclaration(CameraMan);
14
15  private:
16    Camera* currentCam;
17    float nearClip;
18    float farClip;
19    BlackScreen* fadeToBlack;
20
21  public:
22    std::vector<Camera*> cameras;
23    CameraMan(const TiXmlElement* root = NULL);
24    void setCam(int CameraNo);
25    void setCam(const std::string& camName);
26    void setCam(Camera* camera);
27
28    void createCameras(const TiXmlElement* camerasTag);
29    void createCam(const TiXmlElement* root);
30    void moveCam(int x, int y, int z,  int camNo);
31    void moveCurrCam(int x, int y, int z);
32    void changeTarget(int camNo, const std::string& className,const std::string& objectName);
33    void changeTarget(const std::string& camName,const std::string& className, const std::string& objectName);
34    void changeCurrTarget(const std::string& className, const std::string& objectName);
35    void atachCurrTarget(PNode* target);
36    void atachCurrCameraToWorldEntity(const std::string& className, const std::string& targetEntity);
37    void detachCurrCamera();
38    void jumpCam(int x, int y, int z, int camNo);
39    void jumpCurrCam(int x, int y, int z);
40    void changeSpeed(float speed);
41    void setClipRegion(float nearClip, float farClip);
42    void togglFade();
43
44    void cameraInfo();
45
46    /// LOADING
47    virtual void loadParams(const TiXmlElement* root);
48
49    /// POLLING
50    float getCurrCameraCoorX();
51    float getCurrCameraCoorY();
52    float getCurrCameraCoorZ();
53    bool cameraIsInVector(Camera* camera);
54
55};
56
57#endif /* _CAMERAMAN_H */
Note: See TracBrowser for help on using the repository browser.