| 321 | } |
| 322 | |
| 323 | qint64 |
| 324 | QTimeSlider::getSample(void) const |
| 325 | { |
| 326 | struct timeval span; |
| 327 | qint64 spanMsec; |
| 328 | qreal fraction; |
| 329 | |
| 330 | timersub(&this->endTime, &this->startTime, &span); |
| 331 | |
| 332 | spanMsec = span.tv_sec * 1000 + span.tv_usec / 1000; |
| 333 | fraction = static_cast<qreal>(this->value()) / this->maximum(); |
| 334 | |
| 335 | spanMsec = static_cast<qint64>(fraction * static_cast<qreal>(spanMsec)); |
| 336 | |
| 337 | return |
| 338 | (spanMsec / 1000) * this->sampleRate |
| 339 | + (spanMsec % 1000) * this->sampleRate * 1000; |
| 340 | } |
| 341 |