/*
- * $Id$
+ * Copyright (C) 1996-2015 The Squid Software Foundation and contributors
*
+ * Squid software is distributed under GPLv2+ license and includes
+ * contributions from numerous individuals and organizations.
+ * Please see the COPYING and CONTRIBUTORS files for details.
*/
#ifndef SQUID_IPC_MEM_PAGE_POOL_H
#include "ipc/mem/PageStack.h"
#include "ipc/mem/Pointer.h"
-namespace Ipc {
+namespace Ipc
+{
-namespace Mem {
+namespace Mem
+{
/// Atomic container of shared memory pages. Implemented using a collection of
/// Segments, each with a PageStack index of free pages. All pools must be
/// created by a single process.
-class PagePool {
+class PagePool
+{
public:
typedef Ipc::Mem::Owner<PageStack> Owner;
private:
Ipc::Mem::Pointer<PageStack> pageIndex; ///< free pages index
/// number of shared memory pages used now for each purpose
- AtomicWord *const theLevels;
+ Atomic::Word *const theLevels;
char *const theBuf; ///< pages storage
};
} // namespace Ipc
#endif // SQUID_IPC_MEM_PAGE_POOL_H
+