SFML 2.5.1
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
include
SFML
System
MemoryInputStream.hpp
1
//
3
// SFML - Simple and Fast Multimedia Library
4
// Copyright (C) 2007-2018 Laurent Gomila (laurent@sfml-dev.org)
5
//
6
// This software is provided 'as-is', without any express or implied warranty.
7
// In no event will the authors be held liable for any damages arising from the use of this software.
8
//
9
// Permission is granted to anyone to use this software for any purpose,
10
// including commercial applications, and to alter it and redistribute it freely,
11
// subject to the following restrictions:
12
//
13
// 1. The origin of this software must not be misrepresented;
14
// you must not claim that you wrote the original software.
15
// If you use this software in a product, an acknowledgment
16
// in the product documentation would be appreciated but is not required.
17
//
18
// 2. Altered source versions must be plainly marked as such,
19
// and must not be misrepresented as being the original software.
20
//
21
// 3. This notice may not be removed or altered from any source distribution.
22
//
24
25
#ifndef SFML_MEMORYINPUTSTREAM_HPP
26
#define SFML_MEMORYINPUTSTREAM_HPP
27
29
// Headers
31
#include <SFML/Config.hpp>
32
#include <SFML/System/InputStream.hpp>
33
#include <SFML/System/Export.hpp>
34
#include <cstdlib>
35
36
37
namespace
sf
38
{
43
class
SFML_SYSTEM_API
MemoryInputStream
:
public
InputStream
44
{
45
public
:
46
51
MemoryInputStream
();
52
60
void
open(
const
void
* data, std::size_t sizeInBytes);
61
74
virtual
Int64 read(
void
* data, Int64 size);
75
84
virtual
Int64 seek(Int64 position);
85
92
virtual
Int64 tell();
93
100
virtual
Int64 getSize();
101
102
private
:
103
105
// Member data
107
const
char
* m_data;
108
Int64 m_size;
109
Int64 m_offset;
110
};
111
112
}
// namespace sf
113
114
115
#endif // SFML_MEMORYINPUTSTREAM_HPP
116
117
sf::InputStream
Abstract class for custom file input streams.
Definition:
InputStream.hpp:41
sf::MemoryInputStream
Implementation of input stream based on a memory chunk.
Definition:
MemoryInputStream.hpp:43