qse  0.5.4
Public Member Functions | Protected Member Functions | Friends | List of all members
QseEdgeAligner Class Reference

#include <qseedgealigner.h>

Inheritance diagram for QseEdgeAligner:
Inheritance graph

Public Member Functions

 QseEdgeAligner (QseDataSet *inData, QseDataSet *outData, const QString &name, QObject *parent=0)
 
void exec ()
 
- Public Member Functions inherited from QseEXAFSOperator
 QseEXAFSOperator (QseDataSet *inData, QseDataSet *outData, const QString &name, QObject *parent=0)
 
QseDataSetinputData ()
 
QseDataSetoutputData ()
 
bool matchesEnergyPattern (const QseColumn *col, int colnum)
 
bool matchesEnergyColumn (const QseColumn *col, int colnum)
 
bool matchesDetectorPattern (const QseColumn *col, int colnum)
 
bool matchesDetectorColumn (const QseColumn *col, int colnum)
 
bool matchesNormalizationPattern (const QseColumn *col, int colnum)
 
bool matchesNormalizationColumn (const QseColumn *col, int colnum)
 
bool matchesSecondsPattern (const QseColumn *col, int colnum)
 
bool matchesSecondsColumn (const QseColumn *col, int colnum)
 
bool matchesCopyPattern (const QseColumn *col, int colnum)
 
bool matchesCopyColumn (const QseColumn *col, int colnum)
 
bool matchesCopyNormalizedPattern (const QseColumn *col, int colnum)
 
bool matchesCopyNormalizedColumn (const QseColumn *col, int colnum)
 
bool matchesCopyRatePattern (const QseColumn *col, int colnum)
 
bool matchesCopyRateColumn (const QseColumn *col, int colnum)
 
bool matchesCopyTotalCountsPattern (const QseColumn *col, int colnum)
 
bool matchesCopyTotalCountsColumn (const QseColumn *col, int colnum)
 
- Public Member Functions inherited from QseOperator
 QseOperator (const QString &name, QObject *parent=0)
 
QString name () const
 
void setName (const QString &name)
 
void addParameter (QseParameter *parameter)
 

Protected Member Functions

void alignScan (int n, QseScan *out)
 

Friends

class QseEdgeAlignerUI
 

Additional Inherited Members

- Public Types inherited from QseEXAFSOperator
enum  QseScanRole { UnspecifiedScanRole = -1, ScanNotUsedRole, ScanUsedRole }
 
enum  QseColumnRole {
  UnspecifiedRole = -1, NotUsedRole, DetectorRole, NormalizationRole,
  EnergyRole, SecondsRole, CopyRole, CopyNormalizedRole,
  CopyRateRole, CopyTotalCountsRole
}
 
- Signals inherited from QseOperator
void message (const QString &msg)
 
- Static Public Member Functions inherited from QseEXAFSOperator
static QColor colorForRole (QseColumnRole r)
 
static QColor backgroundColorForRole (QseColumnRole r)
 
- Protected Attributes inherited from QseEXAFSOperator
QseDataSetm_InputData
 
QseDataSetm_OutputData
 
QseRegExpParameter m_EnergyPattern
 
QseRegExpParameter m_DetectorPattern
 
QseRegExpParameter m_NormalizationPattern
 
QseRegExpParameter m_SecondsPattern
 
QseRegExpParameter m_CopyPattern
 
QseRegExpParameter m_CopyNormalizedPattern
 
QseRegExpParameter m_CopyRatePattern
 
QseRegExpParameter m_CopyTotalCountsPattern
 
QHash< const QseScan
*, QseScanRole
m_ScanExceptions
 
QHash< const QseColumn
*, QseColumnRole
m_Exceptions
 

Detailed Description

Definition at line 11 of file qseedgealigner.h.

Constructor & Destructor Documentation

QseEdgeAligner::QseEdgeAligner ( QseDataSet inData,
QseDataSet outData,
const QString &  name,
QObject *  parent = 0 
)

Definition at line 6 of file qseedgealigner.cpp.

7  : QseEXAFSOperator(inData, outData, name, parent)
8 {
9 }
QseEXAFSOperator(QseDataSet *inData, QseDataSet *outData, const QString &name, QObject *parent=0)
QString name() const
Definition: qseoperator.cpp:11

Member Function Documentation

void QseEdgeAligner::alignScan ( int  n,
QseScan out 
)
protected

Definition at line 26 of file qseedgealigner.cpp.

Referenced by exec().

27 {
28 // QseScan *sc = m_InputData->scan(n);
29 
30 // if (sc) {
31 // int nc = sc -> columnCount();
32 // int energycol = -1;
33 
34 // for (int c = 0; c < nc; c++) {
35 // QseColumn *col = sc -> column(c);
36 
37 // if (matchesEnergyColumn(col)) {
38 // energycol = c;
39 // }
40 // }
41 
42 // if (energycol < 0) {
43 // emit message(QString("No energy column found for scan %1").arg(n));
44 // } else {
45 // osc -> mergeHeaders(sc->header());
46 // osc -> setScanNumber(sc->scanNumber());
47 
48 // QseColumn *energy = osc -> appendColumn("Energy", sc -> column(energycol));
49 // QseColumn *normal = osc -> appendColumn("Norm");
50 // QseColumn *detect = osc -> appendColumn("Detector");
51 // QseColumn *seconds = osc -> appendColumn("Seconds");
52 
53 // energy -> multiplication(energyScalingRatio());
54 
55 // int nnorm = 0, ndet = 0, nsecs = 0;
56 
57 // for (int c = 0; c < nc; c++) {
58 // QseColumn *col = sc -> column(c);
59 
60 // if (matchesNormalizationColumn(col)) {
61 // nnorm += 1;
62 // normal -> addition(col);
63 // } else if (matchesDetectorColumn(col)) {
64 // ndet += 1;
65 // detect -> addition(col);
66 // } else if (matchesSecondsColumn(col)) {
67 // nsecs += 1;
68 // seconds -> addition(col);
69 // }
70 // }
71 
72 // if (nnorm > 0) {
73 // QseColumn *ratio = osc -> appendColumn("Ratio", detect);
74 
75 // ratio -> division(normal);
76 
77 // emit message(QString("Scan %1 had %2 detector columns, was normalized by %3 ion chambers").arg(n).arg(ndet).arg(nnorm));
78 // } else if (nsecs > 0) {
79 // QseColumn *ratio = osc -> appendColumn("Ratio", detect);
80 
81 // ratio -> division(seconds);
82 // emit message(QString("Scan %1 had %2 detector columns, was normalized by counting time").arg(n).arg(ndet));
83 // } else {
84 // QseColumn *ratio = osc -> appendColumn("Ratio", detect);
85 
86 // emit message(QString("Scan %1 had %2 detector columns, no normalization performed").arg(n).arg(ndet));
87 // }
88 // }
89 // }
90 }
void QseEdgeAligner::exec ( )
virtual

Implements QseOperator.

Definition at line 11 of file qseedgealigner.cpp.

References alignScan(), QseEXAFSOperator::m_InputData, and QseEXAFSOperator::m_OutputData.

12 {
13  m_OutputData -> clear();
14 
15  int ns = m_InputData -> scanCount();
16 
17  for (int s = 0; s < ns; s++) {
18  QseScan *osc = m_OutputData -> appendScan();
19 
20  alignScan(s, osc);
21  }
22 
23  m_OutputData -> emitOperationCompleted();
24 }
void alignScan(int n, QseScan *out)
QseDataSet * m_InputData
QseDataSet * m_OutputData

Friends And Related Function Documentation

friend class QseEdgeAlignerUI
friend

Definition at line 21 of file qseedgealigner.h.


The documentation for this class was generated from the following files: