| 12345678910111213141516171819202122232425262728 | #pragma once#include <stdint.h>  // for uint8_t, int16_t, int32_t, uint32_t#include <stdlib.h>  // for size_t#include <memory>    // for shared_ptr#include <vector>    // for vectornamespace bell {class ByteStream;class BinaryReader {  std::shared_ptr<ByteStream> stream;  size_t currentPos = 0; public:  BinaryReader(std::shared_ptr<ByteStream> stream);  int32_t readInt();  int16_t readShort();  uint32_t readUInt();  long long readLong();  void close();  uint8_t readByte();  size_t size();  size_t position();  std::vector<uint8_t> readBytes(size_t);  void skip(size_t);};}  // namespace bell
 |