DrmObject::AtomicReturn DrmPlane::atomicReqPlanePopulate(drmModeAtomicReq *req) { bool ret = true; if (m_next) { setPropValue(int(PropertyIndex::FbId), m_next->bufferId()); } else { setPropValue(int(PropertyIndex::FbId), 0); setPropValue(int(PropertyIndex::SrcX), 0); setPropValue(int(PropertyIndex::SrcY), 0); setPropValue(int(PropertyIndex::SrcW), 0); setPropValue(int(PropertyIndex::SrcH), 0); setPropValue(int(PropertyIndex::CrtcX), 0); setPropValue(int(PropertyIndex::CrtcY), 0); setPropValue(int(PropertyIndex::CrtcW), 0); setPropValue(int(PropertyIndex::CrtcH), 0); } m_propsPending = 0; for (int i = int(PropertyIndex::SrcX); i < int(PropertyIndex::CrtcId); i++) { ret &= atomicAddProperty(req, i, propValue(i)); } ret &= atomicAddProperty(req, int(PropertyIndex::CrtcId), m_next ? propValue(int(PropertyIndex::CrtcId)) : 0); if (!ret) { qCWarning(KWIN_DRM) << "Failed to populate atomic plane" << m_id; return DrmObject::AtomicReturn::Error; } if (!m_propsPending) { return DrmObject::AtomicReturn::NoChange; } return DrmObject::AtomicReturn::Success; }
JNIEXPORT void JNICALL Java_org_apache_subversion_javahl_SVNRepos_setRevProp (JNIEnv *env, jobject jthis, jobject jpath, jobject jrevision, jstring jpropName, jstring jpropValue, jboolean jusePreRevPropChangeHook, jboolean jusePostRevPropChangeHook) { JNIEntry(SVNRepos, setRevProp); SVNRepos *cl = SVNRepos::getCppObject(jthis); if (cl == NULL) { JNIUtil::throwError(_("bad C++ this")); return; } File path(jpath); if (JNIUtil::isExceptionThrown()) return; Revision revision(jrevision); if (JNIUtil::isExceptionThrown()) return; JNIStringHolder propName(jpropName); if (JNIUtil::isExceptionThrown()) return; JNIStringHolder propValue(jpropValue); if (JNIUtil::isExceptionThrown()) return; cl->setRevProp(path, revision, propName, propValue, jusePreRevPropChangeHook ? true : false, jusePostRevPropChangeHook ? true : false); }
DrmPlane::TypeIndex DrmPlane::type() { uint64_t value = propValue(int(PropertyIndex::Type)); int typeCount = int(TypeIndex::Count); for (int i = 0; i < typeCount; i++) { if (m_props[int(PropertyIndex::Type)]->enumMap(i) == value) { return TypeIndex(i); } } return TypeIndex::Overlay; }