GrabbingDeviceManager.h
Go to the documentation of this file.
00001 #ifndef GRABBING_DEVICE_MANAGER_H
00002 #define GRABBING_DEVICE_MANAGER_H
00003 
00004 
00005 // unicap bindings
00006 extern "C"
00007 {
00008   #include <unicap/unicap.h>
00009 }
00010 
00011 #include <string>
00012 #include <vector>
00013 
00014 
00015 
00016 namespace puma2{
00017 
00018 
00019   typedef std::vector<unicap_device_t*> device_ptr_vec;
00020 
00021   // forwards
00022   class GrabbingDevice;
00023   class PumaLogger;
00031   class GrabbingDeviceManager
00032   {
00033   public:
00034 
00038     static GrabbingDeviceManager* getGrabbingDeviceManager();
00039 
00040 
00047     bool connectGrabbingDevice(GrabbingDevice **_device, const uint _id);
00048 
00049 
00056     bool connectGrabbingDevice(GrabbingDevice **_device, const std::string &_description);
00057 
00058 
00062     uint getNumDevices();
00063 
00064 
00070     std::string getDeviceInfo(const uint _id);
00071 
00072 
00078     std::string getDeviceInfo(const std::string &_description);
00079 
00080 
00084     bool scan();
00085 
00089     std::string getDeviceList();
00090 
00091 
00092   private:
00093     GrabbingDeviceManager();
00094     GrabbingDeviceManager( const GrabbingDeviceManager&);
00095     ~GrabbingDeviceManager();
00096 
00097 
00098     bool findDeviceById(unicap_device_t **_device, const uint _id);
00099     bool findDeviceByDesc(unicap_device_t **_device, const std::string &_description);
00100 
00101     bool connectGrabbingDevice(GrabbingDevice **_device, unicap_device_t *_udevice);
00102 
00103     static GrabbingDeviceManager* mTheManager;
00104     device_ptr_vec mDevices;
00105 
00106     PumaLogger *mLogger;
00107   };
00108 
00109 
00110 
00111 
00112 
00113   }
00114 #endif


obj_rec_gui
Author(s): AGAS/agas@uni-koblenz.de
autogenerated on Mon Oct 6 2014 02:53:43