- Main Page
- Namespaces
- Classes
- Files
- Directories

- File List
- File Members

# 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 };