00001 #ifndef _QCAMMOVIE_HPP_
00002 #define _QCAMMOVIE_HPP_
00003
00004 #include <qobject.h>
00005 #include <string>
00006 #include <stdio.h>
00007
00008 using namespace std;
00009
00010 class QCamFrame;
00011 class QCam;
00012 class QString;
00013 class QWidget;
00014
00015 class QCamMovie {
00016 public:
00017 QCamMovie() {};
00018 virtual ~QCamMovie() {};
00019 virtual QWidget * buildGUI(QWidget * father) { return father;}
00020 bool open(const string & seqName, const QCam & cam);
00021 void close();
00022 bool add(const QCamFrame & newFrame, const QCam & cam);
00023 int getFrameNumber() const { return frameNumber_; }
00024 protected:
00025 virtual bool openImpl(const string & seqName, const QCam & cam)=0;
00026 virtual void closeImpl()=0;
00027 virtual bool addImpl(const QCamFrame & newFrame, const QCam & cam)=0;
00028 private:
00029 FILE * propFile_;
00030 int frameNumber_;
00031 };
00032
00033 #endif