18 #ifndef _GAZEBO_OCULUS_CAMERA_HH_ 
   19 #define _GAZEBO_OCULUS_CAMERA_HH_ 
   47   class CompositorInstance;
 
   54     class OrbitViewController;
 
   55     class FPSViewController;
 
   57     class SelectionBuffer;
 
   76       public: 
void Load(sdf::ElementPtr _sdf);
 
   85       public: 
virtual void Update();
 
   88       public: 
virtual void PostRender();
 
   96       public: 
void Resize(
unsigned int _w, 
unsigned int _h);
 
  100       public: 
float GetAvgFPS() 
const;
 
  104       public: 
unsigned int GetTriangleCount() 
const;
 
  108       public: 
void MoveToVisual(
VisualPtr _visual);
 
  111       public: 
virtual bool MoveToPosition(
const math::Pose &_pose,
 
  116       public: 
void MoveToVisual(
const std::string &_visualName);
 
  122       public: 
virtual void SetRenderTarget(Ogre::RenderTarget *_target);
 
  126       public: 
void AdjustAspect(
double _v);
 
  129       public: 
virtual unsigned int GetImageWidth() 
const;
 
  132       public: 
virtual unsigned int GetImageHeight() 
const;
 
  135       public: 
void ResetSensor();
 
  139       public: 
bool Ready();
 
  152       protected: 
virtual bool AttachToVisualImpl(
VisualPtr _visual,
 
  153                      bool _inheritOrientation, 
double _minDist = 0,
 
  154                      double _maxDist = 0);
 
  161       protected: 
virtual bool TrackVisualImpl(
VisualPtr _visual);
 
  165       private: 
void OnControl(ConstWorldControlPtr &_data);
 
  168       private: 
void Oculus();
 
  177       private: Ogre::CompositorInstance *compositors[2];
 
  181       private: OVR::DeviceManager *deviceManager;
 
  184       private: OVR::HMDDevice *hmd;
 
  187       private: OVR::Util::Render::StereoConfig *stereoConfig;
 
  190       private: OVR::SensorDevice *sensor;
 
  194       private: OVR::SensorFusion *sensorFusion;
 
  198       private: 
float centerOffset;
 
Basic camera sensor. 
Definition: Camera.hh:78
 
Ogre::Camera * rightCamera
Ogre camera for the right Oculus screen. 
Definition: OculusCamera.hh:171
 
Encapsulates a position and rotation in three space. 
Definition: Pose.hh:40
 
boost::shared_ptr< Subscriber > SubscriberPtr
Definition: TransportTypes.hh:53
 
A camera used for user visualization of a scene. 
Definition: OculusCamera.hh:64
 
Ogre::Viewport * rightViewport
View poer for the right camera. 
Definition: OculusCamera.hh:174
 
boost::shared_ptr< Node > NodePtr
Definition: TransportTypes.hh:57
 
boost::shared_ptr< Scene > ScenePtr
Definition: RenderTypes.hh:74
 
GAZEBO_VISIBLE void Init(google::protobuf::Message &_message, const std::string &_id="")
Initialize a message. 
 
boost::shared_ptr< Visual > VisualPtr
Definition: RenderTypes.hh:102
 
#define GAZEBO_VISIBLE
Use to represent "symbol visible" if supported. 
Definition: system.hh:48