Core: Merge InputStream and OutputStream to Stream

Remove serialization support from Stream


Former-commit-id: 7a761e4fcd07cab561f13e4709c4492ed18da88a
This commit is contained in:
Lynix
2015-11-20 13:52:49 +01:00
parent a47e5633d4
commit ed961f5ba8
66 changed files with 372 additions and 565 deletions

View File

@@ -5,7 +5,7 @@
#include <Nazara/Utility/Formats/DDSLoader.hpp>
#include <Nazara/Core/Endianness.hpp>
#include <Nazara/Core/Error.hpp>
#include <Nazara/Core/InputStream.hpp>
#include <Nazara/Core/Stream.hpp>
#include <Nazara/Utility/Image.hpp>
#include <Nazara/Utility/Formats/DDSConstants.hpp>
#include <memory>
@@ -20,7 +20,7 @@ namespace Nz
return (extension == "dds");
}
Ternary Check(InputStream& stream, const ImageParams& parameters)
Ternary Check(Stream& stream, const ImageParams& parameters)
{
NazaraUnused(parameters);
@@ -38,7 +38,7 @@ namespace Nz
return Ternary_False;
}
bool Load(Image* image, InputStream& stream, const ImageParams& parameters)
bool Load(Image* image, Stream& stream, const ImageParams& parameters)
{
NazaraUnused(parameters);

View File

@@ -8,8 +8,8 @@
#include FT_BITMAP_H
#include FT_OUTLINE_H
#include <Nazara/Core/Error.hpp>
#include <Nazara/Core/InputStream.hpp>
#include <Nazara/Core/MemoryView.hpp>
#include <Nazara/Core/Stream.hpp>
#include <Nazara/Utility/Font.hpp>
#include <Nazara/Utility/FontData.hpp>
#include <Nazara/Utility/FontGlyph.hpp>
@@ -31,7 +31,7 @@ namespace Nz
unsigned long FT_StreamRead(FT_Stream stream, unsigned long offset, unsigned char* buffer, unsigned long count)
{
// http://www.freetype.org/freetype2/docs/reference/ft2-system_interface.html#FT_Stream_IoFunc
InputStream& inputStream = *static_cast<InputStream*>(stream->descriptor.pointer);
Stream& inputStream = *static_cast<Stream*>(stream->descriptor.pointer);
// La valeur de count indique une opération de lecture ou de positionnement
if (count > 0)
@@ -298,7 +298,7 @@ namespace Nz
SetStream(*m_ownedStream);
}
void SetStream(InputStream& stream)
void SetStream(Stream& stream)
{
m_stream.base = nullptr;
m_stream.close = FT_StreamClose;
@@ -332,7 +332,7 @@ namespace Nz
FT_Face m_face;
FT_StreamRec m_stream;
std::shared_ptr<FreeTypeLibrary> m_library;
std::unique_ptr<InputStream> m_ownedStream;
std::unique_ptr<Stream> m_ownedStream;
mutable unsigned int m_characterSize;
};
@@ -346,7 +346,7 @@ namespace Nz
return supportedExtensions.find(extension) != supportedExtensions.end();
}
Ternary Check(InputStream& stream, const FontParams& parameters)
Ternary Check(Stream& stream, const FontParams& parameters)
{
NazaraUnused(parameters);
@@ -408,7 +408,7 @@ namespace Nz
return false;
}
bool LoadStream(Font* font, InputStream& stream, const FontParams& parameters)
bool LoadStream(Font* font, Stream& stream, const FontParams& parameters)
{
NazaraUnused(parameters);

View File

@@ -5,7 +5,7 @@
#include <Nazara/Utility/Formats/MD2Loader.hpp>
#include <Nazara/Core/Endianness.hpp>
#include <Nazara/Core/Error.hpp>
#include <Nazara/Core/InputStream.hpp>
#include <Nazara/Core/Stream.hpp>
#include <Nazara/Math/Algorithm.hpp>
#include <Nazara/Math/Quaternion.hpp>
#include <Nazara/Utility/BufferMapper.hpp>
@@ -26,7 +26,7 @@ namespace Nz
return (extension == "md2");
}
Ternary Check(InputStream& stream, const MeshParams& parameters)
Ternary Check(Stream& stream, const MeshParams& parameters)
{
NazaraUnused(parameters);
@@ -45,7 +45,7 @@ namespace Nz
return Ternary_False;
}
bool Load(Mesh* mesh, InputStream& stream, const MeshParams& parameters)
bool Load(Mesh* mesh, Stream& stream, const MeshParams& parameters)
{
MD2_Header header;
if (stream.Read(&header, sizeof(MD2_Header)) != sizeof(MD2_Header))

View File

@@ -15,7 +15,7 @@ namespace Nz
return (extension == "md5anim");
}
Ternary Check(InputStream& stream, const AnimationParams& parameters)
Ternary Check(Stream& stream, const AnimationParams& parameters)
{
NazaraUnused(parameters);
@@ -23,7 +23,7 @@ namespace Nz
return parser.Check();
}
bool Load(Animation* animation, InputStream& stream, const AnimationParams& parameters)
bool Load(Animation* animation, Stream& stream, const AnimationParams& parameters)
{
///TODO: Utiliser les paramètres
MD5AnimParser parser(stream);

View File

@@ -15,22 +15,22 @@
namespace Nz
{
MD5AnimParser::MD5AnimParser(InputStream& stream) :
MD5AnimParser::MD5AnimParser(Stream& stream) :
m_stream(stream),
m_keepLastLine(false),
m_frameIndex(0),
m_frameRate(0),
m_lineCount(0),
m_streamFlags(stream.GetStreamOptions())
m_streamFlags(stream.GetStreamOptions()) //< Saves stream flags
{
if ((m_streamFlags & StreamOption_Text) == 0)
m_stream.SetStreamOptions(m_streamFlags | StreamOption_Text);
m_stream.EnableTextMode(true);
}
MD5AnimParser::~MD5AnimParser()
{
// Reset stream flags
if ((m_streamFlags & StreamOption_Text) == 0)
m_stream.SetStreamOptions(m_streamFlags);
m_stream.EnableTextMode(false);
}
Ternary MD5AnimParser::Check()

View File

@@ -20,7 +20,7 @@ namespace Nz
return (extension == "md5mesh");
}
Ternary Check(InputStream& stream, const MeshParams& parameters)
Ternary Check(Stream& stream, const MeshParams& parameters)
{
NazaraUnused(parameters);
@@ -28,7 +28,7 @@ namespace Nz
return parser.Check();
}
bool Load(Mesh* mesh, InputStream& stream, const MeshParams& parameters)
bool Load(Mesh* mesh, Stream& stream, const MeshParams& parameters)
{
MD5MeshParser parser(stream);
if (!parser.Parse())

View File

@@ -21,21 +21,21 @@
namespace Nz
{
MD5MeshParser::MD5MeshParser(InputStream& stream) :
MD5MeshParser::MD5MeshParser(Stream& stream) :
m_stream(stream),
m_keepLastLine(false),
m_lineCount(0),
m_meshIndex(0),
m_streamFlags(stream.GetStreamOptions())
m_streamFlags(stream.GetStreamOptions()) //< Saves stream flags
{
if ((m_streamFlags & StreamOption_Text) == 0)
m_stream.SetStreamOptions(m_streamFlags | StreamOption_Text);
m_stream.EnableTextMode(true);
}
MD5MeshParser::~MD5MeshParser()
{
// Reset stream flags
if ((m_streamFlags & StreamOption_Text) == 0)
m_stream.SetStreamOptions(m_streamFlags);
m_stream.EnableTextMode(false);
}
Ternary MD5MeshParser::Check()

View File

@@ -12,18 +12,18 @@
namespace Nz
{
MTLParser::MTLParser(InputStream& stream) :
MTLParser::MTLParser(Stream& stream) :
m_stream(stream),
m_streamFlags(stream.GetStreamOptions())
m_streamFlags(stream.GetStreamOptions()) //< Saves stream flags
{
if ((m_streamFlags & StreamOption_Text) == 0)
m_stream.SetStreamOptions(m_streamFlags | StreamOption_Text);
m_stream.EnableTextMode(true);
}
MTLParser::~MTLParser()
{
// Reset stream flags
if ((m_streamFlags & StreamOption_Text) == 0)
m_stream.SetStreamOptions(m_streamFlags);
m_stream.EnableTextMode(false);
}
const MTLParser::Material* MTLParser::GetMaterial(const String& materialName) const

View File

@@ -13,18 +13,18 @@
namespace Nz
{
OBJParser::OBJParser(InputStream& stream) :
OBJParser::OBJParser(Stream& stream) :
m_stream(stream),
m_streamFlags(stream.GetStreamOptions())
m_streamFlags(stream.GetStreamOptions()) //< Saves stream flags
{
if ((m_streamFlags & StreamOption_Text) == 0)
m_stream.SetStreamOptions(m_streamFlags | StreamOption_Text);
m_stream.EnableTextMode(true);
}
OBJParser::~OBJParser()
{
// Reset stream flags
if ((m_streamFlags & StreamOption_Text) == 0)
m_stream.SetStreamOptions(m_streamFlags);
m_stream.EnableTextMode(false);
}
const String* OBJParser::GetMaterials() const

View File

@@ -5,7 +5,7 @@
#include <Nazara/Utility/Formats/PCXLoader.hpp>
#include <Nazara/Core/Endianness.hpp>
#include <Nazara/Core/Error.hpp>
#include <Nazara/Core/InputStream.hpp>
#include <Nazara/Core/Stream.hpp>
#include <Nazara/Utility/Image.hpp>
#include <memory>
#include <Nazara/Utility/Debug.hpp>
@@ -45,7 +45,7 @@ namespace Nz
return (extension == "pcx");
}
Ternary Check(InputStream& stream, const ImageParams& parameters)
Ternary Check(Stream& stream, const ImageParams& parameters)
{
NazaraUnused(parameters);
@@ -59,7 +59,7 @@ namespace Nz
return Ternary_False;
}
bool Load(Image* image, InputStream& stream, const ImageParams& parameters)
bool Load(Image* image, Stream& stream, const ImageParams& parameters)
{
NazaraUnused(parameters);

View File

@@ -7,8 +7,8 @@
#include <Nazara/Core/Endianness.hpp>
#include <Nazara/Core/Error.hpp>
#include <Nazara/Core/File.hpp>
#include <Nazara/Core/InputStream.hpp>
#include <Nazara/Core/MemoryView.hpp>
#include <Nazara/Core/Stream.hpp>
#include <Nazara/Utility/Image.hpp>
#include <set>
#include <Nazara/Utility/Debug.hpp>
@@ -19,19 +19,19 @@ namespace Nz
{
int Read(void* userdata, char* data, int size)
{
InputStream* stream = static_cast<InputStream*>(userdata);
Stream* stream = static_cast<Stream*>(userdata);
return static_cast<int>(stream->Read(data, size));
}
void Skip(void* userdata, int size)
{
InputStream* stream = static_cast<InputStream*>(userdata);
Stream* stream = static_cast<Stream*>(userdata);
stream->SetCursorPos(static_cast<Int64>(stream->GetCursorPos()) + static_cast<Int64>(size));
}
int Eof(void* userdata)
{
InputStream* stream = static_cast<InputStream*>(userdata);
Stream* stream = static_cast<Stream*>(userdata);
return stream->GetCursorPos() >= stream->GetSize();
}
@@ -43,7 +43,7 @@ namespace Nz
return supportedExtensions.find(extension) != supportedExtensions.end();
}
Ternary Check(InputStream& stream, const ImageParams& parameters)
Ternary Check(Stream& stream, const ImageParams& parameters)
{
NazaraUnused(parameters);
@@ -54,7 +54,7 @@ namespace Nz
return Ternary_False;
}
bool Load(Image* image, InputStream& stream, const ImageParams& parameters)
bool Load(Image* image, Stream& stream, const ImageParams& parameters)
{
// Je charge tout en RGBA8 et je converti ensuite via la méthode Convert
// Ceci à cause d'un bug de STB lorsqu'il s'agit de charger certaines images (ex: JPG) en "default"