Public Slots | Public Member Functions | Protected Member Functions | Protected Attributes
ToolHRFK Class Reference

#include <ToolHRFK.h>

Inheritance diagram for ToolHRFK:
ToolFK ToolArrayBase GeopsyGui::ToolBase

List of all members.

Public Slots

virtual void start ()
virtual void test ()

Public Member Functions

 ToolHRFK (QWidget *parent)

Protected Member Functions

virtual AbstractParametersparameters (AbstractParameters *param=0) const
virtual void setDefaultGridStep (double kmin)
virtual void setParameters (const AbstractParameters *param)
virtual const char * toolName ()

Protected Attributes

DoubleSpinBoxdampingFactorEdit
QCheckBox * doDampingFactor

Constructor & Destructor Documentation

ToolHRFK::ToolHRFK ( QWidget *  parent)

References ToolFK::_d, dampingFactorEdit, doDampingFactor, ToolFK::parametersChanged(), GeopsyGui::ToolBase::setWindowTitle(), QGpCoreTools::tr(), and TRACE.

                                   :
    ToolFK(parent)
{
  TRACE;
  setWindowIcon(QIcon( ":/images/hrfk-22x22.png" ));
  setObjectName("ToolHRFK");
  setWindowTitle( "High resolution FK toolbox" );

  QGroupBox * hrParamGroup=new QGroupBox(_d->processingTab);
  hrParamGroup->setObjectName(QString::fromUtf8("hrParamGroup"));
  hrParamGroup->setTitle(tr("High resolution matrix"));
  QHBoxLayout * hboxLayout=new QHBoxLayout(hrParamGroup);
  hboxLayout->setObjectName(QString::fromUtf8("hboxLayout1"));
  doDampingFactor=new QCheckBox(hrParamGroup);
  doDampingFactor->setObjectName(QString::fromUtf8("doDampingFactor"));
  doDampingFactor->setText(tr("Damping factor"));
  connect(doDampingFactor, SIGNAL(toggled(bool)), this, SLOT(on_doDampingFactor_toggled()));

  hboxLayout->addWidget(doDampingFactor);

  dampingFactorEdit=new DoubleSpinBox(hrParamGroup);
  dampingFactorEdit->setObjectName(QString::fromUtf8("dampingFactorEdit"));
  dampingFactorEdit->setEnabled(false);
  dampingFactorEdit->setDecimals(4);
  dampingFactorEdit->setMaximum(1);
  dampingFactorEdit->setSingleStep(0.0005);
  dampingFactorEdit->setValue(0.001);

  hboxLayout->addWidget(dampingFactorEdit);

  static_cast<QBoxLayout *>(_d->processingTab->layout())->insertWidget(2, hrParamGroup);

  connect(dampingFactorEdit, SIGNAL(valueChanged( const QString& )), this, SLOT(parametersChanged()) );
  connect(doDampingFactor, SIGNAL(toggled(bool)), this, SLOT(parametersChanged()) );
}

Member Function Documentation

AbstractParameters * ToolHRFK::parameters ( AbstractParameters param = 0) const [protected, virtual]

Reimplemented from ToolFK.

References dampingFactorEdit, doDampingFactor, TRACE, and QGpGuiTools::DoubleSpinBox::value().

Referenced by start().

{
  TRACE;
  if(!param) {
    param=new HRFKParameters;
  }
  param=ToolFK::parameters(param);
  if(param) {
    if(doDampingFactor->isChecked()) {
      static_cast<HRFKParameters *>(param)->setDamping(dampingFactorEdit->value());
    } else {
      static_cast<HRFKParameters *>(param)->setDamping(0.0);
    }
  }
  return param;
}
void ToolHRFK::setDefaultGridStep ( double  kmin) [protected, virtual]

Reimplemented from ToolFK.

References TRACE.

{
  TRACE;
  kmin*=0.2; // FK is already dividing by 4, we add a factor 5
  ToolFK::setDefaultGridStep(kmin);
}
void ToolHRFK::setParameters ( const AbstractParameters param) [protected, virtual]

Reimplemented from ToolFK.

References ToolFK::_d, dampingFactorEdit, doDampingFactor, ToolFKd::setParameters(), and TRACE.

{
  TRACE;
  _d->setParameters(*static_cast<const FKParameters *>(param));
  if(static_cast<const HRFKParameters *>(param)->damping()>0.0) {
    doDampingFactor->setChecked(true);
    dampingFactorEdit->setValue(static_cast<const HRFKParameters *>(param)->damping());
  } else {
    doDampingFactor->setChecked(false);
  }
}
void ToolHRFK::start ( ) [virtual, slot]

Reimplemented from ToolFK.

References ToolArrayBase::_array, ToolFK::_d, ToolFK::_exportAllFKGrids, ToolArrayBase::_log, ToolFK::finish(), ToolFKd::outputFile(), parameters(), ToolArrayBase::resetLogs(), FKLoop::setArray(), ArrayCore::FKParameters::setExportAllFKGrids(), FKLoop::setLog(), ArrayCore::ArrayParameters::setOutputFile(), HRFKLoop::setParameters(), ToolFK::startLoop(), GeopsyGui::ToolBase::subPoolLocked(), and TRACE.

{
  TRACE;
  if(subPoolLocked()) return;
  resetLogs();
  // Get parameters from dialog box
  HRFKParameters * param=static_cast<HRFKParameters *>(parameters());
  if(!param) return;
  param->setOutputFile(_d->outputFile());
  param->setExportAllFKGrids(_exportAllFKGrids);
  // Prepare the common parameters
  HRFKLoop * loop=new HRFKLoop;
  loop->setArray(&_array);
  loop->setLog(&_log);
  if( !loop->setParameters(param) ) {
    delete loop;
    return;
  }
  connect(loop, SIGNAL(finished()), this, SLOT(finish()));
  startLoop(loop, param);
}
void ToolHRFK::test ( ) [virtual, slot]
const char * ToolHRFK::toolName ( ) [protected, virtual]

Reimplemented from ToolFK.

{
  return "High resolution FK Array analysis";
}

Member Data Documentation

Referenced by parameters(), setParameters(), and ToolHRFK().

QCheckBox* ToolHRFK::doDampingFactor [protected]

Referenced by parameters(), setParameters(), and ToolHRFK().


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines