DCL 4.0
Loading...
Searching...
No Matches
BytesOutputStream.h
Go to the documentation of this file.
1#ifndef __DCL_BYTES_OUTPUT_STREAM_H__
2#define __DCL_BYTES_OUTPUT_STREAM_H__ 20110221
3
4#ifndef __DCL_OUTPUT_STRAEM_H__
5#include <dcl/OutputStream.h>
6#endif
7#ifndef __DCL_STRING_H__
8#include <dcl/String.h>
9#endif
10
11__DCL_BEGIN_NAMESPACE
12
23class DCLCAPI BytesOutputStream : public OutputStream
24{
25 DECLARE_CLASSINFO(BytesOutputStream)
26public:
30 ByteString toByteString() const;
31
43 BytesOutputStream(size_t _initial = 4096);
44
49 virtual ~BytesOutputStream();
50
54 virtual void close()
56
66 virtual OutputStream& write(const void* _buf, size_t _n)
68
77 virtual size_t writeTo(OutputStream& _output) const
79
89 virtual int vprintf(const char* _format, va_list _arglist)
91
100 virtual size_t flushTo(OutputStream& _output)
102
106 virtual void reset();
107
113 const void* data() const;
114
118 size_t size() const;
119
120protected:
121 ByteBuffer* __buf;
123};
124
125inline const void* BytesOutputStream::data() const
126{
127 return __buf != NULL ? __buf->data() : NULL;
128}
129
130inline size_t BytesOutputStream::size() const
131{
132 return __buf != NULL ? __buf->__dataLength : 0;
133}
134
135__DCL_END_NAMESPACE
136
137#endif // __DCL_BYTES_OUTPUT_STREAM_H__
#define NULL
Definition Config.h:340
#define DCLCAPI
Definition Config.h:100
#define __DCL_THROWS1(e)
Definition Config.h:167
#define DECLARE_CLASSINFO(class_name)
Definition Object.h:210