00001 /* $Id: capture.h 3142 2005-09-25 23:35:06Z thjc $ 00002 * 00003 * The base class for capture classes that feed data to CMVision 00004 */ 00005 00006 #ifndef __CAPTURE_H__ 00007 #define __CAPTURE_H__ 00008 00009 typedef long long stamp_t; 00010 00011 class capture 00012 { 00013 protected: 00014 unsigned char *current; // most recently captured frame 00015 stamp_t timestamp; // frame time stamp 00016 int width,height; // dimensions of video frame 00017 bool captured_frame; 00018 00019 public: 00020 capture() {current=0; captured_frame = false;} 00021 virtual ~capture() {}; 00022 00023 // you must define these in the subclass 00024 virtual bool initialize(int nwidth,int nheight) = 0; 00025 virtual void close() = 0; 00026 virtual unsigned char *captureFrame() = 0; 00027 }; 00028 00029 #endif // __CAPTURE_H__