BALL  1.4.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
HINFile.h
Go to the documentation of this file.
1 // -*- Mode: C++; tab-width: 2; -*-
2 // vi: set ts=2:
3 //
4 
5 #ifndef BALL_FORMAT_HINFILE_H
6 #define BALL_FORMAT_HINFILE_H
7 
8 #ifndef BALL_FORMAT_GENERICMOLFILE_H
10 #endif
11 
12 #ifndef BALL_MATHS_SIMPLEBOX3_H
13 # include <BALL/MATHS/simpleBox3.h>
14 #endif
15 
16 namespace BALL
17 {
30  : public GenericMolFile
31  {
32  public:
33 
37 
40  HINFile();
41 
45  HINFile(const String& filename, File::OpenMode open_mode = std::ios::in);
46 
49  virtual ~HINFile();
50 
52 
55 
59  const HINFile& operator = (const HINFile& rhs);
60 
62 
65 
70  virtual bool write(const Molecule& molecule);
71 
76  virtual bool write(const System& system);
77 
81  virtual Molecule* read();
82 
85  virtual bool read(System& system);
86 
88 
91 
94  bool hasPeriodicBoundary() const;
95 
100  SimpleBox3 getPeriodicBoundary() const;
101 
108  float getTemperature() const;
109 
111 
112  protected:
113 
115 
117  virtual void initRead_();
118 
120 
121  void writeAtom_(const Atom& atom, Size number, Size atom_offset);
122  };
123 } // namespace BALL
124 
125 #endif // BALL_FORMAT_HINFILE_H