32#if __cplusplus > 199711L
37#include <boost/cstdint.hpp>
38#include <boost/move/unique_ptr.hpp>
39using boost::movelib::unique_ptr;
48#if defined(_WIN32) && defined(_UNICODE)
59 virtual int read(
char* data,
int len) = 0;
71 virtual int read(
char* data,
int len)
override;
76 unique_ptr<std::ifstream> filestream;
77 std::istream::pos_type filesize;
85#if __cplusplus > 199711L
93 std::istream::pos_type
currentPos() {
return other->currentPos(); }
107 unique_ptr<FileInStream> other;
uint64_t bytesRemaining()
friend BinaryReader & operator>>(BinaryReader &istream, double &value)
std::istream::pos_type currentPos()
friend BinaryReader & operator>>(BinaryReader &istream, float &value)
friend BinaryReader & operator>>(BinaryReader &istream, int8_t &value)
friend BinaryReader & operator>>(BinaryReader &istream, uint32_t &value)
friend BinaryReader & operator>>(BinaryReader &istream, int16_t &value)
friend BinaryReader & operator>>(BinaryReader &istream, int32_t &value)
friend BinaryReader & operator>>(BinaryReader &istream, uint16_t &value)
BinaryReader(BOOST_RV_REF(unique_ptr< FileInStream >) other_)
friend BinaryReader & operator>>(BinaryReader &istream, std::wstring &value)
friend BinaryReader & operator>>(BinaryReader &istream, uint8_t &value)
virtual int read(char *data, int len) override
virtual bool open(const FILENAME &filename)
std::istream::pos_type currentPos() override
uint64_t bytesRemaining() override
virtual uint64_t bytesRemaining()=0
virtual int read(char *data, int len)=0
virtual std::istream::pos_type currentPos()=0
Reads Intan Technologies CLAMP data file generated by controller GUI.
FILENAME toFileName(const std::string &s)