77 lines
1.5 KiB
C++
77 lines
1.5 KiB
C++
#ifndef _AVIFILE_AVILISTCHUNK_HPP_
|
|
#define _AVIFILE_AVILISTCHUNK_HPP_
|
|
#ifndef _COMMON_WINDOWS_HPP_
|
|
#include <common/windows.hpp>
|
|
#endif
|
|
#ifndef _COMMON_FILE_HPP_
|
|
#include <common/file.hpp>
|
|
#endif
|
|
|
|
//#ifndef _COMMON_PUREVIEWOFFILE_HPP_
|
|
//#include <common/pview.hpp>
|
|
//#endif
|
|
#ifndef _COMMON_STRING_HPP_
|
|
#include <common/string.hpp>
|
|
#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
|