SOFA plugin: image  master
Open source framework for multi-physics simuation
sofa::component::container::Kinect Class Reference

#include <Kinect.h>

Inheritance diagram for sofa::component::container::Kinect:

Public Attributes

Data< ImageTypesimage
 image More...
 
Data< TransformTypetransform
 
Data< DepthTypesdepthImage
 depth map More...
 
Data< TransformTypedepthTransform
 
Data< unsigned int > deviceID
 device ID More...
 
Data< helper::OptionsGroupresolution
 resolution More...
 
Data< helper::OptionsGroupvideoMode
 video mode More...
 
Data< helper::OptionsGroupdepthMode
 depth mode More...
 
Data< helper::OptionsGroupledMode
 led mode More...
 
Data< int > tiltAngle
 tilt angle in [-30,30] More...
 
Data< type::Vec3accelerometer
 Accelerometer data. More...
 
Data< bool > drawBB
 draw bounding box More...
 
Data< bool > drawGravity
 draw acceleration More...
 
Data< float > showArrowSize
 size of the axis More...
 
pthread_t freenect_thread
 
- Public Attributes inherited from sofa::core::objectmodel::BaseObject
Data< bool > f_listening
 
- Public Attributes inherited from sofa::core::objectmodel::Base
std::vector< lifecycle::DeprecatedData * > m_oldAttributes
 
Data< int > d_messageLogCount
 
Data< std::string > name
 
Data< bool > f_printLog
 
Data< sofa::core::objectmodel::TagSetf_tags
 
Data< sofa::type::BoundingBoxf_bbox
 
Data< sofa::core::objectmodel::ComponentStated_componentState
 
std::string m_definitionSourceFileName
 
int m_definitionSourceFilePos
 
std::string m_instanciationSourceFileName
 
int m_instanciationSourceFilePos
 

Protected Attributes

int die
 
unsigned char * rgb_mid
 
unsigned char * rgb_back
 
unsigned char * depth_mid
 
unsigned char * depth_back
 
freenect_context * f_ctx
 
freenect_device * f_dev
 
freenect_resolution res
 
freenect_resolution backup_res
 
freenect_depth_format df
 
freenect_depth_format backup_df
 
freenect_video_format vf
 
freenect_video_format backup_vf
 
freenect_led_options led
 
freenect_led_options backup_led
 
int backup_tiltangle
 
int got_rgb
 
int got_depth
 
- Protected Attributes inherited from sofa::core::objectmodel::BaseObject
SingleLink< BaseObject, BaseContext, BaseLink::FLAG_DOUBLELINK > l_context
 
LinkSlaves l_slaves
 
SingleLink< BaseObject, BaseObject, BaseLink::FLAG_DOUBLELINK > l_master
 
- Protected Attributes inherited from sofa::core::objectmodel::Base
std::map< std::string, sofa::core::DataTrackerCallbackm_internalEngine
 
VecData m_vecData
 
MapData m_aliasData
 
VecLink m_vecLink
 
MapLink m_aliasLink
 

Public Member Functions

 SOFA_CLASS (Kinect, Inherited)
 
virtual std::string getTemplateName () const
 
 Kinect ()
 
virtual void clear ()
 
virtual ~Kinect ()
 
void mutex_lock ()
 
void mutex_unlock ()
 
void depth_cb (freenect_device *dev, void *v_depth, uint32_t)
 
void rgb_cb (freenect_device *dev, void *rgb, uint32_t)
 
virtual void init ()
 
virtual void reinit ()
 
void freenect_threadfunc ()
 
- Public Member Functions inherited from sofa::core::objectmodel::BaseObject
 SOFA_CLASS (BaseObject, Base)
 
virtual void computeBBox (const core::ExecParams *, bool=false)
 
void setSrc (const std::string &v, std::vector< std::string > *attributeList=nullptr)
 
void setSrc (const std::string &v, const BaseObject *loader, std::vector< std::string > *attributeList=nullptr)
 
BasefindLinkDestClass (const BaseClass *destType, const std::string &path, const BaseLink *link) override
 
virtual std::string getPathName () const override
 
virtual bool insertInNode (BaseNode *)
 
virtual bool removeInNode (BaseNode *)
 
SReal getTime () const
 
const BaseContextgetContext () const
 
BaseContextgetContext ()
 
const BaseObjectgetMaster () const
 
BaseObjectgetMaster ()
 
const VecSlavesgetSlaves () const
 
BaseObjectgetSlave (const std::string &name) const
 
virtual void addSlave (BaseObject::SPtr s)
 
virtual void removeSlave (BaseObject::SPtr s)
 
virtual void handleTopologyChange ()
 
virtual void handleTopologyChange (core::topology::Topology *t)
 
void parse (BaseObjectDescription *arg) override
 
virtual void bwdInit ()
 
void updateInternal ()
 
virtual void storeResetState ()
 
virtual void reset ()
 
virtual void cleanup ()
 
SReal getTime () const
 
- Public Member Functions inherited from sofa::core::objectmodel::Base
virtual const BaseClassgetClass () const
 
void addDeprecatedAttribute (lifecycle::DeprecatedData *attribute)
 
void addUpdateCallback (const std::string &name, std::initializer_list< BaseData * > inputs, std::function< sofa::core::objectmodel::ComponentState(const DataTracker &)> function, std::initializer_list< BaseData * > outputs)
 
void addOutputsToCallback (const std::string &name, std::initializer_list< BaseData * > outputs)
 
const std::string & getName () const
 
void setName (const std::string &n)
 
void setName (const std::string &n, int counter)
 
std::string getTypeName () const
 
virtual std::string getClassName () const
 
std::string getNameSpaceName () const
 
void setDefinitionSourceFileName (const std::string &sourceFileName)
 
const std::string & getDefinitionSourceFileName () const
 
void setDefinitionSourceFilePos (const int)
 
int getDefinitionSourceFilePos () const
 
void setInstanciationSourceFileName (const std::string &sourceFileName)
 
const std::string & getInstanciationSourceFileName () const
 
void setInstanciationSourceFilePos (const int)
 
int getInstanciationSourceFilePos () const
 
void addMessage (const sofa::helper::logging::Message &m) const
 
size_t countLoggedMessages (sofa::helper::logging::Message::TypeSet t=sofa::helper::logging::Message::AnyTypes) const
 
const std::deque< sofa::helper::logging::Message > & getLoggedMessages () const
 
const std::string getLoggedMessagesAsString (sofa::helper::logging::Message::TypeSet t=sofa::helper::logging::Message::AnyTypes) const
 
void clearLoggedMessages () const
 
bool notMuted () const
 
const sofa::core::objectmodel::TagSetgetTags () const
 
bool hasTag (Tag t) const
 
void addTag (Tag t)
 
void removeTag (Tag t)
 
ComponentState getComponentState () const
 
bool isComponentStateValid () const
 
bool isComponentStateInvalid () const
 
 SOFA_ATTRIBUTE_DEPRECATED__TOBASECONSTRAINT () virtual const behavior
 
virtual bool parseField (const std::string &attribute, const std::string &value)
 
virtual bool hasField (const std::string &attribute) const
 
void parseFields (const std::list< std::string > &str)
 
virtual void parseFields (const std::map< std::string, std::string * > &str)
 
void writeDatas (std::map< std::string, std::string * > &str)=delete
 
void writeDatas (std::ostream &out, const std::string &separator=" ")
 
BaseDatafindData (const std::string &name) const
 
std::vector< BaseData * > findGlobalField (const std::string &name) const
 
BaseLinkfindLink (const std::string &name) const
 
std::vector< BaseLink * > findLinks (const std::string &name) const
 
virtual void updateLinks (bool logErrors=true)
 
BaseData::BaseInitData initData (::sofa::core::objectmodel::Data< T > *field, const char *name, const char *help, ::sofa::core::objectmodel::BaseData::DataFlags dataflags)
 
BaseData::BaseInitData initData (Data< T > *field, const char *name, const char *help, bool isDisplayed=true, bool isReadOnly=false)
 
Data< T >::InitData initData (Data< T > *field, const T &value, const char *name, const char *help, bool isDisplayed=true, bool isReadOnly=false)
 
void addData (BaseData *f, const std::string &name)
 
void addData (BaseData *f)
 
void removeData (BaseData *f)
 
void addAlias (BaseData *field, const char *alias)
 
void addLink (BaseLink *l)
 
void addAlias (BaseLink *link, const char *alias)
 
const VecDatagetDataFields () const
 
const MapDatagetDataAliases () const
 
const VecLinkgetLinks () const
 
const MapLinkgetLinkAliases () const
 
virtual bool findDataLinkDest (BaseData *&ptr, const std::string &path, const BaseLink *link)
 
bool findLinkDest (T *&ptr, const std::string &path, const BaseLink *link)
 
const sofa::core::objectmodel::TagSetgetTags () const
 
bool hasTag (Tag t) const
 
void addTag (Tag t)
 
void removeTag (Tag t)
 
ComponentState getComponentState () const
 
bool isComponentStateValid () const
 
bool isComponentStateInvalid () const
 
 SOFA_ATTRIBUTE_DEPRECATED__TOBASECONSTRAINT () virtual const behavior
 

Static Public Member Functions

static std::string templateName (const Kinect *=NULL)
 
static void _depth_cb (freenect_device *dev, void *v_depth, uint32_t timestamp)
 
static void _rgb_cb (freenect_device *dev, void *rgb, uint32_t timestamp)
 
static void * _freenect_threadfunc (void *arg)
 
- Static Public Member Functions inherited from sofa::core::objectmodel::BaseObject
static bool canCreate (T *, BaseContext *, BaseObjectDescription *)
 
static T::SPtr create (T *, BaseContext *context, BaseObjectDescription *arg)
 
- Static Public Member Functions inherited from sofa::core::objectmodel::Base
static const BaseClassGetClass ()
 
static std::string shortName (const T *ptr=nullptr, BaseObjectDescription *=nullptr)
 

Protected Member Functions

void loadCamera ()
 
void handleEvent (sofa::core::objectmodel::Event *event)
 
void getCorners (Vec< 8, Vec3 > &c)
 
virtual void computeBBox (const core::ExecParams *params)
 
void draw (const core::visual::VisualParams *vparams)
 
- Protected Member Functions inherited from sofa::core::objectmodel::BaseObject
 BaseObject ()
 
 ~BaseObject () override
 
virtual void doUpdateInternal ()
 
void changeContextLink (BaseContext *before, BaseContext *&after)
 
void changeSlavesLink (BaseObject::SPtr ptr, std::size_t, bool add)
 
void trackInternalData (const BaseData &data)
 
void cleanTracker ()
 
bool hasDataChanged (const BaseData &data)
 
- Protected Member Functions inherited from sofa::core::objectmodel::Base
 Base ()
 
virtual ~Base ()
 
void initData0 (BaseData *field, BaseData::BaseInitData &res, const char *name, const char *help, bool isDisplayed=true, bool isReadOnly=false)
 
void initData0 (BaseData *field, BaseData::BaseInitData &res, const char *name, const char *help, BaseData::DataFlags dataFlags)
 
void initData0 (Data< T > *field, typename Data< T >::InitData &res, const T &value, const char *name, const char *help, bool isDisplayed=true, bool isReadOnly=false)
 
- Protected Member Functions inherited from sofa::core::IntrusiveObject
virtual ~IntrusiveObject ()=default
 

Attribute details

◆ accelerometer

Data<type::Vec3> sofa::component::container::Kinect::accelerometer

Accelerometer data.

◆ backup_df

freenect_depth_format sofa::component::container::Kinect::backup_df
protected

◆ backup_led

freenect_led_options sofa::component::container::Kinect::backup_led
protected

◆ backup_res

freenect_resolution sofa::component::container::Kinect::backup_res
protected

◆ backup_tiltangle

int sofa::component::container::Kinect::backup_tiltangle
protected

◆ backup_vf

freenect_video_format sofa::component::container::Kinect::backup_vf
protected

◆ depth_back

unsigned char * sofa::component::container::Kinect::depth_back
protected

◆ depth_mid

unsigned char * sofa::component::container::Kinect::depth_mid
protected

◆ depthImage

Data< DepthTypes > sofa::component::container::Kinect::depthImage

depth map

◆ depthMode

Data<helper::OptionsGroup> sofa::component::container::Kinect::depthMode

depth mode

◆ depthTransform

Data< TransformType > sofa::component::container::Kinect::depthTransform

◆ deviceID

Data<unsigned int> sofa::component::container::Kinect::deviceID

device ID

◆ df

freenect_depth_format sofa::component::container::Kinect::df
protected

◆ die

int sofa::component::container::Kinect::die
protected

◆ drawBB

Data<bool> sofa::component::container::Kinect::drawBB

draw bounding box

◆ drawGravity

Data<bool> sofa::component::container::Kinect::drawGravity

draw acceleration

◆ f_ctx

freenect_context* sofa::component::container::Kinect::f_ctx
protected

◆ f_dev

freenect_device* sofa::component::container::Kinect::f_dev
protected

◆ freenect_thread

pthread_t sofa::component::container::Kinect::freenect_thread

◆ got_depth

int sofa::component::container::Kinect::got_depth
protected

◆ got_rgb

int sofa::component::container::Kinect::got_rgb
protected

◆ image

Data< ImageTypes > sofa::component::container::Kinect::image

image

◆ led

freenect_led_options sofa::component::container::Kinect::led
protected

◆ ledMode

Data<helper::OptionsGroup> sofa::component::container::Kinect::ledMode

led mode

◆ res

freenect_resolution sofa::component::container::Kinect::res
protected

◆ resolution

Data<helper::OptionsGroup> sofa::component::container::Kinect::resolution

resolution

◆ rgb_back

unsigned char * sofa::component::container::Kinect::rgb_back
protected

◆ rgb_mid

unsigned char* sofa::component::container::Kinect::rgb_mid
protected

◆ showArrowSize

Data<float> sofa::component::container::Kinect::showArrowSize

size of the axis

◆ tiltAngle

Data<int> sofa::component::container::Kinect::tiltAngle

tilt angle in [-30,30]

◆ transform

Data< TransformType > sofa::component::container::Kinect::transform

◆ vf

freenect_video_format sofa::component::container::Kinect::vf
protected

◆ videoMode

Data<helper::OptionsGroup> sofa::component::container::Kinect::videoMode

video mode

Constructor details

◆ Kinect()

sofa::component::container::Kinect::Kinect ( )
inline

◆ ~Kinect()

virtual sofa::component::container::Kinect::~Kinect ( )
inlinevirtual

Function details

◆ _depth_cb()

static void sofa::component::container::Kinect::_depth_cb ( freenect_device *  dev,
void *  v_depth,
uint32_t  timestamp 
)
inlinestatic

◆ _freenect_threadfunc()

static void* sofa::component::container::Kinect::_freenect_threadfunc ( void *  arg)
inlinestatic

◆ _rgb_cb()

static void sofa::component::container::Kinect::_rgb_cb ( freenect_device *  dev,
void *  rgb,
uint32_t  timestamp 
)
inlinestatic

◆ clear()

virtual void sofa::component::container::Kinect::clear ( )
inlinevirtual

◆ computeBBox()

virtual void sofa::component::container::Kinect::computeBBox ( const core::ExecParams params)
inlineprotectedvirtual

◆ depth_cb()

void sofa::component::container::Kinect::depth_cb ( freenect_device *  dev,
void *  v_depth,
uint32_t   
)
inline

◆ draw()

void sofa::component::container::Kinect::draw ( const core::visual::VisualParams vparams)
inlineprotectedvirtual

◆ freenect_threadfunc()

void sofa::component::container::Kinect::freenect_threadfunc ( )
inline

◆ getCorners()

void sofa::component::container::Kinect::getCorners ( Vec< 8, Vec3 > &  c)
inlineprotected

◆ getTemplateName()

virtual std::string sofa::component::container::Kinect::getTemplateName ( ) const
inlinevirtual

Reimplemented from sofa::core::objectmodel::Base.

◆ handleEvent()

void sofa::component::container::Kinect::handleEvent ( sofa::core::objectmodel::Event event)
inlineprotectedvirtual

◆ init()

virtual void sofa::component::container::Kinect::init ( void  )
inlinevirtual

◆ loadCamera()

void sofa::component::container::Kinect::loadCamera ( )
inlineprotected

◆ mutex_lock()

void sofa::component::container::Kinect::mutex_lock ( )
inline

◆ mutex_unlock()

void sofa::component::container::Kinect::mutex_unlock ( )
inline

◆ reinit()

virtual void sofa::component::container::Kinect::reinit ( )
inlinevirtual

◆ rgb_cb()

void sofa::component::container::Kinect::rgb_cb ( freenect_device *  dev,
void *  rgb,
uint32_t   
)
inline

◆ SOFA_CLASS()

sofa::component::container::Kinect::SOFA_CLASS ( Kinect  ,
Inherited   
)

◆ templateName()

static std::string sofa::component::container::Kinect::templateName ( const Kinect = NULL)
inlinestatic