00001 #ifndef __YUVFrame_hpp__ 00002 #define __YUVFrame_hpp__ 00003 00004 #include "Frame.hpp" 00005 00006 class MPGFrame; 00007 class GOP; 00008 00009 00010 class YUVFrame:public Frame { 00011 00012 public: 00013 00020 YUVFrame(long noS, unsigned int noP, long offset, GOP* pat, 00021 FrameType t = NN_VOP); 00022 00023 ~YUVFrame(); 00024 00025 00029 void setCompressedByteSize(uint siz); 00030 00034 uint getCompressedByteSize(); 00035 00039 MPGFrame *getMPGFrame(); 00040 00044 void setMPGFrame(MPGFrame* mpg); 00045 00052 double computePSNRy(YUVFrame* f); 00053 00059 double computePSNR(YUVFrame* f); 00060 00064 double getPSNR() { return this->psnr; }; 00065 00066 00067 private: 00068 uint compBSize; 00069 MPGFrame *mpgFrame; 00070 double psnr; 00071 00072 }; 00073 00074 #endif // __YUVFrame_hpp__