BALL  1.5.0
atomTypes.h
Go to the documentation of this file.
1 // -*- Mode: C++; tab-width: 2; -*-
2 // vi: set ts=2:
3 //
4 
5 #ifndef BALL_MOLMEC_PARAMETER_ATOMTYPES_H
6 #define BALL_MOLMEC_PARAMETER_ATOMTYPES_H
7 
8 #ifndef BALL_FORMAT_PARAMETERSECTION_H
10 #endif
11 
12 #ifndef BALL_KERNEL_ATOM_H
13 # include <BALL/KERNEL/atom.h>
14 #endif
15 
16 #define BALL_ATOM_WILDCARD_NAME "*"
17 #define BALL_ATOM_UNKNOWN_NAME "?"
18 
19 namespace BALL
20 {
21  class ForceFieldParameters;
22 
29  : public ParameterSection
30  {
31  public:
32 
36 
39  AtomTypes() ;
40 
43  AtomTypes(const AtomTypes& atom_types) ;
44 
47  virtual ~AtomTypes() ;
48 
50 
53 
59  virtual bool extractSection(Parameters& parameters,
60  const String& section_name = "AtomTypes") ;
61 
64  Atom::Type getType(const String& name) const ;
65 
68  bool hasType(const String& name) const ;
69 
72  String getTypeName(Atom::Type type) const ;
73 
76  Size getNumberOfTypes() const ;
77 
79 
82 
85  virtual void clear() ;
86 
90  AtomTypes& operator = (const AtomTypes& atom_types) ;
91 
93 
96 
99  bool operator == (const AtomTypes& atom_types) const ;
100 
102 
103  protected:
104 
105  /*_ Contains the numeric types for each atom type string.
106  */
108 
109  /*_ Contains the symbolic names of the atom types.
110  */
111  vector<String> names_;
112  };
113 } // namespace BALL
114 
115 #endif // BALL_MOLMEC_PARAMETER_ATOMTYPES_H
short Type
Definition: atom.h:103
vector< String > names_
Definition: atomTypes.h:111
#define BALL_EXPORT
Definition: COMMON/global.h:50
Definition: constants.h:12
StringHashMap< Atom::Type > type_map_
Definition: atomTypes.h:107
BALL_EXPORT bool operator==(const String &s1, const String &s2)