# PMemBuffer< Locker_T > Class Template Reference

`#include <opalmixer.h>`

List of all members.

## Public Member Functions

| PMemBuffer ()
| PMemBuffer (PINDEX size)
| PMemBuffer (BYTE *ptr, size_t size)
| PMemBuffer (const PBYTEArray &obj)
| PMemBuffer (const PMemBuffer &obj)
| ~PMemBuffer ()
PMemBuffer & | operator= (const PMemBuffer &obj)
void | MakeUnique ()
void | SetBase (PINDEX offs)
void | Rebase (PINDEX offs)
void | SetSize (PINDEX size)
BYTE * | GetPointerAndLock ()
const BYTE * | GetPointerAndLock () const
PINDEX | GetSize () const
void | Lock () const
void | Unlock () const
PSync & | GetMutex ()

## Public Attributes

Common * | common

## Protected Attributes

BYTE * | data
PINDEX | dataLen

## Classes

struct | Common

### template<typename Locker_T = PSyncNULL>
class PMemBuffer< Locker_T >

## Constructor & Destructor Documentation

template<typename Locker_T = PSyncNULL>

PMemBuffer< Locker_T >::PMemBuffer | ( |  | ) | `[inline]`

template<typename Locker_T = PSyncNULL>

PMemBuffer< Locker_T >::PMemBuffer | ( | PINDEX | size | ) | `[inline]`

template<typename Locker_T = PSyncNULL>

PMemBuffer< Locker_T >::PMemBuffer | ( | BYTE * | ptr,
|  | size_t | size |
| ) |  |  | `[inline]`

template<typename Locker_T = PSyncNULL>

PMemBuffer< Locker_T >::PMemBuffer | ( | const PBYTEArray & | obj | ) | `[inline]`

template<typename Locker_T = PSyncNULL>

PMemBuffer< Locker_T >::PMemBuffer | ( | const PMemBuffer< Locker_T > & | obj | ) | `[inline]`

template<typename Locker_T = PSyncNULL>

PMemBuffer< Locker_T >::~PMemBuffer | ( |  | ) | `[inline]`

## Member Function Documentation

template<typename Locker_T = PSyncNULL>

PMemBuffer& PMemBuffer< Locker_T >::operator= | ( | const PMemBuffer< Locker_T > & | obj | ) | `[inline]`

template<typename Locker_T = PSyncNULL>

void PMemBuffer< Locker_T >::MakeUnique | ( |  | ) | `[inline]`

template<typename Locker_T = PSyncNULL>

void PMemBuffer< Locker_T >::SetBase | ( | PINDEX | offs | ) | `[inline]`

template<typename Locker_T = PSyncNULL>

void PMemBuffer< Locker_T >::Rebase | ( | PINDEX | offs | ) | `[inline]`

template<typename Locker_T = PSyncNULL>

void PMemBuffer< Locker_T >::SetSize | ( | PINDEX | size | ) | `[inline]`

template<typename Locker_T = PSyncNULL>

BYTE* PMemBuffer< Locker_T >::GetPointerAndLock | ( |  | ) | `[inline]`

template<typename Locker_T = PSyncNULL>

const BYTE* PMemBuffer< Locker_T >::GetPointerAndLock | ( |  | ) | const`[inline]`

template<typename Locker_T = PSyncNULL>

PINDEX PMemBuffer< Locker_T >::GetSize | ( |  | ) | const`[inline]`

template<typename Locker_T = PSyncNULL>

void PMemBuffer< Locker_T >::Lock | ( |  | ) | const`[inline]`

template<typename Locker_T = PSyncNULL>

void PMemBuffer< Locker_T >::Unlock | ( |  | ) | const`[inline]`

template<typename Locker_T = PSyncNULL>

PSync& PMemBuffer< Locker_T >::GetMutex | ( |  | ) | `[inline]`

## Member Data Documentation

template<typename Locker_T = PSyncNULL>

Common* PMemBuffer< Locker_T >::common

template<typename Locker_T = PSyncNULL>

BYTE* PMemBuffer< Locker_T >::data `[protected]`

template<typename Locker_T = PSyncNULL>

PINDEX PMemBuffer< Locker_T >::dataLen `[protected]`

The documentation for this class was generated from the following file:

- opalmixer.h