34 |
|
#define USETHEFORCE_DUFF_HPP |
35 |
|
|
36 |
|
#include "UseTheForce/ForceField.hpp" |
37 |
+ |
#include "io/SectionParserManager.hpp" |
38 |
+ |
#include "UseTheForce/ForceFieldFactory.hpp" |
39 |
|
namespace oopse { |
40 |
|
|
41 |
|
/** |
42 |
|
* @class DUFF DUFF.hpp "UseTheForce/DUFF.hpp" |
43 |
< |
* |
43 |
> |
* @brief Dipole United Atom Force Field Parser |
44 |
|
*/ |
45 |
|
class DUFF : public ForceField { |
46 |
|
public: |
47 |
< |
virtual void parse(const std::string& filename = "DUFF.frc"); |
47 |
> |
DUFF(); |
48 |
> |
virtual void parse(const std::string& filename); |
49 |
|
|
50 |
|
private: |
51 |
< |
|
51 |
> |
SectionParserManager spMan_; |
52 |
> |
/* |
53 |
|
enum ParseState { |
54 |
|
AtomTypeSection, |
55 |
|
DirectionalAtomTypeSection, |
61 |
|
|
62 |
|
ParseState getSection(const std::string& section); |
63 |
|
|
64 |
< |
void parseAtomType(const std::string& line, int lineNo); |
64 |
> |
void parseAtomType(const std::string& line, int lineNo, int& ident); |
65 |
|
void parseBondType(const std::string& line, int lineNo); |
66 |
|
void parseBendType(const std::string& line, int lineNo); |
67 |
|
void parseTorsionType(const std::string& line, int lineNo); |
68 |
< |
|
68 |
> |
*/ |
69 |
|
}; |
70 |
|
|
67 |
– |
//declare the funtion to create DUFF |
68 |
– |
ForceField* createDUFF(); |
69 |
– |
|
71 |
|
} //end namespace oopse |
72 |
|
#endif //USETHEFORCE_DUFF_HPP |
73 |
|
|