#ifndef _AVIFILE_AVILISTCHUNK_HPP_ #define _AVIFILE_AVILISTCHUNK_HPP_ #ifndef _COMMON_WINDOWS_HPP_ #include #endif #ifndef _COMMON_FILE_HPP_ #include #endif //#ifndef _COMMON_PUREVIEWOFFILE_HPP_ //#include //#endif #ifndef _COMMON_STRING_HPP_ #include #endif class AVIListChunk { public: enum ChunkType{Header,Movie,Stream,Index,Info,Record,OpenDML,Unknown}; AVIListChunk(void); AVIListChunk(const AVIListChunk &someAVIListChunk); virtual ~AVIListChunk(); AVIListChunk &operator=(const AVIListChunk &someAVIListChunk); WORD operator==(const AVIListChunk &someAVIListChunk)const; ChunkType chunkType(void)const; bool read(File &inFile); // WORD operator<<(PureViewOfFile &pureView); String toString(void)const; private: void chunkType(ChunkType chunkType); ChunkType mChunkType; }; inline AVIListChunk::AVIListChunk(void) : mChunkType(Unknown) { } inline AVIListChunk::AVIListChunk(const AVIListChunk &someAVIListChunk) { *this=someAVIListChunk; } inline AVIListChunk::~AVIListChunk() { } inline AVIListChunk &AVIListChunk::operator=(const AVIListChunk &someAVIListChunk) { chunkType(someAVIListChunk.chunkType()); return *this; } inline WORD AVIListChunk::operator==(const AVIListChunk &someAVIListChunk)const { return chunkType()==someAVIListChunk.chunkType(); } inline AVIListChunk::ChunkType AVIListChunk::chunkType(void)const { return mChunkType; } inline void AVIListChunk::chunkType(AVIListChunk::ChunkType chunkType) { mChunkType=chunkType; } #endif