/** Set all properties from the CPUInstance in the SCXInstance \param[in] cpuinst - CPU instance to get data from \param[in] inst - Instance to populate \throws SCXInvalidArgumentException - If the instance can not be converted to a CPUInstance This method knows how to map the values of the CPU PAL to the CMPI class definition. */ void CPUProvider::AddProperties(SCXCoreLib::SCXHandle<SCXSystemLib::CPUInstance> cpuinst, SCXInstance &inst) // private { scxulong data; if (cpuinst == NULL) { throw SCXInvalidArgumentException(L"einst", L"Not a CPUInstance", SCXSRCLOCATION); } SCX_LOGTRACE(m_log, L"CPUProvider AddPropeties()"); SCXProperty total_prop(L"IsAggregate", cpuinst->IsTotal()); inst.AddProperty(total_prop); if (cpuinst->GetProcessorTime(data)) { SCXProperty data_prop(L"PercentProcessorTime", static_cast<unsigned char> (data)); inst.AddProperty(data_prop); } if (cpuinst->GetIdleTime(data)) { SCXProperty data_prop(L"PercentIdleTime", static_cast<unsigned char> (data)); inst.AddProperty(data_prop); } if (cpuinst->GetUserTime(data)) { SCXProperty data_prop(L"PercentUserTime", static_cast<unsigned char> (data)); inst.AddProperty(data_prop); } if (cpuinst->GetNiceTime(data)) { SCXProperty data_prop(L"PercentNiceTime", static_cast<unsigned char> (data)); inst.AddProperty(data_prop); } if (cpuinst->GetPrivilegedTime(data)) { SCXProperty data_prop(L"PercentPrivilegedTime", static_cast<unsigned char> (data)); inst.AddProperty(data_prop); } if (cpuinst->GetIowaitTime(data)) { SCXProperty data_prop(L"PercentIOWaitTime", static_cast<unsigned char> (data)); inst.AddProperty(data_prop); } if (cpuinst->GetInterruptTime(data)) { SCXProperty data_prop(L"PercentInterruptTime", static_cast<unsigned char> (data)); inst.AddProperty(data_prop); } if (cpuinst->GetDpcTime(data)) { SCXProperty data_prop(L"PercentDPCTime", static_cast<unsigned char> (data)); inst.AddProperty(data_prop); } }