1 // ***************************************************************************
2 // ILocalIODevice_p.h (c) 2011 Derek Barnett
3 // Marth Lab, Department of Biology, Boston College
4 // ---------------------------------------------------------------------------
5 // Last modified: 10 October 2011 (DB)
6 // ---------------------------------------------------------------------------
7 // Provides shared behavior for files & pipes
8 // ***************************************************************************
10 #ifndef ILOCALIODEVICE_P_H
11 #define ILOCALIODEVICE_P_H
17 // This file is not part of the BamTools API. It exists purely as an
18 // implementation detail. This header file may change from version to version
19 // without notice, or even be removed.
23 #include "api/IBamIODevice.h"
28 class ILocalIODevice : public IBamIODevice {
33 virtual ~ILocalIODevice(void);
35 // IBamIODevice implementation
37 virtual void Close(void);
38 virtual int64_t Read(char* data, const unsigned int numBytes);
39 virtual int64_t Tell(void) const;
40 virtual int64_t Write(const char* data, const unsigned int numBytes);
47 } // namespace Internal
48 } // namespace BamTools
50 #endif // ILOCALIODEVICE_P_H