ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE-2.0/src/openbabel/tinkerformat.cpp
(Generate patch)

Comparing trunk/OOPSE-2.0/src/openbabel/tinkerformat.cpp (file contents):
Revision 2444 by tim, Wed Nov 16 19:42:11 2005 UTC vs.
Revision 2445 by tim, Wed Nov 16 21:22:51 2005 UTC

# Line 13 | Line 13 | GNU General Public License for more details.
13   GNU General Public License for more details.
14   ***********************************************************************/
15  
16 < #include "mol.hpp"
17 < #include "obconversion.hpp"
16 > #include "tinkerformat.hpp"
17  
18   using namespace std;
19   namespace OpenBabel
20   {
21  
23 class TinkerFormat : public OBFormat
24 {
25 public:
26    //Register this format type ID
27    TinkerFormat()
28    {
29        OBConversion::RegisterFormat("txyz",this);
30    }
31
32    virtual const char* Description() //required
33    {
34        return
35            "Tinker MM2 format\n \
36            No comments yet\n";
37    };
38
39  virtual const char* SpecificationURL()
40  {return "http://dasher.wustl.edu/tinker/";}; //optional
41
42    //Flags() can return be any the following combined by | or be omitted if none apply
43    // NOTREADABLE  READONEONLY  NOTWRITABLE  WRITEONEONLY
44    virtual unsigned int Flags()
45    {
46        return NOTREADABLE | WRITEONEONLY;
47    };
48
49    //*** This section identical for most OBMol conversions ***
50    ////////////////////////////////////////////////////
51    /// The "API" interface functions
52    virtual bool WriteMolecule(OBBase* pOb, OBConversion* pConv);
53
54    ////////////////////////////////////////////////////
55    /// The "Convert" interface functions
56    virtual bool WriteChemObject(OBConversion* pConv)
57    {
58        //Retrieve the target OBMol
59        OBBase* pOb = pConv->GetChemObject();
60        OBMol* pmol = dynamic_cast<OBMol*> (pOb);
61        bool ret=false;
62        if(pmol)
63            ret=WriteMolecule(pmol,pConv);
64
65        std::string auditMsg = "OpenBabel::Write molecule ";
66        std::string description(Description());
67        auditMsg += description.substr( 0, description.find('\n') );
68        obErrorLog.ThrowError(__FUNCTION__,
69                              auditMsg,
70                              obAuditMsg);
71
72        delete pOb;
73        return ret;
74    };
75 };
76 //***
77
78 //Make an instance of the format class
79 TinkerFormat theTinkerFormat;
80
81 /////////////////////////////////////////////////////////////////
82
22   bool TinkerFormat::WriteMolecule(OBBase* pOb, OBConversion* pConv)
23   {
24      OBMol* pmol = dynamic_cast<OBMol*>(pOb);

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines