1//
2// HTTPBufferAllocator.h
3//
4// Library: Net
5// Package: HTTP
6// Module: HTTPBufferAllocator
7//
8// Definition of the HTTPBufferAllocator class.
9//
10// Copyright (c) 2005-2006, Applied Informatics Software Engineering GmbH.
11// and Contributors.
12//
13// SPDX-License-Identifier: BSL-1.0
14//
15
16
17#ifndef Net_HTTPBufferAllocator_INCLUDED
18#define Net_HTTPBufferAllocator_INCLUDED
19
20
21#include "Poco/Net/Net.h"
22#include "Poco/MemoryPool.h"
23#include <ios>
24
25
26namespace Poco {
27namespace Net {
28
29
30class Net_API HTTPBufferAllocator
31 /// A BufferAllocator for HTTP streams.
32{
33public:
34 static char* allocate(std::streamsize size);
35 static void deallocate(char* ptr, std::streamsize size);
36
37 enum
38 {
39 BUFFER_SIZE = 4096
40 };
41
42private:
43 static Poco::MemoryPool _pool;
44};
45
46
47} } // namespace Poco::Net
48
49
50#endif // Net_HTTPBufferAllocator_INCLUDED
51