Added NzStream and stream options

Former-commit-id: d2c69b12f34fffff4d412111e7af7cc4dbb638a8
This commit is contained in:
Lynix
2012-10-01 00:57:32 +02:00
parent aaca9349fd
commit 07e949404c
7 changed files with 66 additions and 32 deletions

View File

@@ -27,4 +27,11 @@ enum nzErrorType
nzErrorType_Max = nzErrorType_Warning
};
enum nzStreamOptionFlags
{
nzStreamOption_None = 0x0,
nzStreamOption_Text = 0x1
};
#endif // NAZARA_ENUMS_CORE_HPP

View File

@@ -72,7 +72,6 @@ class NAZARA_API NzFile : public NzHashable, public NzInputStream, NzNonCopyable
NzString GetFileName() const;
time_t GetLastAccessTime() const;
time_t GetLastWriteTime() const;
NzString GetLine(unsigned int lineSize = 0) override;
nzUInt64 GetSize() const;
bool IsOpen() const;

View File

@@ -8,23 +8,21 @@
#define NAZARA_INPUTSTREAM_HPP
#include <Nazara/Prerequesites.hpp>
#include <Nazara/Core/Stream.hpp>
class NzString;
class NzInputStream
class NAZARA_API NzInputStream : public NzStream
{
public:
virtual ~NzInputStream();
virtual bool EndOfStream() const = 0;
virtual nzUInt64 GetCursorPos() const = 0;
virtual NzString GetLine(unsigned int lineSize = 0);
virtual nzUInt64 GetSize() const = 0;
virtual std::size_t Read(void* buffer, std::size_t size) = 0;
virtual bool SetCursorPos(nzUInt64 offset) = 0;
};
#endif // NAZARA_INPUTSTREAM_HPP

View File

@@ -0,0 +1,28 @@
// Copyright (C) 2012 Jérôme Leclercq
// This file is part of the "Nazara Engine - Core module"
// For conditions of distribution and use, see copyright notice in Config.hpp
#pragma once
#ifndef NAZARA_STREAM_HPP
#define NAZARA_STREAM_HPP
#include <Nazara/Prerequesites.hpp>
#include <Nazara/Core/Enums.hpp>
class NAZARA_API NzStream
{
public:
virtual ~NzStream();
virtual nzUInt64 GetCursorPos() const = 0;
unsigned int GetStreamOptions() const;
virtual bool SetCursorPos(nzUInt64 offset) = 0;
void SetStreamOptions(unsigned int options);
protected:
unsigned int m_streamOptions;
};
#endif // NAZARA_STREAM_HPP