39#ifndef BLOCXX_TEMPFILESTREAM_HPP_INCLUDE_GUARD_
40#define BLOCXX_TEMPFILESTREAM_HPP_INCLUDE_GUARD_
41#include "blocxx/BLOCXX_config.h"
48#if defined(BLOCXX_HAVE_STREAMBUF)
50#elif defined(BLOCXX_HAVE_STREAMBUF_H)
54#if defined(BLOCXX_HAVE_ISTREAM) && defined(BLOCXX_HAVE_OSTREAM)
91 TempFileBuffer(
size_t bufSize, EKeepFileFlag keepflg=E_DONT_KEEP_FILE);
112 std::streamsize getSize();
134 String releaseFileAndReset();
141 bool usingTempFile()
const;
146 std::streamsize xsputn(
const char* s, std::streamsize n);
147 virtual int overflow(
int c);
150 void initGetBuffer();
151 void initPutBuffer();
152 int buffer_to_device(
const char* c,
int n);
153 int buffer_from_device(
char* c,
int n);
234 String releaseFileAndReset();
241 bool usingTempFile()
const;
245#pragma warning (push)
246#pragma warning (disable: 4251)
The AutoPtr class provides a simple class for smart pointers to single objects (for multiple,...
The purpose of the File class is to provide an abstraction layer over the platform dependant function...
This String class is an abstract data type that represents as NULL terminated string of characters.
TempFileBuffer & operator=(const TempFileBuffer &arg)
std::streamsize m_readPos
TempFileBuffer(size_t bufSize, EKeepFileFlag keepflg=E_DONT_KEEP_FILE)
Create a new TempFileBuffer object.
TempFileBuffer(const TempFileBuffer &arg)
std::streamsize m_writePos
std::streamsize getSize()
TempFileStream & operator=(const TempFileStream &)
TempFileStream(const TempFileStream &)
AutoPtr< TempFileBuffer > m_buffer
TempFileStream(size_t bufSize=4096, TempFileBuffer::EKeepFileFlag keepflg=TempFileBuffer::E_DONT_KEEP_FILE)
Create a new TempFileStream object.