00001 #ifndef CAMERA_MANAGER_H 00002 #define CAMERA_MANAGER_H 00003 00004 // This class is used to manage the list of cameras supported by dc1394 00005 00006 #include <stdio.h> 00007 #include <stdint.h> 00008 #include <dc1394/dc1394.h> 00009 #include <stdlib.h> 00010 #include <inttypes.h> 00011 #include <vector> 00012 00013 class Camera; 00014 00015 class CameraManager { 00016 00017 public: 00018 00019 CameraManager(); 00020 ~CameraManager(); 00021 std::vector<uint64_t> getCameraList(); 00022 Camera* getCamera(uint64_t guid); 00023 bool setupSuccessful(); // returns true if CameraManager was setup successfully 00024 00025 private: 00026 00027 dc1394error_t error; // error code during setup. Equals DC1394_SUCCESS if no errors 00028 dc1394_t* d; // dc1394 library 00029 //std::vector<dc1394camera_t*> freeCameraList; 00030 dc1394camera_list_t* list; 00031 00032 dc1394error_t initialize(); // Need to call this if no arguments were passed into constructor 00033 }; 00034 #endif