Source: readerwriterqueue
Section: devel
Priority: optional
Maintainer: Debian Med Packaging Team <debian-med-packaging@lists.alioth.debian.org>
Uploaders: Steffen Moeller <moeller@debian.org>
Build-Depends: debhelper-compat (= 13), cmake
Standards-Version: 4.5.1
Homepage: https://github.com/cameron314/readerwriterqueue
Vcs-Browser: https://salsa.debian.org/med-team/readerwriterqueue
Vcs-Git: https://salsa.debian.org/med-team/readerwriterqueue.git
Rules-Requires-Root: no

Package: libreaderwriterqueue-dev
Architecture: all
Section: libdevel
Depends: ${misc:Depends}
Description: single-producer, single-consumer lock-free queue for C++
 This package provides a lock-free queue  for C++.  It only supports
 a two-thread use case (one consuming, and one producing). The threads
 can't switch roles, though you could use this queue completely from a
 single thread if you wish (but that would sort of defeat the purpose!).
 .
 Features:
  * Blazing fast
  * Compatible with C++11 (supports moving objects instead of making
  copies)
  * Fully generic (templated container of any type) -- just like
    std::queue, you never need to allocate memory for elements yourself
    (which saves you the hassle of writing a lock-free memory manager
    to hold the elements you're queueing)
  * Allocates memory up front, in contiguous blocks
  * Provides a try_enqueue method which is guaranteed never to allocate
    memory (the queue starts with an initial capacity)
  * Also provides an enqueue method which can dynamically grow the size
    of the queue as needed
  * Also provides try_emplace/emplace convenience methods
  * Has a blocking version with wait_dequeue
  * Completely "wait-free" (no compare-and-swap loop). Enqueue and
    dequeue are always O(1) (not counting memory allocation)
  * On x86, the memory barriers compile down to no-ops, meaning enqueue
    and dequeue are just a simple series of loads and stores (and
    branches)
