Esempio n. 1
0
void* Downloader::bufferingProcedure(void *receiver)
{
    Downloader* downloader = (Downloader *) receiver;

    uint32_t number = 0;

    IBufferItem *media = downloader->adaptation->getSegment(number);

    while(media != NULL)
    {
		Time t1(boost::posix_time::microsec_clock::local_time());
        media->start();
        media->wait();
		Time t2(boost::posix_time::microsec_clock::local_time());
		TimeDuration dt = t2 - t1;

        downloader->buffer->push(media);
        number++;

		downloader->adaptation->setBufferStatus(downloader->buffer->size()*1.0);
		downloader->adaptation->setDownloadTime(dt.total_milliseconds());

        media = downloader->adaptation->getSegment(number);
    }

    downloader->buffer->setEnd(true);
    return NULL;
}
Esempio n. 2
0
 inline void sleep(TimeDuration const& rel_time)
 {
     interruptible_wait(detail::pin_to_zero(rel_time.total_milliseconds()));
 }
Esempio n. 3
0
 inline void sleep(TimeDuration const& rel_time)
 {
     interruptible_wait(static_cast<unsigned long>(rel_time.total_milliseconds()));
 }
void AccelerationAction::update(TimeDuration delta) {
    velocity_ += acceleration_ * delta.total_milliseconds();
    if ((acceleration_ > 0 && velocity_ > targetVelocity_) || (acceleration_ < 0 && velocity_ < targetVelocity_)) {
        velocity_ = targetVelocity_;
    }
}
Esempio n. 5
0
TimeDuration rand_range(const TimeDuration& start, const TimeDuration& stop) {
    unsigned int start_int = start.total_milliseconds();
    unsigned int stop_int = stop.total_milliseconds();
    return ptime::milliseconds(rr(start_int, stop_int));
}
Esempio n. 6
0
double TimeDuration::operator /(const TimeDuration& b) const {
    return double(total_milliseconds()) / double(b.total_milliseconds());
}
Esempio n. 7
0
void CameraMoveAction::update(TimeDuration delta) {
    AccelerationAction::update(delta);

    camera_.moveRelative(direction_.normalised() * velocity() * delta.total_milliseconds());
}