|
Boost Users : |
Subject: Re: [Boost-users] circular_buffer: How to make push_back() increase capacity?
From: Jan Gaspar (jano_gaspar_at_[hidden])
Date: 2009-08-30 03:22:59
Hi Robert,
I'm afraid circular_buffer is not suitable for this task. You need something like circular iterator that will iterate over a vector or a list. There used to be circular iterator implementation in the boost sandbox; not sure what is the status of this library at the moment.
Regards,
Jan
________________________________
From: Robert Dailey <rcdailey_at_[hidden]>
To: boost <boost-users_at_[hidden]>
Sent: Saturday, 29 August, 2009 0:17:32
Subject: [Boost-users] circular_buffer: How to make push_back() increase capacity?
Hello,
I have a list of colors that I need to be able to cycle through, either by rotating the container or by using an iterator that will rotate (i.e. return to the beginning when I increment at the end, and vice-versa). The goal is to be able to iterate through the container in a circular way and process all of the colors repeatedly.
I chose a boost::circular_buffer for this job, I assumed it was the perfect tool for the job. It works great, except I would like to be able to call push_back() to add all of my colors to the buffer without having to call set_capacity() on it first. It's a minor thing, but omitting the call to set_capacity() would make it slightly more scalable/manageable since I won't have to keep incrementing the size of the capacity each time I want to add colors to the buffer.
How can I achieve this?
---------
Robert Dailey
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net