BALL
1.5.0
include
BALL
MOLMEC
COMMON
forceFieldComponent.h
Go to the documentation of this file.
1
// -*- Mode: C++; tab-width: 2; -*-
2
// vi: set ts=2:
3
//
4
// $Id: forceFieldComponent.h,v 1.20.18.1 2007/03/25 21:23:49 oliver Exp $
5
//
6
7
// Molecular Mechanics: general force field component class
8
9
#ifndef BALL_MOLMEC_FORCEFIELDCOMPONENT_H
10
#define BALL_MOLMEC_FORCEFIELDCOMPONENT_H
11
12
#ifndef BALL_COMMON_H
13
# include <
BALL/common.h
>
14
#endif
15
16
#ifndef BALL_DATATYPE_STRING_H
17
# include <
BALL/DATATYPE/string.h
>
18
#endif
19
20
#ifndef BALL_KERNEL_ATOM_H
21
# include <
BALL/KERNEL/atom.h
>
22
#endif
23
24
#include <
BALL/SCORING/COMMON/scoringComponent.h
>
25
26
namespace
BALL
27
{
28
class
ForceField;
29
34
class
BALL_EXPORT
ForceFieldComponent
:
public
ScoringComponent
35
{
36
37
friend
class
ForceField
;
38
39
public
:
40
44
45
public
:
46
47
BALL_CREATE
(
ForceFieldComponent
)
48
49
51
ForceFieldComponent
();
52
55
ForceFieldComponent
(
ForceField
& force_field);
56
61
ForceFieldComponent
(const
ForceFieldComponent
& force_field_component);
62
65
virtual ~
ForceFieldComponent
();
66
68
72
75
virtual
bool
setup();
76
78
81
85
ForceField
* getForceField() const;
86
89
void
setForceField(
ForceField
& force_field);
90
93
void
setName(const
String
& name);
94
97
String
getName
() const;
98
100
bool
isEnabled()
const
{
return
enabled_;}
101
103
void
setEnabled
(
bool
state) { enabled_ = state;}
104
106
109
112
virtual
double
getEnergy
()
const
;
113
120
virtual
double
updateEnergy
();
121
128
virtual
void
updateForces
();
129
138
virtual
void
update
();
139
141
double
updateScore
();
142
143
protected
:
144
146
/*_ @name Protected Attributes
147
*/
148
//_@{
149
150
/*_ The force field this component is registered in
151
*/
152
ForceField
*
force_field_
;
153
154
/*_ The energy of the component
155
*/
156
double
energy_
;
157
158
private
:
159
160
//_@}
161
/*_ @name Private Attributes
162
*/
163
//_@{
164
165
/*_ The force field component name
166
*/
167
String
name_;
168
169
bool
enabled_;
170
171
//_@}
172
173
};
174
}
// namespace BALL
175
176
#endif // BALL_MOLMEC_FORCEFIELDCOMPONENT_H
BALL::ForceFieldComponent::energy_
double energy_
Definition:
forceFieldComponent.h:156
BALL_EXPORT
#define BALL_EXPORT
Definition:
COMMON/global.h:50
BALL::ForceFieldComponent::getEnergy
virtual double getEnergy() const
BALL::ForceFieldComponent::updateScore
double updateScore()
BALL::String
Definition:
string.h:57
BALL::ForceFieldComponent::update
virtual void update()
BALL
Definition:
constants.h:13
scoringComponent.h
BALL::ForceFieldComponent::force_field_
ForceField * force_field_
Definition:
forceFieldComponent.h:152
BALL::ScoringComponent
Definition:
scoringComponent.h:21
atom.h
BALL::ForceFieldComponent::updateForces
virtual void updateForces()
string.h
BALL::ForceFieldComponent
Definition:
forceFieldComponent.h:35
common.h
BALL::ForceFieldComponent::setEnabled
void setEnabled(bool state)
Definition:
forceFieldComponent.h:103
BALL_CREATE
#define BALL_CREATE(name)
Definition:
create.h:62
BALL::ForceField
Definition:
forceField.h:86
BALL::ForceFieldComponent::updateEnergy
virtual double updateEnergy()
BALL::RTTI::getName
const char * getName()
Definition:
rtti.h:97
Generated by
1.8.20