Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

GOP.hpp

Go to the documentation of this file.
00001 
00006 #ifndef __GOP_hpp__
00007 #define __GOP_hpp__
00008 
00009 #include "global.hpp"
00010 #include "Frame.hpp"
00011 #include "Stream.hpp"
00012 #ifdef WIN32
00013 #include <qvector.h>
00014 #else
00015 #include <qptrvector.h>
00016 #endif
00017 #include "FrameVector.hpp"
00018 
00019 class Stream;
00020 
00021 class GOP {
00022         
00023         public:
00024 
00028         uint getGOPNo();
00029         
00033         uint calcByteSize();
00034         
00038         bool isMaster();
00039         
00043         Stream *getStream();
00044         
00049         void addFrame(Frame* f);
00050     
00054         uint getFrameCount();
00055     
00059     Frame *getFrame(uint frNo);
00060         
00061         Frame *getFrameInStream(uint frNo);
00062         
00063         virtual ~GOP();
00064         
00065     uint smallestByteSize();
00066 
00067         protected:
00068 
00074     GOP(Stream* s, uint pat_i);
00075         
00082     GOP(Stream* s, uint mod_i, uint pat_i);
00083 
00084     QPtrList <Frame> frameList;
00085     QPtrList <GOP> modFlatList;
00086     QPtrList <GOP> bestModList;
00087     QPtrList <GOP> fathers;
00088 
00089     bool isSubopt;
00090 
00091     QPtrList <GOP> worstPSNRModList;
00092     QPtrList <GOP> bestPSNRModList;
00093     QPtrList <GOP> bestFittingModList;
00094     QPtrList <GOP> randomModList;
00095 
00096     //which sibling level of the modTree?
00097     int modTreeLevel;
00098     int slice;
00099     QPtrList <GOP> modList;
00100 
00101 
00102     // some fields
00103     uint patNo;
00104     uint patFrameOffset;
00105     uint modNo;
00106     uint modBits;
00107     QString description;
00108     bool master;
00109     uint byteSize;
00110     uint refCount;
00111     uint timestamp;
00112 
00113     // the stream where the pattern belongs to
00114     Stream *stream;
00115 
00116     FrameVector frameVector;
00117 
00118 };
00119 
00120 #endif                          // __GOP_hpp__

Generated on Wed Mar 19 11:57:42 2003 for qctva4lv by doxygen1.2.17