Avogadro  1.1.0
/home/kitware/dashboards/avogadro/libavogadro/src/readfilethread_p.h
00001 /**********************************************************************
00002   Copyright (C) 2009-2010 Marcus D. Hanwell, Tim Vandermeersch
00003 
00004   This file is part of the Avogadro molecular editor project.
00005   For more information, see <http://avogadro.openmolecules.net/>
00006 
00007   Avogadro is free software; you can redistribute it and/or modify
00008   it under the terms of the GNU General Public License as published by
00009   the Free Software Foundation; either version 2 of the License, or
00010   (at your option) any later version.
00011 
00012   Avogadro is distributed in the hope that it will be useful,
00013   but WITHOUT ANY WARRANTY; without even the implied warranty of
00014   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015   GNU General Public License for more details.
00016 
00017   You should have received a copy of the GNU General Public License
00018   along with this program; if not, write to the Free Software
00019   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
00020   02110-1301, USA.
00021  **********************************************************************/
00022 
00023 #ifndef READFILETHREAD_P_H
00024 #define READFILETHREAD_P_H
00025 
00026 #include <QtCore/QThread>
00027 
00028 namespace OpenBabel {
00029 class OBMol;
00030 }
00031 
00032 namespace Avogadro
00033 {
00034 
00035 class MoleculeFile;
00036 
00037 class ReadFileThread : public QThread
00038 {
00039   Q_OBJECT
00040 
00041 public:
00042   ReadFileThread(MoleculeFile *moleculeFile);
00043 
00044   void addConformer(const OpenBabel::OBMol &conformer);
00045 
00046   void detectConformers(unsigned int c, const OpenBabel::OBMol &first,
00047                         const OpenBabel::OBMol &current);
00048 
00049   void run();
00050 
00051   MoleculeFile *m_moleculeFile;
00052 };
00053 
00054 } // End of namespace
00055 
00056 #endif // READFILETHREAD_P_H