00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014 #ifndef HxImageSeqData_H
00015 #define HxImageSeqData_H
00016
00017 #include "HxString.h"
00018 #include "HxImageRep.h"
00019
00020 #include <list>
00021
00022
00039 class HxImageSeqData : public HxRcObject {
00040
00041 public:
00043 HxImageSeqData(int bufsize);
00044
00046 virtual ~HxImageSeqData();
00047
00049 int ident() const;
00050
00052 virtual int valid() = 0;
00053
00055 virtual int frameWidth() = 0;
00056
00058 virtual int frameHeight() = 0;
00059
00061 virtual int frameDepth() = 0;
00062
00064 virtual int nrFrames() = 0;
00065
00067 HxImageRep getFrame(int fn);
00068
00073 virtual void getRgb2d(int fn, int* pixels,
00074 HxString displayMode);
00075
00080 virtual void getRgbPixels2d(int nr, int* pixels,
00081 HxString displayMode,
00082 int resWidth, int resHeight,
00083 HxGeoIntType gi);
00084
00089 virtual HxImageRep frame2HxImageRep(int) = 0;
00090
00091 private:
00092 static int _nr;
00093 int _ident;
00094 int _bufsize;
00095 int _current;
00096
00097 int _size;
00098 std::list<HxImageRep> _buffer;
00099 };
00100
00101 #endif