32 #ifndef PCL_IO_OPENNI2_DEVICE_MANAGER_H_
33 #define PCL_IO_OPENNI2_DEVICE_MANAGER_H_
35 #include <pcl/pcl_exports.h>
36 #include "pcl/io/openni2/openni2_device_info.h"
38 #include <boost/thread/mutex.hpp>
39 #include <boost/shared_ptr.hpp>
40 #include <boost/make_shared.hpp>
53 class OpenNI2DeviceListener;
66 static boost::shared_ptr<OpenNI2DeviceManager> instance = boost::make_shared<OpenNI2DeviceManager>();
70 boost::shared_ptr<std::vector<OpenNI2DeviceInfo> >
71 getConnectedDeviceInfos ()
const;
73 boost::shared_ptr<std::vector<std::string> >
74 getConnectedDeviceURIs ()
const;
77 getNumOfConnectedDevices ()
const;
79 boost::shared_ptr<OpenNI2Device>
82 boost::shared_ptr<OpenNI2Device>
83 getDevice (
const std::string& device_URI);
85 boost::shared_ptr<OpenNI2Device>
86 getDeviceByIndex (
int index);
88 boost::shared_ptr<OpenNI2Device>
89 getFileDevice (
const std::string& path);
102 #endif // PCL_IO_OPENNI2_DEVICE_MANAGER_H_