DCL 3.7.4
Loading...
Searching...
No Matches
XStringWriter.cpp
Go to the documentation of this file.
1#include <dcl/Config.h>
2
3#ifdef __WINNT__
4#include <windows.h> // Thread
5#endif
6
7#include <dcl/XStringWriter.h>
8
9#if __DCL_HAVE_ALLOC_DEBUG
10#undef __DCL_ALLOC_LEVEL
11#define __DCL_ALLOC_LEVEL __DCL_ALLOC_INTERNAL
12#endif
13
14#if __DCL_HAVE_THIS_FILE__
15#undef __THIS_FILE__
16static const char_t __UNUSED__ __THIS_FILE__[] = __T("dcl/XStringWriter.cpp");
17#endif
18
19__DCL_BEGIN_NAMESPACE
20
22
23void XStringWriter::close()
25{
26 Thread::SingleLockMutex lockAndUnlock(__lock);
27 StringWriter::close();
28}
29
30Writer& XStringWriter::write(const wchar_t* _buf, size_t _n)
32{
33 Thread::SingleLockMutex lockAndUnlock(__lock);
34 StringWriter::write(_buf, _n);
35 return *this;
36}
37
38int XStringWriter::vprintf(const wchar_t* _format, va_list _arglist)
40{
41 Thread::SingleLockMutex lockAndUnlock(__lock);
42 return StringWriter::vprintf(_format, _arglist);
43}
44
45size_t XStringWriter::writeTo(Writer& _writer) _CONST
47{
48 Thread::SingleLockMutex lockAndUnlock(__lock);
49 return StringWriter::writeTo(_writer);
50}
51
52size_t XStringWriter::flushTo(Writer& _writer)
54{
55 Thread::SingleLockMutex lockAndUnlock(__lock);
56 return StringWriter::flushTo(_writer);
57}
58
59void XStringWriter::reset()
60{
61 Thread::SingleLockMutex lockAndUnlock(__lock);
62 return StringWriter::reset();
63}
64
65__DCL_END_NAMESPACE
#define __THIS_FILE__
Definition _trace.h:14
#define __UNUSED__
Definition Config.h:341
wchar_t char_t
Definition Config.h:247
#define _CONST
Definition Config.h:325
#define __DCL_THROWS1(e)
Definition Config.h:152
#define IMPLEMENT_CLASSINFO(class_name, base_class_name)
Definition Object.h:245
#define __T(str)
Definition Object.h:60
SingleLock< Mutex > SingleLockMutex
Definition Thread.h:411
Thread::Mutex __lock