NRE Software
(toggle)
Home
My work
Main Page
Namespaces
Classes
Files
File List
src
IO
FileStream
BinaryInput
Stream
NRE_BinaryInputStream.hpp
Go to the documentation of this file.
1
10
#pragma once
11
12
#include <fstream>
13
18
namespace
NRE
{
23
namespace
IO
{
24
29
class
BinaryInputStream
{
30
public
:
// Methods
31
//## Constructor ##//
35
BinaryInputStream
() =
default
;
36
37
//## Copy-Constructor ##//
42
BinaryInputStream
(
BinaryInputStream
const
& i) =
delete
;
43
44
//## Move-Constructor ##//
49
BinaryInputStream
(
BinaryInputStream
&& i) =
default
;
50
51
//## Deconstructor ##//
55
virtual
~BinaryInputStream
() =
default
;
56
57
//## Getter ##//
61
virtual
std::fstream&
getStream
() = 0;
62
63
//## Methods ##//
69
template
<
class
T>
70
void
readBinary
(T&
object
,
size_t
sizeInBytes) {
71
getStream
().read(reinterpret_cast<char *>(&
object
), sizeInBytes);
72
}
73
74
//## Assignment Operator ##//
80
BinaryInputStream
&
operator =
(
BinaryInputStream
const
& i) =
delete
;
86
BinaryInputStream
&
operator =
(
BinaryInputStream
&& i) =
default
;
87
};
88
}
89
}
NRE::IO::BinaryInputStream::getStream
virtual std::fstream & getStream()=0
IO
IO's API.
NRE::IO::BinaryInputStream::operator=
BinaryInputStream & operator=(BinaryInputStream const &i)=delete
NRE::IO::BinaryInputStream::BinaryInputStream
BinaryInputStream()=default
NRE::IO::BinaryInputStream
Base interface for binary input related stream.
Definition:
NRE_BinaryInputStream.hpp:29
NRE::IO::BinaryInputStream::readBinary
void readBinary(T &object, size_t sizeInBytes)
Definition:
NRE_BinaryInputStream.hpp:70
NRE
The NearlyRealEngine's global namespace.
NRE::IO::BinaryInputStream::~BinaryInputStream
virtual ~BinaryInputStream()=default