void CatchInputCtrl::adjustTotalWeightFromUnits(int val) { if (!checkUnits(cmbUnitUnits)) return; doubleSpinTotalE->setValue((double)val*doubleSpinWeightUnit->value()); updateWeightLabel(QVariant((double)val*doubleSpinWeightUnit->value()).toString()); }
void CatchInputCtrl::adjustTotalWeightFromNoBoxes(double val) { if (!checkUnits(cmbBoxUnits)) return; doubleSpinTotalE->setValue(val*doubleSpinWeightBox->value()); updateWeightLabel(QVariant(val*doubleSpinWeightBox->value()).toString()); }
static int traverse(const char *str, double scale) { pmMetricSpec *theMetric; char *msg; int sts = 0; sts = pmParseMetricSpec((char *)str, 0, (char *)0, &theMetric, &msg); if (sts < 0) { pmprintf("%s: Error: Unable to parse metric spec:\n%s\n", pmProgname, msg); free(msg); return sts; } // If the metric has instances, then it cannot be traversed if (theMetric->ninst) { QmcMetric *metric = group->addMetric(theMetric, scale); if (metric->status() >= 0) { checkUnits(metric); metrics.append(metric); numValues += metric->numValues(); } else sts = -1; } else { if (theMetric->isarch == 0) doMetricType = PM_CONTEXT_HOST; else if (theMetric->isarch == 1) doMetricType = PM_CONTEXT_ARCHIVE; else if (theMetric->isarch == 2) doMetricType = PM_CONTEXT_LOCAL; else { pmprintf("%s: Error: invalid metric source (%d): %s\n", pmProgname, theMetric->isarch, theMetric->metric); sts = -1; } doMetricSource = theMetric->source; if (sts >= 0) sts = group->use(doMetricType, doMetricSource); if (sts >= 0) { doMetricScale = scale; sts = pmTraversePMNS(theMetric->metric, dometric); if (sts >= 0 && doMetricFlag == false) sts = -1; else if (sts < 0) { pmprintf("%s: Error: %s: %s\n", pmProgname, theMetric->metric, pmErrStr(sts)); } } } free(theMetric); return sts; }
static void dometric(const char *name) { QString fullname = doMetricSource; if (fullname.length()) { if (doMetricType == PM_CONTEXT_ARCHIVE) fullname.append(QChar('/')); else fullname.append(QChar(':')); } fullname.append(name); QmcMetric* metric = group->addMetric((const char *)fullname.toAscii(), doMetricScale); if (metric->status() >= 0) { checkUnits(metric); metrics.append(metric); numValues += metric->numValues(); } else doMetricFlag = false; }
void CatchInputCtrl::onBoxUnitChange(QString strUnits) { if (!checkUnits(cmbBoxUnits)) return; updateWeightLabel(QVariant(doubleSpinTotalE->value()).toString()); }