What Qt container class to use for a sorted list?

Posted by Dave on Stack Overflow See other posts from Stack Overflow or by Dave
Published on 2010-04-12T15:39:21Z Indexed on 2010/04/12 15:43 UTC
Read the original article Hit count: 414

Filed under:
|

Part of my application involves rendering audio waveforms. The user will be able to zoom in/out of the waveform. Starting at fully zoomed-out, I only want to sample the audio at the necessary internals to draw the waveform at the given resolution. Then, when they zoom in, asynchronously resample the "missing points" and provide a clearer waveform. (Think Google Maps.) I'm not sure the best data structure to use in Qt world. Ideally, I would like to store data samples sorted by time, but with the ability to fill-in points as needed.

So, for example, the data points might initially look like:

data[0 ms] = 10
data[10 ms] = 32
data[20 ms] = 21
...

But when they zoom in, I would get more points as necessary, perhaps:

data[0 ms] = 10
data[2 ms] = 11
data[4 ms] = 18
data[6 ms] = 30
data[10 ms] = 32
data[20 ms] = 21
...

Note that the values in brackets are lookup values (milliseconds), not array indices. In .Net I might have used a SortedList<int, int>. What would be the best class to use in Qt? Or should I use a STL container?

© Stack Overflow or respective owner

Related posts about qt

Related posts about list