1
0
mirror of https://github.com/Halofreak1990/XFXFramework synced 2024-12-26 13:49:34 +01:00
Halofreak1990 1bf933432b List class now works.
TextureCollection is broken because it can somehow not resolve Texture as template argument for the List it uses.
Added missing BinaryWriter and TextWriter classes to System::IO namespace
Modified BinaryReader
Added PacketReader and PacketWriter classes to XFX::Net namespace
2011-03-10 22:55:43 +00:00

64 lines
1.7 KiB
C++

/********************************************************
* Stream.h *
* *
* XFX Stream definition file *
* Copyright © XFX Team. All Rights Reserved *
********************************************************/
#ifndef _SYSTEM_IO_STREAM_
#define _SYSTEM_IO_STREAM_
#include <System/Types.h>
#include "Enums.h"
#include <System/Delegates.h>
#include <System/Interfaces.h>
namespace System
{
class WaitHandle;
namespace IO
{
/// <summary>
/// Provides a generic view of a sequence of bytes.
/// </summary>
class Stream : public IDisposable
{
private:
int _asyncActiveCount;
protected:
virtual void Dispose(bool disposing);
public:
virtual bool CanRead();
virtual bool CanSeek();
virtual bool CanTimeOut();
virtual bool CanWrite();
virtual Int64 Length();
Int64 Position;
int ReadTimeOut;
int WriteTimeOut;
static const Stream* Null;
Stream();
virtual ~Stream();
virtual IAsyncResult* BeginRead(byte buffer[], int offset, int count, AsyncCallback callback, Object* state);
virtual IAsyncResult* BeginWrite(byte buffer[], int offset, int count, AsyncCallback callback, Object* state);
virtual void Close();
void Dispose();
virtual int EndRead(IAsyncResult* asyncResult);
virtual void EndWrite(IAsyncResult* asyncResult);
virtual void Flush();
virtual int Read(byte buffer[], int offset, int count);
virtual int ReadByte();
virtual Int64 Seek(Int64 offset, SeekOrigin_t origin);
virtual void SetLength(Int64 value);
virtual void Write(byte buffer[], int offset, int count);
virtual void WriteByte(byte value);
};
}
}
#endif //_SYSTEM_IO_STREAM_