BALL  1.4.1
HINFile.h
Go to the documentation of this file.
00001 // -*- Mode: C++; tab-width: 2; -*-
00002 // vi: set ts=2:
00003 //
00004 
00005 #ifndef BALL_FORMAT_HINFILE_H
00006 #define BALL_FORMAT_HINFILE_H
00007 
00008 #ifndef BALL_FORMAT_GENERICMOLFILE_H
00009 # include <BALL/FORMAT/genericMolFile.h>
00010 #endif
00011 
00012 #ifndef BALL_MATHS_SIMPLEBOX3_H
00013 # include <BALL/MATHS/simpleBox3.h>
00014 #endif
00015 
00016 namespace BALL 
00017 {
00029   class BALL_EXPORT HINFile
00030     : public GenericMolFile
00031   {
00032     public:
00033 
00037     
00040     HINFile();
00041 
00045     HINFile(const String& filename, File::OpenMode open_mode = std::ios::in);
00046 
00049     virtual ~HINFile();
00050 
00052 
00055     
00059     const HINFile& operator = (const HINFile& rhs);
00060 
00062 
00065     
00070     virtual bool write(const Molecule& molecule);
00071 
00076     virtual bool write(const System& system);
00077     
00081     virtual Molecule* read();
00082 
00085     virtual bool read(System& system);
00086 
00088 
00091         
00094     bool hasPeriodicBoundary() const;
00095 
00100     SimpleBox3 getPeriodicBoundary() const;
00101 
00108     float getTemperature() const;
00109 
00111 
00112     protected:
00113     
00114     SimpleBox3    box_;
00115     
00117     virtual void initRead_();
00118 
00119     float   temperature_;
00120   
00121     void writeAtom_(const Atom& atom, Size number, Size atom_offset);
00122   };
00123 } // namespace BALL
00124 
00125 #endif // BALL_FORMAT_HINFILE_H
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines