----------------------------------------------------------------------------- Request the values of all known configuration parameters from the device -----------------------------------------------------------------------------
| 2283 | // Request the values of all known configuration parameters from the device |
| 2284 | //----------------------------------------------------------------------------- |
| 2285 | bool Node::RequestAllConfigParams |
| 2286 | ( |
| 2287 | uint32 const _requestFlags |
| 2288 | ) |
| 2289 | { |
| 2290 | bool res = false; |
| 2291 | if( Configuration* cc = static_cast<Configuration*>( GetCommandClass( Configuration::StaticGetCommandClassId() ) ) ) |
| 2292 | { |
| 2293 | // Go through all the values in the value store, and request all those which are in the Configuration command class |
| 2294 | for( ValueStore::Iterator it = m_values->Begin(); it != m_values->End(); ++it ) |
| 2295 | { |
| 2296 | Value* value = it->second; |
| 2297 | if( value->GetID().GetCommandClassId() == Configuration::StaticGetCommandClassId() && !value->IsWriteOnly() ) |
| 2298 | { |
| 2299 | /* put the ConfigParams Request into the MsgQueue_Query queue. This is so MsgQueue_Send doesn't get backlogged with a |
| 2300 | * lot of ConfigParams requests, and should help speed up any user generated messages being sent out (as the MsgQueue_Send has a higher |
| 2301 | * priority than MsgQueue_Query |
| 2302 | */ |
| 2303 | res |= cc->RequestValue( _requestFlags, value->GetID().GetIndex(), 1, Driver::MsgQueue_Query ); |
| 2304 | } |
| 2305 | } |
| 2306 | } |
| 2307 | |
| 2308 | return res; |
| 2309 | } |
| 2310 | |
| 2311 | //----------------------------------------------------------------------------- |
| 2312 | // <Node::RequestDynamicValues> |
no test coverage detected