Avogadro::QtGui::GaussianSetConcurrent#

class GaussianSetConcurrent : public QObject#

The GaussianSetConcurrent class uses GaussianSetTools to calculate values of electronic structure properties from quantum output read in.

Author

Marcus D. Hanwell

Public Functions

explicit GaussianSetConcurrent(QObject *p = nullptr)#
~GaussianSetConcurrent() override#
void setMolecule(Core::Molecule *mol)#
bool calculateMolecularOrbital(Core::Cube *cube, unsigned int state, bool beta = false)#
bool calculateElectronDensity(Core::Cube *cube)#
bool calculateSpinDensity(Core::Cube *cube)#
inline QFutureWatcher<void> &watcher()#

Signals

void finished()#

Emitted when the calculation is complete.

Public Static Functions

static void cancelAllCalculations()#

Cancel every running calculation and wait for the worker threads to stop.

A running calculation reads the molecule’s basis set and writes into the cube it was handed, so anything about to delete either has to stop the work first. The calculation may belong to a different part of the application than the code doing the deleting, which is why this reaches every instance rather than just one.