#ifndef _AVIFILE_INDEXCHUNK_HPP_ #define _AVIFILE_INDEXCHUNK_HPP_ #ifndef _COMMON_FILE_HPP_ #include #endif #ifndef _COMMON_VFW_HPP_ #include #endif class IndexChunk : private AVIINDEXENTRY { public: IndexChunk(void); IndexChunk(const IndexChunk &someIndexChunk); virtual ~IndexChunk(); bool read(File &inFile); IndexChunk &operator=(const IndexChunk &someIndexChunk); bool operator==(const IndexChunk &someIndexChunk); DWORD indexID(void)const; DWORD flags(void)const; DWORD offset(void)const; DWORD length(void)const; private: void indexID(DWORD indexID); void flags(DWORD flags); void offset(DWORD offset); void length(DWORD length); }; inline IndexChunk::IndexChunk(void) { AVIINDEXENTRY::ckid=0; AVIINDEXENTRY::dwFlags=0; AVIINDEXENTRY::dwChunkOffset=0; AVIINDEXENTRY::dwChunkLength=0; } inline IndexChunk::IndexChunk(const IndexChunk &someIndexChunk) { *this=someIndexChunk; } inline IndexChunk::~IndexChunk() { } inline IndexChunk &IndexChunk::operator=(const IndexChunk &someIndexChunk) { indexID(someIndexChunk.indexID()); flags(someIndexChunk.flags()); offset(someIndexChunk.offset()); length(someIndexChunk.length()); return *this; } inline bool IndexChunk::operator==(const IndexChunk &someIndexChunk) { return (indexID()==someIndexChunk.indexID()&& flags()==someIndexChunk.flags()&& offset()==someIndexChunk.offset()&& length()==someIndexChunk.length()); } inline DWORD IndexChunk::indexID(void)const { return AVIINDEXENTRY::ckid; } inline void IndexChunk::indexID(DWORD indexID) { AVIINDEXENTRY::ckid=indexID; } inline DWORD IndexChunk::flags(void)const { return AVIINDEXENTRY::dwFlags; } inline void IndexChunk::flags(DWORD flags) { AVIINDEXENTRY::dwFlags=0; } inline DWORD IndexChunk::offset(void)const { return AVIINDEXENTRY::dwChunkOffset; } inline void IndexChunk::offset(DWORD offset) { AVIINDEXENTRY::dwChunkOffset=offset; } inline DWORD IndexChunk::length(void)const { return AVIINDEXENTRY::dwChunkLength; } inline void IndexChunk::length(DWORD length) { AVIINDEXENTRY::dwChunkLength; } #endif