INT CmDevice_RT::SetCapsInternal(CM_DEVICE_CAP_NAME capName, size_t capValueSize, void *pCapValue) { CM_RETURN_CODE hr = CM_SUCCESS; DXVA_CM_SET_CAPS setCaps; UINT maxValue; size_t size = sizeof(maxValue); CmSafeMemSet(&setCaps, 0, sizeof(setCaps)); switch (capName) { case CAP_HW_THREAD_COUNT: if (capValueSize != sizeof(UINT)) { CM_ASSERT(0); return CM_INVALID_HARDWARE_THREAD_NUMBER; } if (*(UINT *) pCapValue <= 0) { CM_ASSERT(0); return CM_INVALID_HARDWARE_THREAD_NUMBER; } GetCaps(CAP_HW_THREAD_COUNT, size, &maxValue); if (*(UINT *) pCapValue > maxValue) { CM_ASSERT(0); return CM_INVALID_HARDWARE_THREAD_NUMBER; } setCaps.Type = DXVA_CM_MAX_HW_THREADS; setCaps.MaxValue = *(UINT *) pCapValue; break; case CAP_L3_CONFIG: if (capValueSize != sizeof(L3_CONFIG_REGISTER_VALUES)){ CM_ASSERT(0); return CM_INVALIDE_L3_CONFIGURATION; } else { L3_CONFIG_REGISTER_VALUES *l3_c = (L3_CONFIG_REGISTER_VALUES *)pCapValue; setCaps.L3_SQCREG1 = l3_c->SQCREG1_VALUE; setCaps.L3_CNTLREG2 = l3_c->CNTLREG2_VALUE; setCaps.L3_CNTLREG3 = l3_c->CNTLREG3_VALUE; setCaps.L3_CNTLREG = l3_c->CNTLREG_VALUE; setCaps.Type = DXVA_CM_MAX_HW_L3_CONFIG; } break; default: return CM_FAILURE; } PCM_CONTEXT pCmData = (PCM_CONTEXT) this->GetAccelData(); CHK_GENOSSTATUS_RETURN_CMERROR(pCmData->pCmHalState-> pfnSetCaps(pCmData->pCmHalState, (PCM_HAL_MAX_SET_CAPS_PARAM) & setCaps)); finish: return hr; }
void Mpris1Player::CurrentSongChanged(const Song& song, const QString& art_uri, const QImage&) { last_metadata_ = Mpris1::GetMetadata(song); if (!art_uri.isEmpty()) { AddMetadata("arturl", art_uri, &last_metadata_); } emit TrackChange(last_metadata_); emit StatusChange(GetStatus()); emit CapsChange(GetCaps()); }
LinkRaw::LinkRaw(Instance &aInstance) : mInstance(aInstance) , mEnabled(false) , mReceiveChannel(OPENTHREAD_CONFIG_DEFAULT_CHANNEL) , mReceiveDoneCallback(NULL) , mTransmitDoneCallback(NULL) , mEnergyScanDoneCallback(NULL) #if OPENTHREAD_LINKRAW_TIMER_REQUIRED , mTimer(aInstance, &LinkRaw::HandleTimer, this) , mTimerReason(kTimerReasonNone) #if OPENTHREAD_CONFIG_ENABLE_PLATFORM_USEC_TIMER , mTimerMicro(aInstance, &LinkRaw::HandleTimer, this) #endif #endif // OPENTHREAD_LINKRAW_TIMER_REQUIRED #if OPENTHREAD_CONFIG_ENABLE_SOFTWARE_ENERGY_SCAN , mEnergyScanTask(aInstance, &LinkRaw::HandleEnergyScanTask, this) #endif // OPENTHREAD_CONFIG_ENABLE_SOFTWARE_ENERGY_SCAN { // Query the capabilities to check asserts (void)GetCaps(); }
int Mpris1Player::GetCaps() const { return GetCaps(app_->player()->GetState()); }
// we use the state from event and don't try to obtain it from Player // later because only the event's version is really the current one void Mpris1Player::EngineStateChanged(Engine::State state) { emit StatusChange(GetStatus(state)); emit CapsChange(GetCaps(state)); }