/** Get a list of all property names. */ void ConfigManager::getAllPropertyNames( Array<String>& propertyNames, Boolean includeHiddenProperties) const { Array<String> propertyInfo; propertyNames.clear(); for (OwnerTable::Iterator i = _propertyTable->ownerTable.start(); i; i++) { if (includeHiddenProperties) { propertyNames.append(i.key()); } else { // // Check if property is to be externally visible or not. // If the property should not be externally visible do not list the // property information. // propertyInfo.clear(); getPropertyInfo(i.key(), propertyInfo); if (propertyInfo[5] == STRING_TRUE) { propertyNames.append(i.key()); } } } }
void DataBus::AbstractClient::processGetClientPropertyInfoRequestPacket(const Packet &packet) { // Check if registered if (m_registered == false) { // Error, can't send a response if not registered return; } // Check destination if (packet.getDestination() != m_clientId) { // Error, invalid destination return; } // Get Property ID quint8 propertyId; if (GetClientPropertyInfoRequestPacket::parse(packet, &propertyId) == false) { // Error, failed to parse packet return; } // Get Property Info PropertyInfo propertyInfo; if (getPropertyInfo(propertyId, &propertyInfo) == false) { // Error, failed to get Property Info return; } // Create response Packet responsePacket; if (GetClientPropertyInfoResponsePacket::create(m_clientId, packet.getSource(), packet.getPacketId(), propertyInfo, &responsePacket) == false) { // Error, failed to create packet return; } // Send Response if (sendPacket(responsePacket) == false) { // Error, failed to create packet return; } // Success return; }
bool xDistributedPoint3F::updateValue(Point3F value,xTimeType currentTime) { mLastTime = mCurrentTime; mCurrentTime = currentTime; mLastDeltaTime = mCurrentTime - mLastTime; mLastValue = mCurrentValue; mCurrentValue = value; mDifference = mCurrentValue - mLastValue; mThresoldTicker +=mLastDeltaTime; float lengthDiff = fabsf(mDifference.len()); float timeDiffMs = ((float)mThresoldTicker) / 1000.f; int flags = getFlags(); flags =E_DP_OK; bool result = false; if (this->getPropertyInfo()->mPredictionType == E_PTYPE_PREDICTED) { if (lengthDiff > getPredictionSettings()->getMinDifference() ) { if (mThresoldTicker2 > getPredictionSettings()->getMinSendTime()) { flags =E_DP_NEEDS_SEND; result = true ; //xLogger::xLog(ELOGINFO,XL_START,"mThresoldTicker2: %f",mThresoldTicker2); } } Point3F serverDiff = mCurrentValue-mLastServerValue ; if ( fabsf( serverDiff.len()) > getPredictionSettings()->getMinDifference() ) { if (mThresoldTicker2 > (getPredictionSettings()->getMinSendTime() * 0.2f) ) { flags =E_DP_NEEDS_SEND; result = true ; //xLogger::xLog(ELOGINFO,XL_START,"mThresoldTicker2: %f",mThresoldTicker2); } } if (mThresoldTicker2 > getPredictionSettings()->getMinSendTime()) { mThresoldTicker2 = 0 ; mThresoldTicker = 0; } } if (getPropertyInfo()->mPredictionType == E_PTYPE_RELIABLE) { flags =E_DP_NEEDS_SEND; result = true ; mLastValue = value; mCurrentValue = value; } setFlags(flags); return result; }