#ifndef _AVIFILE_STREAMTYPE_HPP_ #define _AVIFILE_STREAMTYPE_HPP_ class StreamType { public: enum Type{Video=0x73646976,Audio=0x73647561,Text=0x54584554,IAVS=0x73766169}; StreamType(Type streamType=Video); StreamType(DWORD streamType); StreamType(const StreamType &someStreamType); ~StreamType(); StreamType &operator=(const StreamType &someStreamType); WORD operator==(const StreamType &someStreamType)const; Type streamType(void)const; void streamType(Type streamType); private: Type mStreamType; }; inline StreamType::StreamType(DWORD streamType) : mStreamType((Type)streamType) { } inline StreamType::StreamType(Type streamType) : mStreamType(streamType) { } inline StreamType::StreamType(const StreamType &someStreamType) { *this=someStreamType; } inline StreamType::~StreamType() { } inline StreamType &StreamType::operator=(const StreamType &someStreamType) { streamType(someStreamType.streamType()); return *this; } inline WORD StreamType::operator==(const StreamType &someStreamType)const { return streamType()==someStreamType.streamType(); } inline StreamType::Type StreamType::streamType(void)const { return mStreamType; } inline void StreamType::streamType(Type streamType) { mStreamType=streamType; } #endif