This is a complete C#/.NET implementation of a data structure for a generic circular buffer, as well as a circular byte stream type.

Attention: Please pull the latest code from the Hg repository (Source Code tab), as the latest release is out-of-date.

Features

  • Implementation of the circular buffer data structure in C# 3.0. The data structure is represented a a generic class CircularBuffer<T> and implements the standard collection interfaces; ICollection<T>, IEnumerable<T>, ICollection, IEnumerable.
  • Implementation of a memory stream based around the circular buffer data structure (specifically, an instance of CircularBuffer<byte>).

Any ideas for additional functionality are welcome.

Requirements

  • .NET Framework 3.5 SP1 or later. Should also work on .NET Framework 3.5 SP0, .NET Framework 2.0, or Mono 2.x, though compatibility has not yet been tested.

Feedback

  • Please send any feedback (bug reports, problems, suggestions, comments) via the issue tracker or discussion threads, depending on nature.

Last edited Jul 7, 2012 at 2:13 AM by alexreg, version 8