Image Component Library (ICL)
KinectGrabber.h
Go to the documentation of this file.
1 /********************************************************************
2 ** Image Component Library (ICL) **
3 ** **
4 ** Copyright (C) 2006-2013 CITEC, University of Bielefeld **
5 ** Neuroinformatics Group **
6 ** Website: www.iclcv.org and **
7 ** http://opensource.cit-ec.de/projects/icl **
8 ** **
9 ** File : ICLIO/src/ICLIO/KinectGrabber.h **
10 ** Module : ICLIO **
11 ** Authors: Christof Elbrechter, Viktor Richter **
12 ** **
13 ** **
14 ** GNU LESSER GENERAL PUBLIC LICENSE **
15 ** This file may be used under the terms of the GNU Lesser General **
16 ** Public License version 3.0 as published by the **
17 ** **
18 ** Free Software Foundation and appearing in the file LICENSE.LGPL **
19 ** included in the packaging of this file. Please review the **
20 ** following information to ensure the license requirements will **
21 ** be met: http://www.gnu.org/licenses/lgpl-3.0.txt **
22 ** **
23 ** The development of this software was supported by the **
24 ** Excellence Cluster EXC 277 Cognitive Interaction Technology. **
25 ** The Excellence Cluster EXC 277 is a grant of the Deutsche **
26 ** Forschungsgemeinschaft (DFG) in the context of the German **
27 ** Excellence Initiative. **
28 ** **
29 ********************************************************************/
30 
31 #include <ICLIO/Grabber.h>
32 #include <ICLUtils/Exception.h>
33 
34 namespace icl{
35  namespace io{
37 
39  struct KinectGrabber : public Grabber{
40  enum Mode{
46  };
47 
49  ICLIO_API static const std::vector<GrabberDeviceDescription> &getDeviceList(bool rescan);
50 
51  ICLIO_API KinectGrabber(Mode mode = GRAB_DEPTH_IMAGE, int deviceID=0,
52  const utils::Size &size=utils::Size::VGA) ;
53 
54  ICLIO_API KinectGrabber(Mode mode, const std::string &deviceIDOrSerial,
55  const utils::Size &size=utils::Size::VGA) ;
56 
57  private:
58  ICLIO_API void init(Mode mode, const std::string &deviceIDOrSerial,
59  const utils::Size &size) ;
60  public:
61 
64 
66  ICLIO_API virtual const core::ImgBase* acquireImage();
67 
70 
71 
72  protected:
73  struct Impl;
74  Impl *m_impl;
75 
76  private:
77  void updateState();
78 
79  };
80  } // namespace io
81 }
ICLIO_API void init(Mode mode, const std::string &deviceIDOrSerial, const utils::Size &size)
undocument this line if you encounter any issues!
Definition: Any.h:37
grabs rgb images form the kinects rgb camera
Definition: KinectGrabber.h:41
ICLIO_API ~KinectGrabber()
Destructor.
virtual ICLIO_API const core::ImgBase * acquireImage()
grabs a new image
static const Size VGA
Video Graphics Array res. 640x480.
Definition: Size.h:82
grabs the kinects IR-image in most common 8Bit depth
Definition: KinectGrabber.h:44
grabs the kinects IR-image in 10Bit core::depth (use depth16s at least)
Definition: KinectGrabber.h:45
static ICLIO_API const std::vector< GrabberDeviceDescription > & getDeviceList(bool rescan)
returns a list of attached kinect devices
#define ICLIO_API
Definition: CompatMacros.h:176
Size class of the ICL.
Definition: Size.h:61
Common interface class for all grabbers.
Definition: Grabber.h:153
Special Grabber implementation for Microsoft's Kinect Device.
Definition: KinectGrabber.h:39
Property & prop(const std::string &propertyName)
this CAN be used e.g. to store a property value in internal property-list
ICLIO_API void processPropertyChange(const utils::Configurable::Property &prop)
callback for changed configurable properties
Impl * m_impl
internal hidden implementation class
Definition: KinectGrabber.h:73
ICLIO_API KinectGrabber(Mode mode=GRAB_DEPTH_IMAGE, int deviceID=0, const utils::Size &size=utils::Size::VGA)
grabs the core::depth image from kinect
Definition: KinectGrabber.h:43
Represents a single property.
Definition: Configurable.h:200
ImgBase is the Image-Interface class that provides save access to underlying Img-template .
Definition: ImgBase.h:131
not supported yet
Definition: KinectGrabber.h:42
Mode
Definition: KinectGrabber.h:40