On Thu, May 22, 2014 at 4:46 PM, Will Godfrey <[email protected]>wrote:
> > As well as the jack ring buffer, I've looked at several others now, and > their > example code. The most significant thing that seems to be different about > them > (from a usage point of view) is the way they handle overflows. However, if > the > buffer size is defined as an exact multiple of the data type/structure and > only > complete structures are pushed or popped, would I be right in thinking > that you > would only need to check on an all/none basis? > > Have I missed something that could cause a partial data transfer? > the jack ring buffers are byte-oriented, so you do have to be careful. however, if both the reader and writer only ever increment their respective pointer/index in multiples of the same basic byte count, then you should be OK. if you use a C++ template ring buffer, then you necessarily cannot get partial transfers.
_______________________________________________ Linux-audio-dev mailing list [email protected] http://lists.linuxaudio.org/listinfo/linux-audio-dev
