CyclicBuffer Class Reference

CyclicBuffer is used by other appenders to hold instances of LoggingEvent for immediate or deferred display. More...

## Public Member Functions

| CyclicBuffer (int maxSize)
| Instantiate a new CyclicBuffer of at most `maxSize` events. More...
| ~CyclicBuffer ()
void | add (const spi::LoggingEventPtr &event)
| Add an `event` as the last event in the buffer. More...
spi::LoggingEventPtr | get (int i)
| Get the ith oldest event currently in the buffer. More...
int | getMaxSize () const
spi::LoggingEventPtr | get ()
| Get the oldest (first) element in the buffer. More...
int | length () const
| Get the number of elements in the buffer. More...
void | resize (int newSize)
| Resize the cyclic buffer to `newSize`. More...

## Detailed Description

CyclicBuffer is used by other appenders to hold instances of LoggingEvent for immediate or deferred display.

This buffer gives read access to any element in the buffer not just the first or last element.

## Constructor & Destructor Documentation

CyclicBuffer | ( | int | maxSize | ) |

Instantiate a new CyclicBuffer of at most `maxSize` events.

The `maxSize` argument must a positive integer.

Parameters

  maxSize | The maximum number of elements in the buffer.

Exceptions

  IllegalArgumentException | if `maxSize` is negative.

~CyclicBuffer | ( |  | ) |

## Member Function Documentation

void add | ( | const spi::LoggingEventPtr & | event | ) |

Add an `event` as the last event in the buffer.

spi::LoggingEventPtr get | ( | int | i | ) |

Get the ith oldest event currently in the buffer.

If i is outside the range 0 to the number of elements currently in the buffer, then `null` is returned.

spi::LoggingEventPtr get | ( |  | ) |

Get the oldest (first) element in the buffer.

The oldest element is removed from the buffer.

int getMaxSize | ( |  | ) | const

inline

int length | ( |  | ) | const

inline

Get the number of elements in the buffer.

This number is guaranteed to be in the range 0 to `maxSize` (inclusive).

void resize | ( | int | newSize | ) |

Resize the cyclic buffer to `newSize`.

Exceptions

  IllegalArgumentException | if `newSize` is negative.

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

- cyclicbuffer.h