Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | Friends
freenect_camera::FreenectDevice Class Reference

#include <freenect_device.hpp>

Inheritance diagram for freenect_camera::FreenectDevice:
Inheritance graph
[legend]

List of all members.

Public Member Functions

bool findCompatibleDepthMode (const OutputMode &mode, OutputMode &compatible_mode) const
bool findCompatibleImageMode (const OutputMode &mode, OutputMode &compatible_mode) const
void flushDeviceStreams ()
 FreenectDevice (freenect_context *driver, std::string serial)
unsigned getAddress () const
float getBaseline () const
unsigned getBus () const
OutputMode getDefaultDepthMode () const
OutputMode getDefaultImageMode () const
OutputMode getDepthOutputMode ()
OutputMode getImageOutputMode ()
const char * getProductName () const
const char * getSerialNumber () const
bool hasDepthStream () const
bool hasImageStream () const
bool hasIRStream () const
bool isDepthRegistered ()
bool isDepthRegistrationSupported () const
bool isDepthStreamRunning ()
bool isImageStreamRunning ()
bool isIRStreamRunning ()
bool isSynchronizationSupported () const
bool isSynchronized () const
void openDevice (freenect_context *driver, std::string serial)
void publishersAreReady ()
template<typename T >
void registerDepthCallback (void(T::*callback)(const ImageBuffer &depth_image, void *cookie), T &instance, void *cookie=NULL)
template<typename T >
void registerImageCallback (void(T::*callback)(const ImageBuffer &image, void *cookie), T &instance, void *cookie=NULL)
template<typename T >
void registerIRCallback (void(T::*callback)(const ImageBuffer &ir_image, void *cookie), T &instance, void *cookie=NULL)
void setDepthOutputMode (OutputMode mode)
void setDepthRegistration (bool enable)
void setImageOutputMode (OutputMode mode)
bool setSynchronization (bool on_off) const
void shutdown ()
void startDepthStream ()
void startImageStream ()
void startIRStream ()
void stopDepthStream ()
void stopImageStream ()
void stopIRStream ()
 ~FreenectDevice ()

Static Public Member Functions

static void freenectDepthCallback (freenect_device *dev, void *depth, uint32_t timestamp)
static void freenectVideoCallback (freenect_device *dev, void *video, uint32_t timestamp)

Private Member Functions

bool _isImageModeEnabled ()
void depthCallback (void *depth)
void executeChanges ()
void videoCallback (void *video)

Private Attributes

ImageBuffer depth_buffer_
boost::function< void(const
ImageBuffer &)> 
depth_callback_
freenect_device * device_
bool device_flush_enabled_
boost::posix_time::ptime device_flush_start_time_
std::string device_serial_
freenect_context * driver_
boost::function< void(const
ImageBuffer &)> 
image_callback_
boost::function< void(const
ImageBuffer &)> 
ir_callback_
boost::recursive_mutex m_settings_
freenect_depth_format new_depth_format_
freenect_resolution new_depth_resolution_
freenect_video_format new_video_format_
freenect_resolution new_video_resolution_
bool publishers_ready_
freenect_registration registration_
bool should_stream_depth_
bool should_stream_video_
bool streaming_depth_
bool streaming_video_
ImageBuffer video_buffer_

Friends

class FreenectDriver

Detailed Description

Definition at line 29 of file freenect_device.hpp.


Constructor & Destructor Documentation

freenect_camera::FreenectDevice::FreenectDevice ( freenect_context *  driver,
std::string  serial 
) [inline]

Definition at line 33 of file freenect_device.hpp.

Definition at line 54 of file freenect_device.hpp.


Member Function Documentation

Definition at line 432 of file freenect_device.hpp.

void freenect_camera::FreenectDevice::depthCallback ( void *  depth) [inline, private]

Definition at line 437 of file freenect_device.hpp.

ROS_INFO("change video called %i", should_stream_video_);

Definition at line 327 of file freenect_device.hpp.

bool freenect_camera::FreenectDevice::findCompatibleDepthMode ( const OutputMode mode,
OutputMode compatible_mode 
) const [inline]

Definition at line 239 of file freenect_device.hpp.

bool freenect_camera::FreenectDevice::findCompatibleImageMode ( const OutputMode mode,
OutputMode compatible_mode 
) const [inline]

Definition at line 176 of file freenect_device.hpp.

Definition at line 58 of file freenect_device.hpp.

static void freenect_camera::FreenectDevice::freenectDepthCallback ( freenect_device *  dev,
void *  depth,
uint32_t  timestamp 
) [inline, static]

Definition at line 278 of file freenect_device.hpp.

static void freenect_camera::FreenectDevice::freenectVideoCallback ( freenect_device *  dev,
void *  video,
uint32_t  timestamp 
) [inline, static]

Definition at line 286 of file freenect_device.hpp.

unsigned freenect_camera::FreenectDevice::getAddress ( ) const [inline]

Unsupported

Definition at line 89 of file freenect_device.hpp.

Get the baseline (distance between rgb/depth sensor)

Definition at line 132 of file freenect_device.hpp.

unsigned freenect_camera::FreenectDevice::getBus ( ) const [inline]

Unsupported

Definition at line 84 of file freenect_device.hpp.

Definition at line 235 of file freenect_device.hpp.

Definition at line 172 of file freenect_device.hpp.

Definition at line 225 of file freenect_device.hpp.

Definition at line 162 of file freenect_device.hpp.

const char* freenect_camera::FreenectDevice::getProductName ( ) const [inline]

Definition at line 93 of file freenect_device.hpp.

const char* freenect_camera::FreenectDevice::getSerialNumber ( ) const [inline]

Definition at line 97 of file freenect_device.hpp.

Definition at line 105 of file freenect_device.hpp.

Definition at line 101 of file freenect_device.hpp.

Definition at line 109 of file freenect_device.hpp.

Definition at line 250 of file freenect_device.hpp.

Definition at line 113 of file freenect_device.hpp.

Definition at line 271 of file freenect_device.hpp.

Definition at line 201 of file freenect_device.hpp.

Definition at line 218 of file freenect_device.hpp.

Definition at line 117 of file freenect_device.hpp.

Definition at line 121 of file freenect_device.hpp.

void freenect_camera::FreenectDevice::openDevice ( freenect_context *  driver,
std::string  serial 
) [inline]

Definition at line 64 of file freenect_device.hpp.

Definition at line 156 of file freenect_device.hpp.

template<typename T >
void freenect_camera::FreenectDevice::registerDepthCallback ( void(T::*)(const ImageBuffer &depth_image, void *cookie)  callback,
T &  instance,
void *  cookie = NULL 
) [inline]

Definition at line 144 of file freenect_device.hpp.

template<typename T >
void freenect_camera::FreenectDevice::registerImageCallback ( void(T::*)(const ImageBuffer &image, void *cookie)  callback,
T &  instance,
void *  cookie = NULL 
) [inline]

Definition at line 138 of file freenect_device.hpp.

template<typename T >
void freenect_camera::FreenectDevice::registerIRCallback ( void(T::*)(const ImageBuffer &ir_image, void *cookie)  callback,
T &  instance,
void *  cookie = NULL 
) [inline]

Definition at line 150 of file freenect_device.hpp.

Definition at line 230 of file freenect_device.hpp.

Definition at line 255 of file freenect_device.hpp.

Definition at line 167 of file freenect_device.hpp.

bool freenect_camera::FreenectDevice::setSynchronization ( bool  on_off) const [inline]

Definition at line 125 of file freenect_device.hpp.

Definition at line 76 of file freenect_device.hpp.

Definition at line 266 of file freenect_device.hpp.

Definition at line 194 of file freenect_device.hpp.

Definition at line 212 of file freenect_device.hpp.

Definition at line 261 of file freenect_device.hpp.

Definition at line 187 of file freenect_device.hpp.

Definition at line 206 of file freenect_device.hpp.

void freenect_camera::FreenectDevice::videoCallback ( void *  video) [inline, private]

Definition at line 445 of file freenect_device.hpp.


Friends And Related Function Documentation

friend class FreenectDriver [friend]

Definition at line 296 of file freenect_device.hpp.


Member Data Documentation

Definition at line 313 of file freenect_device.hpp.

boost::function<void(const ImageBuffer&)> freenect_camera::FreenectDevice::depth_callback_ [private]

Definition at line 304 of file freenect_device.hpp.

freenect_device* freenect_camera::FreenectDevice::device_ [private]

Definition at line 299 of file freenect_device.hpp.

Definition at line 324 of file freenect_device.hpp.

Definition at line 323 of file freenect_device.hpp.

Definition at line 300 of file freenect_device.hpp.

freenect_context* freenect_camera::FreenectDevice::driver_ [private]

Definition at line 298 of file freenect_device.hpp.

boost::function<void(const ImageBuffer&)> freenect_camera::FreenectDevice::image_callback_ [private]

Definition at line 303 of file freenect_device.hpp.

boost::function<void(const ImageBuffer&)> freenect_camera::FreenectDevice::ir_callback_ [private]

Definition at line 305 of file freenect_device.hpp.

boost::recursive_mutex freenect_camera::FreenectDevice::m_settings_ [private]

Definition at line 321 of file freenect_device.hpp.

freenect_depth_format freenect_camera::FreenectDevice::new_depth_format_ [private]

Definition at line 317 of file freenect_device.hpp.

Definition at line 316 of file freenect_device.hpp.

freenect_video_format freenect_camera::FreenectDevice::new_video_format_ [private]

Definition at line 311 of file freenect_device.hpp.

Definition at line 310 of file freenect_device.hpp.

Definition at line 325 of file freenect_device.hpp.

freenect_registration freenect_camera::FreenectDevice::registration_ [private]

Definition at line 301 of file freenect_device.hpp.

Definition at line 315 of file freenect_device.hpp.

Definition at line 309 of file freenect_device.hpp.

Definition at line 314 of file freenect_device.hpp.

Definition at line 308 of file freenect_device.hpp.

Definition at line 307 of file freenect_device.hpp.


The documentation for this class was generated from the following file:


freenect_camera
Author(s): Patrick Mihelich, Suat Gedikli, Radu Bogdan Rusu (original openni_camera driver)., Piyush Khandelwal (libfreenect port).
autogenerated on Fri Aug 28 2015 10:41:49