Play-/Source/VolumeStream.h

36 lines
649 B
C
Raw Normal View History

#ifndef _VOLUMESTREAM_H_
#define _VOLUMESTREAM_H_
#include <windows.h>
#include "Stream.h"
namespace Framework
{
namespace Win32
{
class CVolumeStream : public CStream
{
public:
CVolumeStream(char);
virtual ~CVolumeStream();
virtual void Seek(int64, STREAM_SEEK_DIRECTION);
virtual uint64 Tell();
virtual uint64 Read(void*, uint64);
virtual uint64 Write(const void*, uint64);
virtual bool IsEOF();
private:
void SyncCache();
HANDLE m_nVolume;
void* m_pCache;
uint64 m_nCacheSector;
uint64 m_nPosition;
uint64 m_nSectorSize;
};
}
}
#endif