Chemical Data Processing Library C++ API - Version 1.4.0
MMFF94InteractionData.hpp
Go to the documentation of this file.
1 /*
2  * MMFF94InteractionData.hpp
3  *
4  * This file is part of the Chemical Data Processing Toolkit
5  *
6  * Copyright (C) 2003 Thomas Seidel <thomas.seidel@univie.ac.at>
7  *
8  * This library is free software; you can redistribute it and/or
9  * modify it under the terms of the GNU Lesser General Public
10  * License as published by the Free Software Foundation; either
11  * version 2 of the License, or (at your option) any later version.
12  *
13  * This library is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16  * Lesser General Public License for more details.
17  *
18  * You should have received a copy of the GNU Lesser General Public License
19  * along with this library; see the file COPYING. If not, write to
20  * the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
21  * Boston, MA 02111-1307, USA.
22  */
23 
29 #ifndef CDPL_FORCEFIELD_MMFF94INTERACTIONDATA_HPP
30 #define CDPL_FORCEFIELD_MMFF94INTERACTIONDATA_HPP
31 
32 #include <memory>
33 
42 
43 
44 namespace CDPL
45 {
46 
47  namespace ForceField
48  {
49 
62  {
63 
64  public:
68  typedef std::shared_ptr<MMFF94InteractionData> SharedPointer;
69 
75 
81 
87 
93 
99 
105 
111 
117 
123 
129 
135 
141 
147 
153 
157  void clear();
158 
163  void swap(MMFF94InteractionData& ia_data);
164 
165  private:
166  MMFF94BondStretchingInteractionList bondStretchingData;
167  MMFF94AngleBendingInteractionList angleBendingData;
168  MMFF94StretchBendInteractionList stretchBendData;
170  MMFF94TorsionInteractionList torsionData;
171  MMFF94ElectrostaticInteractionList electrostaticData;
172  MMFF94VanDerWaalsInteractionList vanDerWaalsData;
173  };
174  } // namespace ForceField
175 } // namespace CDPL
176 
177 #endif // CDPL_FORCEFIELD_MMFF94INTERACTIONDATA_HPP
Definition of the preprocessor macro CDPL_FORCEFIELD_API.
#define CDPL_FORCEFIELD_API
Tells the compiler/linker which classes, functions and variables are part of the library API.
Declaration of type CDPL::ForceField::MMFF94AngleBendingInteractionList.
Declaration of type CDPL::ForceField::MMFF94BondStretchingInteractionList.
Declaration of type CDPL::ForceField::MMFF94ElectrostaticInteractionList.
Declaration of type CDPL::ForceField::MMFF94OutOfPlaneBendingInteractionList.
Declaration of type CDPL::ForceField::MMFF94StretchBendInteractionList.
Declaration of type CDPL::ForceField::MMFF94TorsionInteractionList.
Declaration of type CDPL::ForceField::MMFF94VanDerWaalsInteractionList.
Container holding the full set of MMFF94 interaction parameter records for a molecular graph.
Definition: MMFF94InteractionData.hpp:62
MMFF94OutOfPlaneBendingInteractionList & getOutOfPlaneBendingInteractions()
Returns the list of MMFF94 out-of-plane bending interactions.
void swap(MMFF94InteractionData &ia_data)
Swaps the contents (all interaction lists) of this instance with ia_data.
const MMFF94BondStretchingInteractionList & getBondStretchingInteractions() const
Returns the list of MMFF94 bond-stretching interactions.
MMFF94VanDerWaalsInteractionList & getVanDerWaalsInteractions()
Returns the list of MMFF94 Van der Waals interactions.
MMFF94StretchBendInteractionList & getStretchBendInteractions()
Returns the list of MMFF94 stretch-bend interactions.
void clear()
Removes all stored interactions from every interaction list.
MMFF94AngleBendingInteractionList & getAngleBendingInteractions()
Returns the list of MMFF94 angle-bending interactions.
MMFF94ElectrostaticInteractionList & getElectrostaticInteractions()
Returns the list of MMFF94 electrostatic interactions.
const MMFF94ElectrostaticInteractionList & getElectrostaticInteractions() const
Returns the list of MMFF94 electrostatic interactions.
std::shared_ptr< MMFF94InteractionData > SharedPointer
A reference-counted smart pointer [SHPTR] for dynamically allocated MMFF94InteractionData instances.
Definition: MMFF94InteractionData.hpp:68
const MMFF94VanDerWaalsInteractionList & getVanDerWaalsInteractions() const
Returns the list of MMFF94 Van der Waals interactions.
MMFF94TorsionInteractionList & getTorsionInteractions()
Returns the list of MMFF94 torsion interactions.
const MMFF94AngleBendingInteractionList & getAngleBendingInteractions() const
Returns the list of MMFF94 angle-bending interactions.
const MMFF94TorsionInteractionList & getTorsionInteractions() const
Returns the list of MMFF94 torsion interactions.
MMFF94BondStretchingInteractionList & getBondStretchingInteractions()
Returns the list of MMFF94 bond-stretching interactions.
const MMFF94StretchBendInteractionList & getStretchBendInteractions() const
Returns the list of MMFF94 stretch-bend interactions.
const MMFF94OutOfPlaneBendingInteractionList & getOutOfPlaneBendingInteractions() const
Returns the list of MMFF94 out-of-plane bending interactions.
The namespace of the Chemical Data Processing Library.