Ap4AsyncReaderStream.h

00001 #pragma once
00002 
00003 #include "..\BaseSplitter\BaseSplitter.h"
00004 
00005 #include "Ap4.h"
00006 #include "Ap4File.h"
00007 //#include "Ap4Utils.h"
00008 //#include "Ap4Sample.h"
00009 #include "Ap4ByteStream.h"
00010 //#include "Ap4SampleEntry.h"
00011 //#include "Ap4IsmaCryp.h"
00012 //#include "Ap4AvcCAtom.h"
00013 //#include "Ap4FtabAtom.h"
00014 //#include "Ap4MdhdAtom.h"
00015 //#include "Ap4HdlrAtom.h"
00016 
00017 class AP4_AsyncReaderStream : public AP4_ByteStream
00018 {
00019         int m_refs;
00020         CBaseSplitterFile* m_pFile;
00021 
00022 public:
00023         AP4_AsyncReaderStream(CBaseSplitterFile* pFile);
00024         virtual ~AP4_AsyncReaderStream();
00025 
00026         void AddReference();
00027         void Release();
00028 
00029         AP4_Result Read(void* buffer, AP4_Size bytesToRead, AP4_Size* bytesRead);
00030         AP4_Result Write(const void* buffer, AP4_Size bytesToWrite, AP4_Size* bytesWritten);
00031         AP4_Result Seek(AP4_Offset offset);
00032         AP4_Result Tell(AP4_Offset& offset);
00033         AP4_Result GetSize(AP4_Size& size);
00034 };

Generated on Tue Dec 13 14:47:20 2005 for guliverkli by  doxygen 1.4.5