#include <SubPoolWindow.h>
Public Slots | |
void | addFile (QString fileName) |
void | addSignal (int id) |
void | addSignal (SubPoolWindow *viewer, int index) |
void | addSignals (const SubSignalPool &sel) |
virtual void | refreshSignal (Signal *sig) |
virtual void | subPoolUpdate ()=0 |
Signals | |
void | aboutToClose () |
void | signalTypeChanged (DoubleSignal::SignalType) |
Public Member Functions | |
virtual void | fastFourierTransform (DoubleSignal::SignalType st)=0 |
bool | isLocked () |
void | lock () |
bool | run (const QString &script) |
void | setSubPool (const SubSignalPool &subPool) |
virtual void | setTool (ToolBase *tw) |
virtual void | setWindowTitle (QString title) |
SignalProcessScript * | signalProcess () |
virtual void | signalsUpdate () |
SubSignalPool & | subPool () |
const SubSignalPool & | subPool () const |
SubPoolWindow (QWidget *parent=0) | |
ToolBase * | tool () |
void | unlock () |
virtual | ~SubPoolWindow () |
Protected Member Functions | |
virtual void | closeEvent (QCloseEvent *e) |
GeopsyGui::SubPoolWindow::SubPoolWindow | ( | QWidget * | parent = 0 | ) |
GeopsyGui::SubPoolWindow::~SubPoolWindow | ( | ) | [virtual] |
void GeopsyGui::SubPoolWindow::aboutToClose | ( | ) | [signal] |
Referenced by closeEvent().
void GeopsyGui::SubPoolWindow::addFile | ( | QString | fileName | ) | [slot] |
References GeopsyCore::SubSignalPool::addFile(), addSignals(), GeopsyCore::GeopsyCoreEngine::currentDB(), GeopsyCore::SignalDB::filePool(), GeopsyCore::SignalFilePool::find(), GeopsyCore::geopsyCore, and TRACE.
{ TRACE; SignalFile * f=geopsyCore->currentDB()->filePool().find(fileName); if(f) { SubSignalPool sp; sp.addFile(f); addSignals(sp); } }
void GeopsyGui::SubPoolWindow::addSignal | ( | int | id | ) | [slot] |
References GeopsyCore::SubSignalPool::addSignal(), addSignals(), and TRACE.
{ TRACE; SubSignalPool sp; sp.addSignal(id); addSignals(sp); }
void GeopsyGui::SubPoolWindow::addSignal | ( | SubPoolWindow * | viewer, |
int | index | ||
) | [slot] |
References GeopsyCore::SubSignalPool::addSignal(), addSignals(), GeopsyCore::SubSignalPool::at(), GeopsyCore::SubSignalPool::count(), subPool(), and TRACE.
{ TRACE; if( ! viewer) return; const SubSignalPool& sp=viewer->subPool(); if(index >= sp.count()) return; SubSignalPool sel; sel.addSignal(sp.at(index) ); addSignals(sp); }
void GeopsyGui::SubPoolWindow::addSignals | ( | const SubSignalPool & | sel | ) | [slot] |
References GeopsyCore::SubSignalPool::addSubPool(), GeopsyCore::SubSignalPool::isEmpty(), MSG_ID, subPoolUpdate(), QGpCoreTools::tr(), and TRACE.
Referenced by addFile(), addSignal(), ChronogramWindow::ChronogramWindow(), GraphicWindow::GraphicWindow(), MapWindow::MapWindow(), and TableWindow::TableWindow().
{ TRACE; if(_tool) { Message::warning(MSG_ID,tr("Adding signals"), tr("The added signals will not be processed as the others. " "To process all of them create a new window and start your " "interpretation tool."), Message::ok()); } if(_subPool.isEmpty()) _subPool=sel; else _subPool.addSubPool(sel); subPoolUpdate(); }
void GeopsyGui::SubPoolWindow::closeEvent | ( | QCloseEvent * | e | ) | [protected, virtual] |
Reimplemented in MagnifierSignal.
References aboutToClose(), GeopsyGui::ToolBase::closeChildren(), geopsyGui, isLocked(), and TRACE.
{ TRACE; if(isLocked()) { e->ignore(); return; } if(_tool) { _tool->closeChildren(); geopsyGui->removeWindow(_tool); delete _tool; _tool=0; } emit aboutToClose(); geopsyGui->removeWindow(this); e->accept(); }
virtual void GeopsyGui::SubPoolWindow::fastFourierTransform | ( | DoubleSignal::SignalType | st | ) | [pure virtual] |
Implemented in GraphicWindow, TableWindow, MapWindow, and ChronogramWindow.
Referenced by GeopsyMainWindow::fftAmpl(), GeopsyMainWindow::fftPhase(), and GeopsyMainWindow::fftTime().
bool GeopsyGui::SubPoolWindow::isLocked | ( | ) |
Returns true if locked (prevent parent widget to be closed)
References TRACE.
Referenced by closeEvent(), and GeopsyGui::ToolBase::subPoolLocked().
{ TRACE; return _locked; }
void GeopsyGui::SubPoolWindow::lock | ( | ) |
Prevent subpool parent widget to be closed
References TRACE.
Referenced by GeopsyGui::ToolBase::lockSubPool().
{ TRACE; _locked=true; }
void GeopsyGui::SubPoolWindow::refreshSignal | ( | Signal * | sig | ) | [virtual, slot] |
Call this slot to refresh one signal. If sig does not exist in this subPool, this is function does nothing, else signalsUpdate() is called.
Reimplemented in TableWindow, and ChronogramWindow.
References GeopsyCore::SubSignalPool::indexOf(), GeopsyGui::ToolBase::refreshSignal(), signalsUpdate(), and TRACE.
Referenced by Engine::signalDataChanged().
{ TRACE; int row=_subPool.indexOf(sig); if(row>=0) { signalsUpdate(); if(_tool) _tool->refreshSignal(sig); } }
bool GeopsyGui::SubPoolWindow::run | ( | const QString & | script | ) |
void GeopsyGui::SubPoolWindow::setSubPool | ( | const SubSignalPool & | subPool | ) |
References subPool(), subPoolUpdate(), and TRACE.
Referenced by GeopsyMainWindow::newChronogramWindow(), GeopsyMainWindow::newGraphicWindow(), GeopsyMainWindow::newMapWindow(), and GeopsyMainWindow::newTableWindow().
{ TRACE; _subPool=subPool; subPoolUpdate(); }
virtual void GeopsyGui::SubPoolWindow::setTool | ( | ToolBase * | tw | ) | [inline, virtual] |
{_tool=tw;}
void GeopsyGui::SubPoolWindow::setWindowTitle | ( | QString | title | ) | [virtual] |
Reimplemented in GraphicWindow, TableWindow, MagnifierSignal, MapWindow, and ChronogramWindow.
References geopsyGui, and TRACE.
{ TRACE; if(t.length()>100) { t.truncate(100); t+="..."; } QWidget::setWindowTitle(t); geopsyGui->updateWindowTitle(this); }
Returns signal process object attached to this subpool (create a new one if not yet created).
References GeopsyCore::SignalProcess::setCurrentSubPool().
Referenced by WaveformConsole::agc(), WaveformConsole::convolution(), WaveformConsole::correlations(), WaveformConsole::cut(), WaveformConsole::decimateAmplitude(), WaveformConsole::decimateTime(), WaveformConsole::filter(), WaveformConsole::merge(), WaveformConsole::multiply(), WaveformConsole::normalizedCorrelations(), WaveformConsole::overSample(), WaveformConsole::revert(), WaveformConsole::rotate(), WaveformConsole::setCurrentSubPool(), WaveformConsole::shift(), WaveformConsole::stalta(), WaveformConsole::stddevClip(), WaveformConsole::subtractSignals(), WaveformConsole::subtractValue(), WaveformConsole::taper(), WaveformConsole::waveletTransform(), and WaveformConsole::whiten().
{ if( !_signalProcess) { _signalProcess=new SignalProcessScript(this); _signalProcess->setCurrentSubPool(&_subPool); } return _signalProcess; }
void GeopsyGui::SubPoolWindow::signalsUpdate | ( | ) | [virtual] |
Function to redefine in child class to update view after changes to waveforms. Do not forget to call this function on exit.
The default implementation send signal signalTypeChanged() with argument set to UndefinedSignalType (as if the signals of the SubPool have not the same type).
Reimplemented in GraphicWindow, TableWindow, MapWindow, and ChronogramWindow.
References signalTypeChanged(), and TRACE.
Referenced by refreshSignal().
{ TRACE; DoubleSignal::SignalType st=DoubleSignal::UndefinedSignalType; emit signalTypeChanged(st); }
void GeopsyGui::SubPoolWindow::signalTypeChanged | ( | DoubleSignal::SignalType | ) | [signal] |
Referenced by signalsUpdate().
SubSignalPool& GeopsyGui::SubPoolWindow::subPool | ( | ) | [inline] |
Referenced by GeopsyMainWindow::activeWindowChanged(), addSignal(), WaveformConsole::convolution(), WaveformConsole::correlations(), GeopsyMainWindow::createNewGroup(), WaveformConsole::cut(), GeopsyMainWindow::exportSignal(), TableWindow::exportTable(), ChronogramWindow::fastFourierTransform(), MapWindow::fastFourierTransform(), TableWindow::fastFourierTransform(), GraphicWindow::fastFourierTransform(), MapWindow::getSelection(), ChronogramWindow::getSelection(), TableWindow::getSelection(), GraphicWindow::getSelection(), TableWindow::importTable(), WaveformConsole::normalizedCorrelations(), WaveformConsole::rotate(), GeopsyMainWindow::setHeader(), ChronogramWindow::setLimits(), GraphicWindow::setLimits(), GraphicWindow::setMagnifySignal(), GeopsyMainWindow::setReceivers(), MagnifierSignal::setSignal(), GeopsyMainWindow::setSources(), setSubPool(), GraphicWindow::showMagnify(), ChronogramWindow::signalsUpdate(), MapWindow::signalsUpdate(), GraphicWindow::signalsUpdate(), GeopsyMainWindow::sort(), ChronogramWindow::subPoolUpdate(), MapWindow::subPoolUpdate(), GraphicWindow::subPoolUpdate(), TableWindow::subPoolUpdate(), WaveformConsole::subtractSignals(), TableWindow::TableWindow(), WaveformConsole::taper(), ChronogramWindow::updateLabels(), and GraphicWindow::updateLabels().
{return _subPool;}
const SubSignalPool& GeopsyGui::SubPoolWindow::subPool | ( | ) | const [inline] |
{return _subPool;}
virtual void GeopsyGui::SubPoolWindow::subPoolUpdate | ( | ) | [pure virtual, slot] |
Implemented in GraphicWindow, TableWindow, MapWindow, and ChronogramWindow.
Referenced by addSignals(), WaveformConsole::rotate(), GeopsyMainWindow::setReceivers(), GeopsyMainWindow::setSources(), setSubPool(), and GeopsyMainWindow::sort().
ToolBase* GeopsyGui::SubPoolWindow::tool | ( | ) | [inline] |
Referenced by GeopsyMainWindow::activeWindowChanged(), and WaveformConsole::setCurrentSubPool().
{return _tool;}
void GeopsyGui::SubPoolWindow::unlock | ( | ) |
Allows subpool parent widget to be closed
References TRACE.
Referenced by GeopsyGui::ToolBase::unlockSubPool().
{ TRACE; _locked=false; }