00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef O2_BUFFER_H
00023 #define O2_BUFFER_H
00024
00025
00026 #include <cvd/IRIX/O2videoframe.h>
00027 #include <cvd/IRIX/sgi-video.h>
00028 #include <cvd/videobuffer.h>
00029 #include <cvd/rgb8.h>
00030
00031 namespace CVD
00032 {
00033
00037 class O2Buffer : public VideoBuffer<Rgb8>
00038 {
00039 public:
00041 O2Buffer ();
00042 ~O2Buffer ();
00043
00044 virtual ImageRef size ();
00045 virtual O2VideoFrame *get_frame ();
00046 virtual void put_frame (VideoFrame<Rgb8> *f);
00047 virtual bool frame_pending ();
00048 virtual double frame_rate();
00049
00050 private:
00051 ImageRef m_frameSize;
00052 SGI::RawSGIVideo *m_pVid;
00053 O2VideoFrame *m_pFrame;
00054 long m_currentFrameNumber;
00055 };
00056
00057 }
00058
00059 #endif