# Dirac - A Video Codec

Created by the British Broadcasting Corporation.

Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | List of all members
dirac::MemoryStreamOutput::OutputMemoryBuffer Class Reference

local memory buffer

`#include <pic_io.h>`

Inheritance diagram for dirac::MemoryStreamOutput::OutputMemoryBuffer:
[legend]
Collaboration diagram for dirac::MemoryStreamOutput::OutputMemoryBuffer:
[legend]

## Public Member Functions
| OutputMemoryBuffer ()
| Memory buffer constructor. More...
void | SetMembufReference (unsigned char *buffer, int buffer_size)
| Set the buffer variables. More...

## Protected Member Functions
virtual int | overflow (int c)
| Write Overflow method to write one char at a time. More...
virtual std::streamsize | xsputn (const char *s, std::streamsize num)
| xsputn method to write one multiple chars at a time to buffer More...

## Protected Attributes
unsigned char * | m_op_buf
| Memory buffer to write data to. More...
int | m_op_buf_size
| Memory buffer size. More...
int | m_op_idx
| Index of first available byte in buffer. More...

## Private Member Functions
| OutputMemoryBuffer (const OutputMemoryBuffer &)
| Body-less copy constructor. More...
OutputMemoryBuffer & | operator= (const OutputMemoryBuffer &)
| Body-less assignment operator. More...

## Constructor & Destructor Documentation

## ◆ OutputMemoryBuffer() [1/2]

dirac::MemoryStreamOutput::OutputMemoryBuffer::OutputMemoryBuffer | ( |  | ) |
| inline

## ◆ OutputMemoryBuffer() [2/2]

dirac::MemoryStreamOutput::OutputMemoryBuffer::OutputMemoryBuffer | ( | const OutputMemoryBuffer & |  | ) |
| private

## Member Function Documentation

## ◆ operator=()

OutputMemoryBuffer & dirac::MemoryStreamOutput::OutputMemoryBuffer::operator= | ( | const OutputMemoryBuffer & |  | ) |
| private

## ◆ overflow()

virtual int dirac::MemoryStreamOutput::OutputMemoryBuffer::overflow | ( | int | c | ) |
| inline protected virtual

References m_op_buf, m_op_buf_size, and m_op_idx.

## ◆ SetMembufReference()

void dirac::MemoryStreamOutput::OutputMemoryBuffer::SetMembufReference | ( | unsigned char * | buffer,
|  | int | buffer_size
| ) |  |
| inline

Set the memory buffer variables

Parameters

  buffer | buffer to write data to
  buffer_size | size of output buffer

References m_op_buf, m_op_buf_size, and m_op_idx.

## ◆ xsputn()

virtual std::streamsize dirac::MemoryStreamOutput::OutputMemoryBuffer::xsputn | ( | const char * | s,
|  | std::streamsize | num
| ) |  |
| inline protected virtual

References m_op_buf, m_op_buf_size, and m_op_idx.

## Member Data Documentation

## ◆ m_op_buf

unsigned char* dirac::MemoryStreamOutput::OutputMemoryBuffer::m_op_buf
| protected

Referenced by overflow(), SetMembufReference(), and xsputn().

## ◆ m_op_buf_size

int dirac::MemoryStreamOutput::OutputMemoryBuffer::m_op_buf_size
| protected

Referenced by overflow(), SetMembufReference(), and xsputn().

## ◆ m_op_idx

int dirac::MemoryStreamOutput::OutputMemoryBuffer::m_op_idx
| protected

Referenced by overflow(), SetMembufReference(), and xsputn().

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

- pic_io.h

© 2004 British Broadcasting Corporation. Dirac code licensed under the Mozilla Public License (MPL) Version 1.1.
HTML documentation generated by Dimitri van Heesch's excellent Doxygen tool.