void DomainPowerControl_001::setPowerControl(UIntN participantIndex, UIntN domainIndex, const PowerControlStatusSet& powerControlStatusSet) { validatePowerControlStatus(powerControlStatusSet, domainIndex); programPowerControl(powerControlStatusSet, domainIndex); DELETE_MEMORY_TC(m_powerControlStatusSet); m_powerControlStatusSet = new PowerControlStatusSet(powerControlStatusSet); }
void DomainPowerControl_001::setPowerControl(UIntN participantIndex, UIntN domainIndex, const PowerControlStatusSet& powerControlStatusSet) { checkAndCreateControlStructures(domainIndex); if (powerControlStatusSet.getCount() > PowerControlType::max) { throw dptf_exception("Too many power controls in the set!"); } for (UIntN i = 0; i < powerControlStatusSet.getCount(); i++) { validatePowerControlStatus(powerControlStatusSet[i]); programPowerControl(powerControlStatusSet[i], domainIndex); } // Update control set delete m_powerControlStatusSet; m_powerControlStatusSet = new PowerControlStatusSet(powerControlStatusSet); }