|
libjmmcg
release_579_6_g8cffd
A C++ library containing an eclectic mix of useful, advanced components.
|
#include <SharedMemory.hpp>
Classes | |
| struct | allocated_data_block_info |
| struct | private_data_block_type |
Public Member Functions | |
| ManagedSharedMemory (const std::string &mgr_name, const HeapID &details, const DWORD protection=PAGE_READWRITE, HANDLE file=INVALID_HANDLE_VALUE) | |
| virtual | ~ManagedSharedMemory () |
| contents * | Allocate (const unsigned long n, const void *const hint) |
| void | Construct (contents *const ptr, const contents &val) |
| void | Deallocate (const contents *const p, const unsigned long n) |
Public Member Functions inherited from jmmcg::LIBJMMCG_VER_NAMESPACE::NTUtils::RawSharedMemory< contents > | |
| RawSharedMemory (const HeapID &details, const DWORD protection=PAGE_READWRITE, HANDLE file=INVALID_HANDLE_VALUE) | |
| virtual | ~RawSharedMemory (void) |
| const std::string & | Name (void) const noexcept(true) |
| virtual unsigned long | Capacity (void) const noexcept(true) |
| virtual bool | Capacity (const unsigned long sz, const DWORD protection=PAGE_READWRITE, HANDLE file=INVALID_HANDLE_VALUE) |
| bool | IsCreator (void) const noexcept(true) |
| operator const contents * () const | |
| operator contents * () | |
| NTUtils::Mutex & | Lock (void) noexcept(true) |
| virtual std::ostream & | operator<< (std::ostream &strm) const |
| virtual std::istream & | operator>> (std::istream &strm) |
| unsigned long | UsageCount (void) const noexcept(true) |
Protected Member Functions | |
| ManagedSharedMemory (const unsigned long p, const std::string &mgr_name, const HeapID &details, const DWORD protection=PAGE_READWRITE, HANDLE file=INVALID_HANDLE_VALUE) | |
| virtual contents * | BaseAllocate (const unsigned long n, const void *const hint)=0 |
| virtual unsigned long | BaseDeallocate (const contents *const p, const unsigned long n)=0 |
Protected Member Functions inherited from jmmcg::LIBJMMCG_VER_NAMESPACE::NTUtils::RawSharedMemory< contents > | |
| RawSharedMemory (const unsigned long p, const HeapID &details, const DWORD protection=PAGE_READWRITE, HANDLE file=INVALID_HANDLE_VALUE) | |
| contents * | MapDataPtr (HANDLE file, const DWORD access, const DWORD hi_offset, const DWORD low_offset, const unsigned long size) |
| void | UnmapDataPtr (const contents *) |
Static Protected Member Functions | |
| static unsigned long | GetEndPrivateDataBlock (void) noexcept(true) |
Static Protected Member Functions inherited from jmmcg::LIBJMMCG_VER_NAMESPACE::NTUtils::RawSharedMemory< contents > | |
| static unsigned long | GetEndPrivateDataBlock (void) noexcept(true) |
Additional Inherited Members | |
Public Types inherited from jmmcg::LIBJMMCG_VER_NAMESPACE::NTUtils::RawSharedMemory< contents > | |
| typedef contents | contents_type |
Protected Attributes inherited from jmmcg::LIBJMMCG_VER_NAMESPACE::NTUtils::RawSharedMemory< contents > | |
| const NTUtils::SecuritySettings *const | ss |
| NTUtils::Mutex | mutex |
| HANDLE | rw_pub_mapping |
| HANDLE | ro_pub_mapping |
| contents * | rw_raw_data |
| contents * | rw_pub_data |
| const contents * | ro_pub_data |
Definition at line 128 of file SharedMemory.hpp.
|
inline |
Definition at line 467 of file SharedMemory.hpp.
|
inlinevirtual |
Definition at line 478 of file SharedMemory.hpp.
|
inlineprotected |
Definition at line 522 of file SharedMemory.hpp.
|
inline |
Definition at line 481 of file SharedMemory.hpp.
References jmmcg::LIBJMMCG_VER_NAMESPACE::NTUtils::ManagedSharedMemory< contents >::BaseAllocate().
|
inlineprotectedpure virtual |
|
inlineprotectedpure virtual |
|
inline |
Definition at line 496 of file SharedMemory.hpp.
|
inline |
Definition at line 489 of file SharedMemory.hpp.
References jmmcg::LIBJMMCG_VER_NAMESPACE::NTUtils::ManagedSharedMemory< contents >::BaseDeallocate().
|
inlinestaticprotectednoexcept |
Definition at line 533 of file SharedMemory.hpp.