Brief description of class still missing. More...
#include <EllipticityProxy.h>
Public Member Functions | |
| virtual CurveBrowserProxy * | clone () const |
| virtual int | columnCount () const |
| virtual QStringList | columnFileTypes () const |
| virtual QString | columnName (int col) const |
| virtual QString | columnUnit (int col) const |
| virtual QVariant | columnValue (int sample, int col) const |
| virtual QVector< int > | defaultColumnFileTypes () const |
| virtual void | parse (ColumnTextIterator &it) |
| virtual QVector< int > | savedColumns () const |
| virtual void | setColumnValue (int sample, int col, const QVariant &value) |
| virtual void | setYAxisProperties (Axis *a) |
| virtual QString | tag () const |
| virtual int | xAxisColumn () const |
| virtual int | xAxisInversedColumn () const |
| virtual int | yAxisColumn () const |
| virtual int | yAxisInversedColumn () const |
Brief description of class still missing.
Full description of class still missing
| virtual CurveBrowserProxy* QGpGuiWave::EllipticityProxy::clone | ( | ) | const [inline, virtual] |
Implements SciFigs::CurveBrowserProxy.
{return new EllipticityProxy;}
| virtual int QGpGuiWave::EllipticityProxy::columnCount | ( | ) | const [inline, virtual] |
Implements SciFigs::CurveBrowserProxy.
{return 6;}
| QStringList QGpGuiWave::EllipticityProxy::columnFileTypes | ( | ) | const [virtual] |
Implements SciFigs::CurveBrowserProxy.
References QGpCoreTools::tr(), and TRACE.
{
TRACE;
static QStringList types;
if(types.isEmpty()) {
types << tr("Frequency (Hz)") // 1
<< tr("Period (s)") // 2
<< tr("Ellipticity (H/V)") // 3
<< tr("Ellipticity log(H/V)") // 4
<< tr("Ellipticity (V/H)") // 5
<< tr("Ellipticity log(V/H)") // 6
<< tr("log(H/V) stddev") // 7
<< tr("H/V stddev (approx.)") // 8
<< tr("H/V*stddev") // 9
<< tr("H/V/stddev") // 10
<< tr("Weight"); // 11
}
return types;
}
| QString QGpGuiWave::EllipticityProxy::columnName | ( | int | col | ) | const [virtual] |
Implements SciFigs::CurveBrowserProxy.
References QGpCoreTools::tr(), and TRACE.
| QString QGpGuiWave::EllipticityProxy::columnUnit | ( | int | col | ) | const [virtual] |
Implements SciFigs::CurveBrowserProxy.
References QGpCoreTools::tr(), and TRACE.
| QVariant QGpGuiWave::EllipticityProxy::columnValue | ( | int | sample, |
| int | col | ||
| ) | const [virtual] |
Implements SciFigs::CurveBrowserProxy.
References QGpGuiWave::ModalProxy::curve(), QGpCoreTools::StatisticalValue< numberType >::mean(), QGpCoreTools::StatisticalValue< numberType >::stddev(), TRACE, QGpCoreTools::StatisticalValue< numberType >::weight(), and QGpCoreTools::StatisticalPoint< numberType >::x().
| QVector< int > QGpGuiWave::EllipticityProxy::defaultColumnFileTypes | ( | ) | const [virtual] |
Implements SciFigs::CurveBrowserProxy.
References TRACE.
{
TRACE;
QVector<int> types;
types << 1 << 3 << 7 << 11;
return types;
}
| void QGpGuiWave::EllipticityProxy::parse | ( | ColumnTextIterator & | it | ) | [virtual] |
Implements SciFigs::CurveBrowserProxy.
References QGpCoreTools::Curve< pointType >::append(), QGpCoreTools::ColumnTextIterator::atEnd(), QGpCoreTools::ColumnTextIterator::atSectionEnd(), QGpCoreWave::ModalCurve::clear(), QGpCoreTools::ColumnTextParser::columnCount(), QGpCoreTools::ColumnTextIterator::currentRow(), QGpGuiWave::ModalProxy::curve(), QGpCoreTools::endl(), QGpCoreTools::Curve< pointType >::isEmpty(), QGpCoreTools::StatisticalValue< numberType >::mean(), QGpCoreTools::ColumnTextIterator::nextRow(), QGpCoreTools::ColumnTextIterator::parser(), QGpCoreTools::StatisticalValue< numberType >::setMean(), QGpCoreTools::StatisticalValue< numberType >::setStddev(), QGpCoreTools::StatisticalValue< numberType >::setWeight(), QGpCoreTools::StatisticalPoint< numberType >::setX(), QGpCoreTools::StatisticalValue< numberType >::stddev(), QGpCoreTools::ColumnTextParser::text(), QGpCoreTools::tr(), TRACE, and QGpCoreTools::ColumnTextParser::type().
{
TRACE;
const ColumnTextParser * parser=it.parser();
int nColumns=parser->columnCount();
ModalCurve& c=curve();
c.clear();
while(!it.atEnd() && c.isEmpty()) {
while(!it.atSectionEnd()) {
FactoryPoint p;
enum StddevType {Linear, Log, LowerBound, UpperBound};
StddevType stddevType=Log;
for(int iCol=0;iCol<nColumns;iCol++) {
switch(parser->type(iCol)) {
case 1:
p.setX(parser->text(it.currentRow(), iCol).toDouble());
break;
case 2:
p.setX(1.0/parser->text(it.currentRow(), iCol).toDouble());
break;
case 3:
p.setMean(parser->text(it.currentRow(), iCol).toDouble());
break;
case 4:
p.setMean(pow( 10.0, parser->text(it.currentRow(), iCol).toDouble()) );
break;
case 5:
p.setMean(1.0/parser->text(it.currentRow(), iCol).toDouble());
break;
case 6:
p.setMean(pow( 10.0, -parser->text(it.currentRow(), iCol).toDouble()) );
break;
case 7:
p.setStddev(parser->text(it.currentRow(), iCol).toDouble());
stddevType=Log;
break;
case 8:
p.setStddev(parser->text(it.currentRow(), iCol).toDouble());
stddevType=Linear;
break;
case 9:
p.setStddev(parser->text(it.currentRow(), iCol).toDouble());
stddevType=UpperBound;
break;
case 10:
p.setStddev(parser->text(it.currentRow(), iCol).toDouble());
stddevType=LowerBound;
break;
case 11:
p.setWeight(parser->text(it.currentRow(), iCol).toDouble());
break;
default:
break;
}
}
switch(stddevType) {
case Linear:
p.setStddev(0.5 * (( p.mean()+p.stddev())/p.mean() + p.mean()/(p.mean()-p.stddev()) ));
break;
case Log:
break;
case LowerBound:
p.setStddev(p.mean()/p.stddev());
break;
case UpperBound:
p.setStddev(p.mean()/p.stddev());
break;
}
if(p.stddev()!=0 && p.stddev()<=1) {
App::stream() << tr("Standard deviation must be greater than 1 (log scale)") << endl;
}
c.append(p);
it.nextRow();
}
}
}
| QVector< int > QGpGuiWave::EllipticityProxy::savedColumns | ( | ) | const [virtual] |
Implements SciFigs::CurveBrowserProxy.
References TRACE.
{
TRACE;
QVector<int> l;
l << 0 << 2 << 4 << 5;
return l;
}
| void QGpGuiWave::EllipticityProxy::setColumnValue | ( | int | sample, |
| int | col, | ||
| const QVariant & | value | ||
| ) | [virtual] |
Implements SciFigs::CurveBrowserProxy.
References QGpGuiWave::ModalProxy::curve(), QGpCoreTools::StatisticalValue< numberType >::setMean(), QGpCoreTools::StatisticalValue< numberType >::setStddev(), QGpCoreTools::StatisticalValue< numberType >::setWeight(), QGpCoreTools::StatisticalPoint< numberType >::setX(), and TRACE.
{
TRACE;
FactoryPoint& p=curve()[sample];
switch(col) {
case 0: p.setX(value.toDouble()); break;
case 1: p.setX(1.0/value.toDouble()); break;
case 2: p.setMean(value.toDouble()); break;
case 3: p.setMean(1.0/value.toDouble()); break;
case 4: p.setStddev(value.toDouble()); break;
case 5: p.setWeight(value.toDouble()); break;
default: break;
}
}
| void QGpGuiWave::EllipticityProxy::setYAxisProperties | ( | Axis * | a | ) | [virtual] |
Titles are already set.
Reimplemented from QGpGuiWave::ModalProxy.
References SciFigs::Axis::setAutoTicks(), SciFigs::Axis::setMajorTicks(), SciFigs::Axis::setMinorTicks(), SciFigs::Axis::setRange(), SciFigs::Axis::setScaleType(), and TRACE.
{
TRACE;
a->setScaleType(Scale::Log);
a->setAutoTicks(false);
a->setMajorTicks(10.0);
a->setMinorTicks(2.0);
a->setRange(0.1, 10.0);
}
| virtual QString QGpGuiWave::EllipticityProxy::tag | ( | ) | const [inline, virtual] |
Implements SciFigs::CurveBrowserProxy.
{return "EllipticityProxy";}
| virtual int QGpGuiWave::EllipticityProxy::xAxisColumn | ( | ) | const [inline, virtual] |
Implements SciFigs::CurveBrowserProxy.
{return 0;}
| virtual int QGpGuiWave::EllipticityProxy::xAxisInversedColumn | ( | ) | const [inline, virtual] |
Implements SciFigs::CurveBrowserProxy.
{return 1;}
| virtual int QGpGuiWave::EllipticityProxy::yAxisColumn | ( | ) | const [inline, virtual] |
Implements SciFigs::CurveBrowserProxy.
{return 2;}
| virtual int QGpGuiWave::EllipticityProxy::yAxisInversedColumn | ( | ) | const [inline, virtual] |
Implements SciFigs::CurveBrowserProxy.
{return 3;}