18 #ifndef _GAZEBO_RENDERING_DEPTHCAMERA_HH_
19 #define _GAZEBO_RENDERING_DEPTHCAMERA_HH_
44 class DepthCameraPrivate;
58 ScenePtr _scene,
bool _autoRender =
true);
65 public:
void Load(sdf::ElementPtr _sdf);
78 public:
void CreateDepthTexture(
const std::string &_textureName);
81 public:
virtual void PostRender();
85 public:
virtual const float *DepthData()
const;
89 public:
virtual void SetDepthTarget(Ogre::RenderTarget *_target);
95 std::function<
void (
const float *,
unsigned int,
unsigned int,
96 unsigned int,
const std::string &)> _subscriber);
102 std::function<
void (
const float *,
unsigned int,
unsigned int,
103 unsigned int,
const std::string &)> _subscriber);
106 private:
virtual void RenderImpl();
112 private:
void UpdateRenderTarget(Ogre::RenderTarget *_target,
113 Ogre::Material *_material,
114 const std::string &_matName);
127 private: std::unique_ptr<DepthCameraPrivate> dataPtr;
Basic camera sensor.
Definition: Camera.hh:81
Ogre::Texture * depthTexture
Pointer to the depth texture.
Definition: DepthCamera.hh:117
boost::shared_ptr< Scene > ScenePtr
Definition: RenderTypes.hh:82
boost::shared_ptr< Connection > ConnectionPtr
Definition: CommonTypes.hh:134
Ogre::RenderTarget * depthTarget
Pointer to the depth target.
Definition: DepthCamera.hh:120
GAZEBO_VISIBLE void Init(google::protobuf::Message &_message, const std::string &_id="")
Initialize a message.
Ogre::Viewport * depthViewport
Pointer to the depth viewport.
Definition: DepthCamera.hh:123
Depth camera used to render depth data into an image buffer.
Definition: DepthCamera.hh:51