00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef CAMERABOUNDELEMENT_H
00022 #define CAMERABOUNDELEMENT_H
00023
00024 #include "CaelumPrerequisites.h"
00025
00026 namespace caelum {
00027
00036 class CAELUM_EXPORT CameraBoundElement {
00037 private:
00040 bool mAutoRadius;
00041
00042 public:
00046 CameraBoundElement();
00047
00050 virtual ~CameraBoundElement () {};
00051
00058 virtual void notifyCameraChanged (Ogre::Camera *cam) = 0;
00059
00071 void forceFarRadius (Ogre::Real radius);
00072
00077 bool getAutoRadius () const;
00078
00083 static const Ogre::Real CAMERA_FAR_DISTANCE_MULTIPLIER;
00084
00089 static const Ogre::Real CAMERA_NEAR_DISTANCE_MULTIPLIER;
00090
00091 protected:
00096 virtual void setFarRadius (Ogre::Real radius);
00097 };
00098
00099 }
00100
00101 #endif // CAMERABOUNDELEMENT_H