Example #1
0
void DirectionHistogram::render(
    RenderDevice* rd, 
    const Color3& solidColor, 
    const Color4& lineColor) {
    
    rd->pushState();
    {
        rd->disableLighting();

        // Hidden surfaces
        rd->setPolygonOffset(0.2f);
        rd->setColor(solidColor);
        sendGeometry(rd);

        rd->setDepthTest(RenderDevice::DEPTH_LEQUAL);

        // Lines
        rd->setPolygonOffset(-0.2f);
        rd->setRenderMode(RenderDevice::RENDER_WIREFRAME);
        rd->setColor(lineColor);
        rd->setLineWidth(1.0f);
        rd->setBlendFunc(RenderDevice::BLEND_SRC_ALPHA, RenderDevice::BLEND_ONE_MINUS_SRC_ALPHA);
        sendGeometry(rd);
    }
    rd->popState();
}
Example #2
0
void OurInterface::initRemoteClient()
{
    int64_t start_time;
    int64_t duration;

    //elapsedTime = 0;

    if (sendMetadataFile())
        return;

    if (sendVideoFormat())
        return;

    if (sendAudioFormat())
        return;

    if (sendGeometry(savedGeometry))
        return;

    xrdpvr_play_media(channel, 101, filename.toAscii().data());

    xrdpvr_get_media_duration(&start_time, &duration);
    //qDebug() << "ourInterface:initRemoteClient: emit onMediaDurationInSecs: dur=" << duration;
    emit onMediaDurationInSeconds(duration);

    /* LK_TODO this needs to be undone in deinitRemoteClient() */
    if (!demuxMedia)
    {
        demuxMedia = new DemuxMedia(NULL, &audioQueue, &videoQueue, channel, stream_id);
        demuxMediaThread = new QThread(this);
        connect(demuxMediaThread, SIGNAL(started()), demuxMedia, SLOT(startDemuxing()));
        demuxMedia->moveToThread(demuxMediaThread);
        playVideo = demuxMedia->getPlayVideoInstance();
    }
}
ProcessResult PluginLegacyPublishGeometry::process(FrameData * data, RenderOptions * options) {
  (void)data;
  (void)options;
  //TODO: check client requests in server process
  //      if requested, call sendGeometry();
  if (_pub_auto_enable->getBool()==true) {
    double t = data->time - last_t;
    if (t > _pub_auto_interval->getDouble()) {
      sendGeometry();
      last_t=data->time;
    }
  }
  return ProcessingOk;
}
void PluginLegacyPublishGeometry::slotPublishTriggered() {
  lock();
  sendGeometry();
  unlock();
}