musrWiz 0.1.0
Loading...
Searching...
No Matches
PMusrWiz.h
Go to the documentation of this file.
1/***************************************************************************
2
3 PMusrWiz.h
4
5 Author: Andreas Suter
6 e-mail: andreas.suter@psi.ch
7
8***************************************************************************/
9
10/***************************************************************************
11 * Copyright (C) 2007-2026 by Andreas Suter *
12 * andreas.suter@psi.ch *
13 * *
14 * This program is free software; you can redistribute it and/or modify *
15 * it under the terms of the GNU General Public License as published by *
16 * the Free Software Foundation; either version 2 of the License, or *
17 * (at your option) any later version. *
18 * *
19 * This program is distributed in the hope that it will be useful, *
20 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
21 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
22 * GNU General Public License for more details. *
23 * *
24 * You should have received a copy of the GNU General Public License *
25 * along with this program; if not, write to the *
26 * Free Software Foundation, Inc., *
27 * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
28 ***************************************************************************/
29
30#ifndef _PMUSRWIZ_
31#define _PMUSRWIZ_
32
33#include <memory>
34
35#include <QString>
36#include <QStringList>
37#include <QWizard>
38#include <QWizardPage>
39#include <QObject>
40#include <QLineEdit>
41#include <QComboBox>
42#include <QCheckBox>
43#include <QPlainTextEdit>
44#include <QPushButton>
45#include <QLabel>
46#include <QFormLayout>
47
48#include "musrWiz.h"
49#include "PAdmin.h"
50
51#define INST_UNDEF 0
52#define INST_PSI 1
53#define INST_TRIUMF 2
54#define INST_ISIS 3
55#define INST_JPARC 4
56
57#define FIT_TYPE_UNDEF 0
58#define FIT_TYPE_SINGLE_HISTO 1
59#define FIT_TYPE_SINGLE_HISTO_RRF 2
60#define FIT_TYPE_ASYMMETRY 3
61#define FIT_TYPE_ASYMMETRY_RRF 4
62#define FIT_TYPE_MU_MINUS 5
63#define FIT_TYPE_NONE_MUSR 6
64
65#define MEASURE_UNDEF 0
66#define MEASURE_ZF 1
67#define MEASURE_TF 2
68#define MEASURE_LF 3
69
70#define T0_FROM_FILE 0
71#define T0_FROM_MUSR_T0 1
72#define T0_ENTER_WIZ 2
73
74//-------------------------------------------------------------------
75struct PParamGui {
76 QLineEdit *paramName;
77 QLineEdit *paramVal;
78 QLineEdit *paramStep;
79 QLineEdit *paramBoundLow;
80 QLineEdit *paramBoundHigh;
81};
82
83//-------------------------------------------------------------------
85{
86 public:
87 PMsrData();
88 ~PMsrData();
89
90 void clearParam() { fParam.clear(); }
91 void clearFunc() { fFunc.clear(); }
92 void clearMap() { fMap.clear(); }
93
94 void setMsrPathName(QString str) { fMsrPathName = str; }
95 void setMsrFileName(QString fileName) { fMsrFileName = fileName; }
96 void appendMsrFileName(QString str) { fMsrFileName += str; }
97 void setYear(QString year) { fYear = year; }
98 void setRunNumber(int runNo) { fRunNumber = runNo; }
99 void setInstitute(QString institute) { fInstitute = institute; }
100 void setInstrument(QString instrument) { fInstrument = instrument; }
101 void setSetup(QString setup) { fSetup = setup; }
102 void setFitType(int fitType) { fFitType = fitType; }
103 void setTypeOfMeasurement(int type) { fTypeOfMeasurement = type; }
104 void setT0Tag(int tag) { fT0Tag = tag; }
105 void setT0(int t0) { fT0 = t0; }
106 void setTheory(QString str) { fTheo = str; }
107 void setParam(QVector<PParam> param) { fParam = param; }
108 void setParam(int idx, PParam param);
109 void appendParam(QVector<PParam> param);
110 void setMap(QVector<PParam> map) { fMap = map; }
111 void setMap(int idx, PParam map);
112 void appendMap(QVector<PParam> map);
113 void setMapTemplateName(int idx, QString name);
114 void setFunc(int funNo, QString str="??");
115 void setPacking(int pack) { fPacking = abs(pack); }
116 void setFitStart(double start) { fFitStart = start; }
117 void setFitEnd(double end) { fFitEnd = end; }
118 void setCmd(QString cmd) { fCommands = cmd; }
119 void setTemplate(int templ) { fTemplate = templ; }
120 void setTemplate(PTheoTemplate templ) { fTheoTempl = templ; }
121
122 QString getMsrPathName() { return fMsrPathName; }
123 QString getMsrFileName() { return fMsrFileName; }
124 QString getYear() { return fYear; }
125 int getRunNumber() { return fRunNumber; }
126 QString getInstitute() { return fInstitute; }
127 QString getInstrument() { return fInstrument; }
128 QString getSetup() { return fSetup; }
129 int getFitType() { return fFitType; }
130 QString getFitTypeString();
132 int getT0Tag() { return fT0Tag; }
133 int getT0() { return fT0; }
134 QString getTheory() { return fTheo; }
135 int getNoOfParam() { return fParam.size(); }
136 PParam getParam(int idx);
137 int getNoOfMap() { return fMap.size(); }
138 PParam getMap(int idx);
139 int getNoOfFunc() { return fFunc.size(); }
140 int getFuncNo(int idx);
141 bool isPresent(const QString funStr);
142 QString getFunc(int funNo);
143 QString getFuncAll();
144 int getPacking() { return fPacking; }
145 double getFitStart() { return fFitStart; }
146 double getFitEnd() { return fFitEnd; }
147 QString getCmd() { return fCommands; }
148 bool isTemplate() { return (fTemplate == -1) ? false : true; }
150
151 void sort(QString whichVec);
152 void removeFunc(QVector<int> &funList);
153
154 private:
159 QString fInstitute;
160 QString fInstrument;
161 QString fSetup;
165 int fT0;
166 QString fYear;
168 double fFitStart;
169 double fFitEnd;
170 QString fCommands;
171
172 QString fTheo;
173
175 QVector<PParam> fParam;
176 QVector<PFunc> fFunc;
177 QVector<PParam> fMap;
178};
179
180//-------------------------------------------------------------------
181class PShowTheo : public QDialog
182{
183 public:
184 PShowTheo(QString theo, QString func = QString(""),
185 QWidget *parent = Q_NULLPTR, Qt::WindowFlags f = Qt::WindowFlags());
186};
187
188//-------------------------------------------------------------------
189class PIntroPage : public QWizardPage
190{
191 Q_OBJECT
192
193 public:
194 PIntroPage(PAdmin *admin, PMsrData *data, QWidget *parent=0);
195
196 int nextId() const Q_DECL_OVERRIDE;
197 bool validatePage() override;
198
199 private slots:
200 void handleInstituteChanged(int idx);
201 void handleFitType(int idx);
202 void checkSetup(int idx);
203 void handleT0(int idx);
204
205 private:
208
209 std::unique_ptr<QLineEdit> fMsrFileName;
210 std::unique_ptr<QLineEdit> fYear;
211 std::unique_ptr<QLineEdit> fRunNumber;
212 std::unique_ptr<QComboBox> fInstitute;
213 std::unique_ptr<QComboBox> fInstrument;
214 std::unique_ptr<QComboBox> fFitType;
215 std::unique_ptr<QComboBox> fMeasurementType;
216 std::unique_ptr<QComboBox> fT0;
217};
218
219//-------------------------------------------------------------------
220class PTheoPage : public QWizardPage
221{
222 Q_OBJECT
223
224 public:
225 PTheoPage(PAdmin *admin, PMsrData *data, QWidget *parent=0);
226
227 int nextId() const Q_DECL_OVERRIDE;
228 void initializePage() override;
229 bool validatePage() override;
230
231 private slots:
232 void templateState(int);
233 void clearAll();
234 void addTheory();
235 void checkTheory();
236
237 private:
240
244
246
247 QVector<PParam> fParamList;
248 QVector<PParam> fMapList;
249 QVector<int> fFunList;
250
251 std::unique_ptr<QPlainTextEdit> fTheo;
252 std::unique_ptr<QCheckBox> fEditTemplate;
253 std::unique_ptr<QPushButton> fClearAll;
254 std::unique_ptr<QComboBox> fTheoSelect;
255 std::unique_ptr<QPushButton> fTheoAdd;
256 std::unique_ptr<QPushButton> fCheckTheo;
257
258 QString getTheoryFunction(int idx);
259 bool analyzeTokens(QString str, int noOfTokens);
260 void dealWithParam(QString theo, int paramNo, int paramIdx);
261 void dealWithMap(QString theo, int mapNo, int paramIdx);
262 void dealWithFun(int funNo);
263};
264
265//-------------------------------------------------------------------
266class PFuncPage : public QWizardPage
267{
268 Q_OBJECT
269
270 public:
271 PFuncPage(PMsrData *data, QWidget *parent=0);
272
273 int nextId() const Q_DECL_OVERRIDE;
274 void initializePage() override;
275 void cleanupPage() override;
276 bool validatePage() override;
277
278 private slots:
279 void showTheo();
280
281 private:
283
284 std::unique_ptr<QPlainTextEdit> fFunc;
285 std::unique_ptr<QPushButton> fShowTheo;
286
287 int getFuncNo(const QString str);
288};
289
290//-------------------------------------------------------------------
291class PMapPage : public QWizardPage
292{
293 Q_OBJECT
294
295 public:
296 PMapPage(PMsrData *data, QWidget *parent=0);
297
298 int nextId() const Q_DECL_OVERRIDE;
299 void initializePage() override;
300 bool validatePage() override;
301
302 private slots:
303 void showTheo();
304
305 private:
307
308 std::unique_ptr<QFormLayout> fMapPageLayout;
309 QVector<PParamGui> fMapGuiVec;
310 std::unique_ptr<QPushButton> fShowTheo;
311};
312
313//-------------------------------------------------------------------
314class PParamPage : public QWizardPage
315{
316 Q_OBJECT
317
318 public:
319 PParamPage(PMsrData *data, QWidget *parent=0);
320
321 int nextId() const Q_DECL_OVERRIDE;
322 void initializePage() override;
323 bool validatePage() override;
324
325 private slots:
326 void showTheo();
327
328 private:
330
331 std::unique_ptr<QFormLayout> fParameterPageLayout;
332 QVector<PParamGui> fParamGuiVec;
333 std::unique_ptr<QPushButton> fShowTheo;
334};
335
336//-------------------------------------------------------------------
337class PFitInfoPage : public QWizardPage
338{
339 Q_OBJECT
340
341 public:
342 PFitInfoPage(PMsrData *data, QWidget *parent=0);
343
344 int nextId() const Q_DECL_OVERRIDE;
345 void initializePage() override;
346 bool validatePage() override;
347
348 private:
350
351 std::unique_ptr<QLineEdit> fFitRangeStart;
352 std::unique_ptr<QLineEdit> fFitRangeEnd;
353 std::unique_ptr<QLineEdit> fPacking;
354 std::unique_ptr<QPlainTextEdit> fCommands;
355};
356
357//-------------------------------------------------------------------
358class PConclusionPage : public QWizardPage
359{
360 Q_OBJECT
361
362 public:
363 PConclusionPage(PAdmin *admin, PMsrData *data, QString *msrFilePath, QWidget *parent=0);
364
365 private slots:
366 void saveAsMsrFile();
367 void saveAsTemplate();
368
369 private:
370 QString *fMsrFilePath;
373
374 std::unique_ptr<QLabel> fMsrPathFileLabel;
375 std::unique_ptr<QLineEdit> fMsrFilePathLineEdit;
376 std::unique_ptr<QPushButton> fSaveAsMsrFile;
377 std::unique_ptr<QPushButton> fSaveAsTemplate;
378};
379
380//-------------------------------------------------------------------
381class PMusrWiz : public QWizard
382{
383 Q_OBJECT
384
385 friend class PIntroPage;
386 friend class PTheoPage;
387 friend class PMapPage;
388 friend class PFuncPage;
389 friend class PParamPage;
390 friend class PFitInfoPage;
391
392 public:
393 PMusrWiz(QWidget *parent=Q_NULLPTR);
394 PMusrWiz(PAdmin *admin, PMsrData *msrData, QWidget *parent=Q_NULLPTR);
395
396 private slots:
397 virtual int writeMsrFile(int result);
398 virtual void help();
399
400 protected:
402
403 private:
407
408 QString getRunName(PInstrument *instru);
409
410 virtual int writeMsrFileSingleHisto();
411 virtual int writeMsrFileAsymmetry();
412};
413
414#endif // _PMUSRWIZ_
The PAdmin class is the main administration class for musrWiz.
Definition PAdmin.h:271
PMsrData * fMsrData
Definition PMusrWiz.h:372
std::unique_ptr< QPushButton > fSaveAsMsrFile
Definition PMusrWiz.h:376
std::unique_ptr< QLineEdit > fMsrFilePathLineEdit
Definition PMusrWiz.h:375
void saveAsMsrFile()
Definition PMusrWiz.cpp:1819
QString * fMsrFilePath
Definition PMusrWiz.h:370
PConclusionPage(PAdmin *admin, PMsrData *data, QString *msrFilePath, QWidget *parent=0)
PConclusionPage::PConclusionPage.
Definition PMusrWiz.cpp:1787
void saveAsTemplate()
Definition PMusrWiz.cpp:1833
PAdmin * fAdmin
Definition PMusrWiz.h:371
std::unique_ptr< QLabel > fMsrPathFileLabel
Definition PMusrWiz.h:374
std::unique_ptr< QPushButton > fSaveAsTemplate
Definition PMusrWiz.h:377
std::unique_ptr< QLineEdit > fFitRangeStart
Definition PMusrWiz.h:351
PMsrData * fMsrData
Definition PMusrWiz.h:349
PFitInfoPage(PMsrData *data, QWidget *parent=0)
PFitInfoPage::PFitInfoPage.
Definition PMusrWiz.cpp:1708
int nextId() const Q_DECL_OVERRIDE
PFitInfoPage::nextId.
Definition PMusrWiz.cpp:1754
bool validatePage() override
PFitInfoPage::validatePage.
Definition PMusrWiz.cpp:1764
void initializePage() override
PFitInfoPage::initializePage.
Definition PMusrWiz.cpp:1743
std::unique_ptr< QPlainTextEdit > fCommands
Definition PMusrWiz.h:354
std::unique_ptr< QLineEdit > fPacking
Definition PMusrWiz.h:353
std::unique_ptr< QLineEdit > fFitRangeEnd
Definition PMusrWiz.h:352
void initializePage() override
Definition PMusrWiz.cpp:1390
std::unique_ptr< QPlainTextEdit > fFunc
Definition PMusrWiz.h:284
void cleanupPage() override
Definition PMusrWiz.cpp:1416
PMsrData * fMsrData
Definition PMusrWiz.h:282
bool validatePage() override
PFuncPage::validatePage.
Definition PMusrWiz.cpp:1436
PFuncPage(PMsrData *data, QWidget *parent=0)
PFuncPage::PFuncPage.
Definition PMusrWiz.cpp:1341
std::unique_ptr< QPushButton > fShowTheo
Definition PMusrWiz.h:285
void showTheo()
PFuncPage::showTheo.
Definition PMusrWiz.cpp:1367
int getFuncNo(const QString str)
PFuncPage::getFuncNo.
Definition PMusrWiz.cpp:1531
int nextId() const Q_DECL_OVERRIDE
PFuncPage::nextId.
Definition PMusrWiz.cpp:1378
The PInstrument class represents a muon spectrometer instrument.
Definition PInstrumentDef.h:270
std::unique_ptr< QComboBox > fFitType
Definition PMusrWiz.h:214
std::unique_ptr< QLineEdit > fYear
Definition PMusrWiz.h:210
std::unique_ptr< QLineEdit > fMsrFileName
Definition PMusrWiz.h:209
void handleInstituteChanged(int idx)
Definition PMusrWiz.cpp:538
std::unique_ptr< QComboBox > fInstitute
Definition PMusrWiz.h:212
int nextId() const Q_DECL_OVERRIDE
PIntroPage::nextId.
Definition PMusrWiz.cpp:635
std::unique_ptr< QLineEdit > fRunNumber
Definition PMusrWiz.h:211
PAdmin * fAdmin
Definition PMusrWiz.h:206
bool validatePage() override
PIntroPage::validatePage.
Definition PMusrWiz.cpp:645
PMsrData * fMsrData
Definition PMusrWiz.h:207
void checkSetup(int idx)
PIntroPage::checkSetup.
Definition PMusrWiz.cpp:567
std::unique_ptr< QComboBox > fMeasurementType
Definition PMusrWiz.h:215
PIntroPage(PAdmin *admin, PMsrData *data, QWidget *parent=0)
PIntroPage::PIntroPage.
Definition PMusrWiz.cpp:455
void handleT0(int idx)
PIntroPage::handleT0.
Definition PMusrWiz.cpp:620
void handleFitType(int idx)
PIntroPage::handleFitType.
Definition PMusrWiz.cpp:553
std::unique_ptr< QComboBox > fT0
Definition PMusrWiz.h:216
std::unique_ptr< QComboBox > fInstrument
Definition PMusrWiz.h:213
PMsrData * fMsrData
Definition PMusrWiz.h:306
std::unique_ptr< QFormLayout > fMapPageLayout
Definition PMusrWiz.h:308
void initializePage() override
PMapPage::initializePage.
Definition PMusrWiz.cpp:1208
void showTheo()
PMapPage::showTheo.
Definition PMusrWiz.cpp:1331
bool validatePage() override
PMapPage::validatePage.
Definition PMusrWiz.cpp:1292
QVector< PParamGui > fMapGuiVec
Definition PMusrWiz.h:309
std::unique_ptr< QPushButton > fShowTheo
Definition PMusrWiz.h:310
PMapPage(PMsrData *data, QWidget *parent=0)
PMapPage::PMapPage.
Definition PMusrWiz.cpp:1188
int nextId() const Q_DECL_OVERRIDE
PMapPage::nextId.
Definition PMusrWiz.cpp:1199
Definition PMusrWiz.h:85
int getFuncNo(int idx)
PMsrData::getFuncNo.
Definition PMusrWiz.cpp:279
QString getFunc(int funNo)
PMsrData::getFunc.
Definition PMusrWiz.cpp:309
QString fSetup
Definition PMusrWiz.h:161
QString fMsrPathName
Definition PMusrWiz.h:156
QVector< PFunc > fFunc
Definition PMusrWiz.h:176
void setMsrPathName(QString str)
Definition PMusrWiz.h:94
void appendMsrFileName(QString str)
Definition PMusrWiz.h:96
void appendMap(QVector< PParam > map)
PMsrData::appendMap.
Definition PMusrWiz.cpp:182
int getNoOfFunc()
Definition PMusrWiz.h:139
QString getFitTypeString()
PMsrData::getFitTypeString.
Definition PMusrWiz.cpp:96
int fRunNumber
Definition PMusrWiz.h:158
int fT0
Definition PMusrWiz.h:165
QString fTheo
Definition PMusrWiz.h:172
QVector< PParam > fMap
Definition PMusrWiz.h:177
PMsrData()
PMsrData::PMsrData.
Definition PMusrWiz.cpp:59
bool isPresent(const QString funStr)
PMsrData::isPresent.
Definition PMusrWiz.cpp:293
double fFitStart
Definition PMusrWiz.h:168
int getRunNumber()
Definition PMusrWiz.h:125
QString fYear
Definition PMusrWiz.h:166
int getT0Tag()
Definition PMusrWiz.h:132
void setT0(int t0)
Definition PMusrWiz.h:105
QString fInstitute
Definition PMusrWiz.h:159
int getT0()
Definition PMusrWiz.h:133
void setFitEnd(double end)
Definition PMusrWiz.h:117
void setParam(QVector< PParam > param)
Definition PMusrWiz.h:107
void sort(QString whichVec)
PMsrData::sort.
Definition PMusrWiz.cpp:348
void setYear(QString year)
Definition PMusrWiz.h:97
int getPacking()
Definition PMusrWiz.h:144
void setSetup(QString setup)
Definition PMusrWiz.h:101
~PMsrData()
PMsrData::~PMsrData.
Definition PMusrWiz.cpp:86
PTheoTemplate fTheoTempl
Definition PMusrWiz.h:174
void setCmd(QString cmd)
Definition PMusrWiz.h:118
int getNoOfParam()
Definition PMusrWiz.h:135
QString getCmd()
Definition PMusrWiz.h:147
void setPacking(int pack)
Definition PMusrWiz.h:115
bool isTemplate()
Definition PMusrWiz.h:148
int fTemplate
Definition PMusrWiz.h:155
QString getYear()
Definition PMusrWiz.h:124
void clearMap()
Definition PMusrWiz.h:92
QString getSetup()
Definition PMusrWiz.h:128
void appendParam(QVector< PParam > param)
PMsrData::appendParam.
Definition PMusrWiz.cpp:160
PTheoTemplate getTemplate()
Definition PMusrWiz.h:149
int fTypeOfMeasurement
Definition PMusrWiz.h:163
void setMsrFileName(QString fileName)
Definition PMusrWiz.h:95
int fPacking
Definition PMusrWiz.h:167
void setFitType(int fitType)
Definition PMusrWiz.h:102
void setTypeOfMeasurement(int type)
Definition PMusrWiz.h:103
void setTemplate(int templ)
Definition PMusrWiz.h:119
int getFitType()
Definition PMusrWiz.h:129
PParam getMap(int idx)
PMsrData::getMap.
Definition PMusrWiz.cpp:263
double getFitStart()
Definition PMusrWiz.h:145
QString getTheory()
Definition PMusrWiz.h:134
QString fCommands
Definition PMusrWiz.h:170
int fT0Tag
Definition PMusrWiz.h:164
void setInstrument(QString instrument)
Definition PMusrWiz.h:100
int getNoOfMap()
Definition PMusrWiz.h:137
void setTheory(QString str)
Definition PMusrWiz.h:106
QString getFuncAll()
PMsrData::getFuncAll.
Definition PMusrWiz.cpp:332
QString getMsrFileName()
Definition PMusrWiz.h:123
void setMap(QVector< PParam > map)
Definition PMusrWiz.h:110
QVector< PParam > fParam
Definition PMusrWiz.h:175
void setMapTemplateName(int idx, QString name)
PMsrData::setMapTemplateName.
Definition PMusrWiz.cpp:206
void clearFunc()
Definition PMusrWiz.h:91
QString getInstrument()
Definition PMusrWiz.h:127
void setRunNumber(int runNo)
Definition PMusrWiz.h:98
PParam getParam(int idx)
PMsrData::getParam.
Definition PMusrWiz.cpp:247
double getFitEnd()
Definition PMusrWiz.h:146
void removeFunc(QVector< int > &funList)
PMsrData::removeFunc.
Definition PMusrWiz.cpp:403
QString fMsrFileName
Definition PMusrWiz.h:157
void setFitStart(double start)
Definition PMusrWiz.h:116
void setFunc(int funNo, QString str="??")
PMsrData::setFunc.
Definition PMusrWiz.cpp:220
void clearParam()
Definition PMusrWiz.h:90
QString getInstitute()
Definition PMusrWiz.h:126
void setT0Tag(int tag)
Definition PMusrWiz.h:104
int fFitType
Definition PMusrWiz.h:162
QString getMsrPathName()
Definition PMusrWiz.h:122
QString fInstrument
Definition PMusrWiz.h:160
double fFitEnd
Definition PMusrWiz.h:169
void setInstitute(QString institute)
Definition PMusrWiz.h:99
void setTemplate(PTheoTemplate templ)
Definition PMusrWiz.h:120
int getTypeOfMeasurement()
Definition PMusrWiz.h:131
@ ePageMaps
Definition PMusrWiz.h:401
@ ePageTheory
Definition PMusrWiz.h:401
@ ePageParameters
Definition PMusrWiz.h:401
@ ePageConclusion
Definition PMusrWiz.h:401
@ ePageFunctions
Definition PMusrWiz.h:401
@ ePageFitInfo
Definition PMusrWiz.h:401
@ ePageIntro
Definition PMusrWiz.h:401
friend class PMapPage
Definition PMusrWiz.h:387
friend class PFitInfoPage
Definition PMusrWiz.h:390
virtual int writeMsrFileAsymmetry()
PMusrWiz::writeMsrFileAsymmetry.
Definition PMusrWiz.cpp:2304
virtual int writeMsrFile(int result)
PMusrWiz::writeMsrFile.
Definition PMusrWiz.cpp:2017
friend class PParamPage
Definition PMusrWiz.h:389
QString getRunName(PInstrument *instru)
PMusrWiz::getRunName.
Definition PMusrWiz.cpp:2540
friend class PFuncPage
Definition PMusrWiz.h:388
virtual int writeMsrFileSingleHisto()
PMusrWiz::writeMsrFileSingleHisto.
Definition PMusrWiz.cpp:2071
PMusrWiz(QWidget *parent=Q_NULLPTR)
PMusrWiz::PMusrWiz.
Definition PMusrWiz.cpp:1953
PMsrData * fMsrData
Definition PMusrWiz.h:406
friend class PIntroPage
Definition PMusrWiz.h:385
PAdmin * fAdmin
Definition PMusrWiz.h:405
friend class PTheoPage
Definition PMusrWiz.h:386
QString fMsrFilePath
Definition PMusrWiz.h:404
virtual void help()
PMusrWiz::help.
Definition PMusrWiz.cpp:2594
QVector< PParamGui > fParamGuiVec
Definition PMusrWiz.h:332
bool validatePage() override
PParamPage::validatePage.
Definition PMusrWiz.cpp:1660
void showTheo()
PParamPage::showTheo.
Definition PMusrWiz.cpp:1698
PMsrData * fMsrData
Definition PMusrWiz.h:329
int nextId() const Q_DECL_OVERRIDE
PParamPage::nextId.
Definition PMusrWiz.cpp:1569
std::unique_ptr< QPushButton > fShowTheo
Definition PMusrWiz.h:333
PParamPage(PMsrData *data, QWidget *parent=0)
PParamPage::PParamPage.
Definition PMusrWiz.cpp:1558
std::unique_ptr< QFormLayout > fParameterPageLayout
Definition PMusrWiz.h:331
void initializePage() override
PParamPage::initializePage.
Definition PMusrWiz.cpp:1578
The PParam class handles a single fit parameter for the musrWiz application.
Definition musrWiz.h:42
PShowTheo(QString theo, QString func=QString(""), QWidget *parent=Q_NULLPTR, Qt::WindowFlags f=Qt::WindowFlags())
Definition PMusrWiz.cpp:422
std::unique_ptr< QPushButton > fTheoAdd
Definition PMusrWiz.h:255
QVector< PParam > fParamList
Definition PMusrWiz.h:247
int nextId() const Q_DECL_OVERRIDE
PTheoPage::nextId.
Definition PMusrWiz.cpp:753
PAdmin * fAdmin
Definition PMusrWiz.h:238
std::unique_ptr< QComboBox > fTheoSelect
Definition PMusrWiz.h:254
bool fHaveMap
Definition PMusrWiz.h:242
void dealWithFun(int funNo)
PTheoPage::dealWithFun.
Definition PMusrWiz.cpp:1171
void addTheory()
PTheoPage::addTheory.
Definition PMusrWiz.cpp:842
void initializePage() override
Definition PMusrWiz.cpp:742
void templateState(int)
Definition PMusrWiz.cpp:816
std::unique_ptr< QPlainTextEdit > fTheo
Definition PMusrWiz.h:251
void dealWithParam(QString theo, int paramNo, int paramIdx)
PTheoPage::dealWithParam.
Definition PMusrWiz.cpp:1098
bool fTheoValid
Definition PMusrWiz.h:241
bool fHaveFunc
Definition PMusrWiz.h:243
int fTheoBlockNo
Definition PMusrWiz.h:245
void clearAll()
Definition PMusrWiz.cpp:830
void checkTheory()
PTheoPage::checkTheory.
Definition PMusrWiz.cpp:880
QVector< int > fFunList
Definition PMusrWiz.h:249
bool analyzeTokens(QString str, int noOfTokens)
PTheoPage::analyzeTokens.
Definition PMusrWiz.cpp:1000
QVector< PParam > fMapList
Definition PMusrWiz.h:248
bool validatePage() override
PTheoPage::validatePage.
Definition PMusrWiz.cpp:768
std::unique_ptr< QPushButton > fClearAll
Definition PMusrWiz.h:253
PMsrData * fMsrData
Definition PMusrWiz.h:239
std::unique_ptr< QPushButton > fCheckTheo
Definition PMusrWiz.h:256
std::unique_ptr< QCheckBox > fEditTemplate
Definition PMusrWiz.h:252
QString getTheoryFunction(int idx)
PTheoPage::getTheoryFunction.
Definition PMusrWiz.cpp:965
void dealWithMap(QString theo, int mapNo, int paramIdx)
PTheoPage::dealWithMap.
Definition PMusrWiz.cpp:1135
PTheoPage(PAdmin *admin, PMsrData *data, QWidget *parent=0)
PTheoPage::PTheoPage.
Definition PMusrWiz.cpp:673
Definition PTheoTemplate.h:38
Definition PMusrWiz.h:75
QLineEdit * paramStep
Definition PMusrWiz.h:78
QLineEdit * paramName
Definition PMusrWiz.h:76
QLineEdit * paramVal
Definition PMusrWiz.h:77
QLineEdit * paramBoundHigh
Definition PMusrWiz.h:80
QLineEdit * paramBoundLow
Definition PMusrWiz.h:79