My Project
binaryIO.h
Go to the documentation of this file.
1 /* binaryIO.h
2  */
3 #ifndef OSL_BINARYIO_H
4 #define OSL_BINARYIO_H
5 #include <vector>
6 #include <memory>
7 #include <iosfwd>
8 
9 namespace osl
10 {
11  namespace misc
12  {
13  struct BinaryWriter
14  {
15  static void write(std::ostream&, const std::vector<int>& data);
16  static void write(std::ostream&, const std::vector<double>& data);
17  };
18  template <class T>
20  {
21  public:
22  explicit BinaryReader(std::istream& is);
23  ~BinaryReader();
24 
25  bool read(std::vector<T>& data);
26  static size_t blockSize();
27  private:
28  struct State;
29  std::unique_ptr<State> state;
30  };
31 
32  template <class T>
34  {
35  public:
36  explicit BinaryElementReader(std::istream& is);
38 
39  T read();
40  bool hasNext() const;
41  bool failed() const;
42  private:
43  struct State;
44  std::unique_ptr<State> state;
45  };
46  }
47 }
48 
49 #endif /* OSL_BINARYIO_H */
50 // ;;; Local Variables:
51 // ;;; mode:c++
52 // ;;; c-basic-offset:2
53 // ;;; End:
osl::misc::BinaryElementReader::hasNext
bool hasNext() const
Definition: binaryIO.cc:151
osl::misc::BinaryWriter::write
static void write(std::ostream &, const std::vector< int > &data)
Definition: binaryIO.cc:43
osl::misc::BinaryWriter
Definition: binaryIO.h:14
osl::misc::BinaryReader
Definition: binaryIO.h:20
osl::misc::BinaryReader::~BinaryReader
~BinaryReader()
Definition: binaryIO.cc:60
osl::misc::BinaryElementReader::BinaryElementReader
BinaryElementReader(std::istream &is)
Definition: binaryIO.cc:141
osl::misc::BinaryElementReader::State
Definition: binaryIO.cc:104
osl::misc::BinaryReader::state
std::unique_ptr< State > state
Definition: binaryIO.h:28
osl::misc::BinaryReader::State
Definition: binaryIO.cc:66
osl::misc::BinaryElementReader::failed
bool failed() const
Definition: binaryIO.cc:157
osl::misc::BinaryElementReader::~BinaryElementReader
~BinaryElementReader()
Definition: binaryIO.cc:146
osl::misc::BinaryElementReader
Definition: binaryIO.h:34
osl::misc::BinaryReader::BinaryReader
BinaryReader(std::istream &is)
Definition: binaryIO.cc:55
osl::misc::BinaryReader::read
bool read(std::vector< T > &data)
Definition: binaryIO.cc:90
osl::misc::BinaryElementReader::state
std::unique_ptr< State > state
Definition: binaryIO.h:43
misc
osl::misc::BinaryReader::blockSize
static size_t blockSize()
Definition: binaryIO.cc:96
osl::misc::BinaryElementReader::read
T read()
Definition: binaryIO.cc:162
osl
Definition: additionalEffect.h:6