Ok, ok, but what with insert? What element should be removed: the first or the last one? And why the first approach or the latter.
Jan Nigel Stewart wrote: > >> So the issue here seems to be whether a cyclic_buffer > >> should be circular-list-like or FIFO-like. > > > > I designed the cyclic_buffer mainly for adding the elements at the end of the > > container and automatic removal of elements from the beginning - it is just plain > > FIFO, nothing else. > > (Please excuse the tone here if it sounds too officious, > just intending to be precise...) > > Therefore, here is the case for extending the proposed > cyclic_buffer: > > - Rename to circular_buffer > > Relate the container more closely to the concept of > a circular list. The proposed cyclic_buffer appears > to support a subset of circular_buffer interface > and functionality. > > - Add push_front() and pop_front() > > For the purpose of generality, allow manipulation of > the container at both ends of the buffer, rather than > pushing to the back and popping from the front. > > front() is already included in the interface. > > This would allow use as a LIFO (last-in, last-out) > with fixed sized "event horizon". (As an example.) > > - resize() to behave similarly to vector::resize() > > Inserts or erases elements at the end such that > the size becomes n. (Applications not concerned > with underlying capacity management need not > explicitly reserve capacity for a particular > desired size: principle of "minimal surprise".) > > Semantics of reducing the size of a circular_buffer: > follow std::vector and keep only first n items. > > - change_capacity() becomes reserve() > > For consistency with std::vector. > > Otherwise, should cyclic_buffer be named cyclic_fifo ? > > Cheers, and thanks for being open to input and review... > > Nigel Stewart > > _______________________________________________ > Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost -- Jan Gaspar | [EMAIL PROTECTED] Whitestein Technologies | www.whitestein.com Panenska 28 | SK-81103 Bratislava | Slovak Republic Tel +421(2)5930-0734 | Fax +421(2)5443-5512 _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost