DataObjectPtr PSD::makeDuplicate() const { PSDPtr powerspectrum = store()->createObject<PSD>(); Q_ASSERT(powerspectrum); powerspectrum->writeLock(); powerspectrum->setVector(_inputVectors[INVECTOR]); powerspectrum->setFrequency(_Frequency); powerspectrum->setAverage(_Average); powerspectrum->setLength(_averageLength); powerspectrum->setApodize(_Apodize); powerspectrum->setRemoveMean(_RemoveMean); powerspectrum->setVectorUnits(_vectorUnits); powerspectrum->setRateUnits(_rateUnits); powerspectrum->setApodizeFxn(_apodizeFxn); powerspectrum->setGaussianSigma(_gaussianSigma); powerspectrum->setOutput(_Output); powerspectrum->setInterpolateHoles(_interpolateHoles); if (descriptiveNameIsManual()) { powerspectrum->setDescriptiveName(descriptiveName()); } powerspectrum->registerChange(); powerspectrum->unlock(); return DataObjectPtr(powerspectrum); }
DataMatrixPtr DataMatrix::makeDuplicate() const { Q_ASSERT(store()); DataMatrixPtr matrix = store()->createObject<DataMatrix>(); matrix->writeLock(); matrix->change(file(), _field, _reqXStart, _reqYStart, _reqNX, _reqNY, _doAve, _doSkip, _skip, _minX, _minY, _stepX, _stepY); if (descriptiveNameIsManual()) { matrix->setDescriptiveName(descriptiveName()); } matrix->registerChange(); matrix->unlock(); return matrix; }
PrimitivePtr VScalar::makeDuplicate() const { Q_ASSERT(store()); VScalarPtr scalar = store()->createObject<VScalar>(); scalar->writeLock(); scalar->change(dataSource(), _field, _f0); if (descriptiveNameIsManual()) { scalar->setDescriptiveName(descriptiveName()); } scalar->registerChange(); scalar->unlock(); return kst_cast<Primitive>(scalar); }
PrimitivePtr DataString::_makeDuplicate() const { Q_ASSERT(store()); DataStringPtr string = store()->createObject<DataString>(); string->writeLock(); string->change(_dp->dataSource(), _dp->_field); if (descriptiveNameIsManual()) { string->setDescriptiveName(descriptiveName()); } string->registerChange(); string->unlock(); return kst_cast<Primitive>(string); }
DataObjectPtr Histogram::makeDuplicate() const { HistogramPtr histogram = store()->createObject<Histogram>(); histogram->setVector(_inputVectors[RAWVECTOR]); histogram->setXRange(_MinX, _MaxX); histogram->setNumberOfBins(_NumberOfBins); histogram->setNormalizationType(_NormalizationMode); histogram->setRealTimeAutoBin(_realTimeAutoBin); if (descriptiveNameIsManual()) { histogram->setDescriptiveName(descriptiveName()); } histogram->writeLock(); histogram->registerChange(); histogram->unlock(); return DataObjectPtr(histogram); }
RelationPtr Curve::makeDuplicate(QMap<RelationPtr, RelationPtr> &duplicatedRelations) { CurvePtr curve = store()->createObject<Curve>(); if (descriptiveNameIsManual()) { curve->setDescriptiveName(descriptiveName()); } curve->setXVector(xVector()); curve->setYVector(yVector()); if (hasXError()) { curve->setXError(xErrorVector()); } if (hasYError()) { curve->setYError(yErrorVector()); } if (hasXMinusError()) { curve->setXMinusError(xMinusErrorVector()); } if (hasYMinusError()) { curve->setYMinusError(yMinusErrorVector()); } curve->setColor(Color); curve->setHasPoints(HasPoints); curve->setHasLines(HasLines); curve->setHasBars(HasBars); curve->setLineWidth(LineWidth); curve->setLineStyle(LineStyle); curve->setPointType(PointDensity); curve->setPointDensity(PointDensity); curve->setBarStyle(BarStyle); curve->writeLock(); curve->registerChange(); curve->unlock(); duplicatedRelations.insert(this, RelationPtr(curve)); return RelationPtr(curve); }
void Equation::updateVectorLabels() { if (!_xInVector) { return; } _xOutVector->setLabelInfo(_xInVector->labelInfo()); QString yl; QString xl; QRegExp sn("(\\(V(\\d{1,2})\\))|\\[|\\]"); // short name yl = reparsedEquation(); yl.remove(sn); LabelInfo label_info; label_info.units.clear(); label_info.quantity.clear(); if (descriptiveNameIsManual()) { label_info.name = descriptiveName(); } else { label_info.name = yl; } _yOutVector->setTitleInfo(label_info); }
DataObjectPtr EventMonitorEntry::makeDuplicate() const { EventMonitorEntryPtr eventMonitor = store()->createObject<EventMonitorEntry>(); eventMonitor->setScriptCode(_script); eventMonitor->setEvent(_event); eventMonitor->setDescription(_description); eventMonitor->setLevel(_level); eventMonitor->setLogDebug(_logDebug); eventMonitor->setLogEMail(_logEMail); eventMonitor->setLogELOG(_logELOG); eventMonitor->setEMailRecipients(_eMailRecipients); if (descriptiveNameIsManual()) { eventMonitor->setDescriptiveName(descriptiveName()); } eventMonitor->reparse(); eventMonitor->writeLock(); eventMonitor->registerChange(); eventMonitor->unlock(); return DataObjectPtr(eventMonitor); }
DataObjectPtr CSD::makeDuplicate() const{ CSDPtr csd = store()->createObject<CSD>(); csd->change(_inputVectors[CSD_INVECTOR], _frequency, _average, _removeMean, _apodize, _apodizeFxn, _windowSize, _averageLength, _gaussianSigma, _outputType, _vectorUnits, _rateUnits); if (descriptiveNameIsManual()) { csd->setDescriptiveName(descriptiveName()); } csd->writeLock(); csd->registerChange(); csd->unlock(); return DataObjectPtr(csd); }
RelationPtr Image::makeDuplicate(QMap<RelationPtr, RelationPtr> &duplicatedRelations) { ImagePtr image = store()->createObject<Image>(); if (!_hasContourMap) { image->changeToColorOnly(_inputMatrices[THEMATRIX], _zLower, _zUpper, _autoThreshold, _pal.paletteName()); } else if (!_hasColorMap) { image->changeToContourOnly(_inputMatrices[THEMATRIX], _numContourLines, _contourColor, _contourWeight); } else { image->changeToColorAndContour(_inputMatrices[THEMATRIX], _zLower, _zUpper, _autoThreshold, _pal.paletteName(), _numContourLines, _contourColor, _contourWeight); } if (descriptiveNameIsManual()) { image->setDescriptiveName(descriptiveName()); } image->writeLock(); image->registerChange(); image->unlock(); duplicatedRelations.insert(this, RelationPtr(image)); return RelationPtr(image); }
// to keep the size of the saved xml files smaller, 'I' // should be set to only the types who are effected by the // creation of the Object. (So, the type itself and any slave // objects which are created) eg: Vectors: VNUM|XNUM // It doesn't hurt to add more (the default is all bits set) // except that it increases the size of the .kst file, and // slows loading (not much, but if you have hundreds of // objects....) void NamedObject::saveNameInfo(QXmlStreamWriter &s, unsigned I) { if (descriptiveNameIsManual()) { s.writeAttribute("descriptiveNameIsManual", "true"); s.writeAttribute("descriptiveName", descriptiveName()); } if (I & VNUM) s.writeAttribute("initialVNum", QString::number(_initial_vnum)); if (I & XNUM) s.writeAttribute("initialXNum", QString::number(_initial_xnum)); if (I & PNUM) s.writeAttribute("initialPNum", QString::number(_initial_pnum)); if (I & CSDNUM) s.writeAttribute("initialCSDNum", QString::number(_initial_csdnum)); if (I & CNUM) s.writeAttribute("initialCNum", QString::number(_initial_cnum)); if (I & ENUM) s.writeAttribute("initialENum", QString::number(_initial_enum)); if (I & HNUM) s.writeAttribute("initialHNum", QString::number(_initial_hnum)); if (I & INUM) s.writeAttribute("initialINum", QString::number(_initial_inum)); if (I & PSDNUM) s.writeAttribute("initialPSDNum", QString::number(_initial_psdnum)); if (I & TNUM) s.writeAttribute("initialTNum", QString::number(_initial_tnum)); if (I & MNUM) s.writeAttribute("initialMNum", QString::number(_initial_mnum)); if (I & PLOTNUM) s.writeAttribute("initialPlotNum", QString::number(_initial_plotnum)); if (I & LNUM) s.writeAttribute("initialLNum", QString::number(_initial_lnum)); if (I & DNUM) s.writeAttribute("initialDNum", QString::number(_initial_dnum)); if (I & DSNUM) s.writeAttribute("initialDSNum", QString::number(_initial_dsnum)); }
// to keep the size of the saved xml files smaller, 'I' // should be set to only the types who are effected by the // creation of the Object. (So, the type itself and any slave // objects which are created) eg: Vectors: VNUM|XNUM // It doesn't hurt to add more (the default is all bits set) // except that it increases the size of the .kst file, and // slows loading (not much, but if you have hundreds of // objects....) void NamedObject::saveNameInfo(QXmlStreamWriter &s, unsigned I) { if (descriptiveNameIsManual()) { s.writeAttribute("descriptiveNameIsManual", "true"); s.writeAttribute("descriptiveName", descriptiveName()); } if (I & VECTORNUM) s.writeAttribute("initialVNum", QString::number(_initial_vectornum)); if (I & SCALARNUM) s.writeAttribute("initialXNum", QString::number(_initial_scalarnum)); if (I & PLUGINNUM) s.writeAttribute("initialPNum", QString::number(_initial_pluginnum)); if (I & CSDNUM) s.writeAttribute("initialCSDNum", QString::number(_initial_csdnum)); if (I & CURVENUM) s.writeAttribute("initialCNum", QString::number(_initial_curvenum)); if (I & EQUATIONNUM) s.writeAttribute("initialENum", QString::number(_initial_equationnum)); if (I & HISTOGRAMNUM) s.writeAttribute("initialHNum", QString::number(_initial_histogramnum)); if (I & IMAGENUM) s.writeAttribute("initialINum", QString::number(_initial_imagenum)); if (I & PSDNUM) s.writeAttribute("initialPSDNum", QString::number(_initial_psdnum)); if (I & STRINGNUM) s.writeAttribute("initialTNum", QString::number(_initial_stringnum)); if (I & MATRIXNUM) s.writeAttribute("initialMNum", QString::number(_initial_matrixnum)); if (I & PLOTNUM) s.writeAttribute("initialPlotNum", QString::number(_initial_plotnum)); if (I & LEGENDNUM) s.writeAttribute("initialLNum", QString::number(_initial_legendnum)); if (I & VIEWITEMNUM) s.writeAttribute("initialDNum", QString::number(_initial_viewitemnum)); if (I & DATASOURCENUM) s.writeAttribute("initialDSNum", QString::number(_initial_datasourcenum)); }