camera.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef __FIREVISION_CAMERA_H_
00025 #define __FIREVISION_CAMERA_H_
00026
00027 #include <fvutils/color/colorspaces.h>
00028 #include <utils/time/time.h>
00029
00030 namespace firevision {
00031 #if 0
00032 }
00033 #endif
00034
00035 class Camera
00036 {
00037
00038 public:
00039 virtual ~Camera();
00040
00041 virtual void open() = 0;
00042 virtual void start() = 0;
00043 virtual void stop() = 0;
00044 virtual void close() = 0;
00045 virtual void capture() = 0;
00046 virtual void flush() = 0;
00047
00048 virtual bool ready() = 0;
00049
00050 virtual void print_info() = 0;
00051
00052 virtual unsigned char * buffer() = 0;
00053 virtual unsigned int buffer_size() = 0;
00054 virtual void dispose_buffer() = 0;
00055
00056 virtual unsigned int pixel_width() = 0;
00057 virtual unsigned int pixel_height() = 0;
00058 virtual colorspace_t colorspace() = 0;
00059 virtual fawkes::Time * capture_time();
00060
00061
00062 virtual void set_image_number(unsigned int n) = 0;
00063 };
00064
00065 }
00066
00067 #endif