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)
51 #include <streambuf.h>
54 #if defined(BLOCXX_HAVE_ISTREAM) && defined(BLOCXX_HAVE_OSTREAM)
70 namespace BLOCXX_NAMESPACE
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);
216 std::streamsize
getSize() {
return m_buffer->getSize(); }
234 String releaseFileAndReset();
241 bool usingTempFile()
const;
245 #pragma warning (push)
246 #pragma warning (disable: 4251)
252 #pragma warning (pop)