Scine::Swoose  2.1.0
This is the SCINE module Swoose.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Pages
ProtonationHelper.h
Go to the documentation of this file.
1 
8 #ifndef STRUCTUREPREPARATION_PROTONATIONHELPER_H
9 #define STRUCTUREPREPARATION_PROTONATIONHELPER_H
10 
11 #include "../ProteinStructures.h"
12 #include "../StructurePreparationData.h"
13 #include "TitrationData.h"
14 #include <Core/Log.h>
16 #include <list>
17 #include <memory>
18 
19 namespace Scine {
20 namespace Utils {
21 class Atom;
22 class Settings;
23 } // namespace Utils
24 
25 namespace StructurePreparation {
26 struct ProtonationTypes;
27 namespace ProtonationHelper {
28 
32 bool openBabelSuccess(std::istream& in);
36 void removeProtonsFromStructure(Utils::AtomCollection& structure, std::vector<int> superfluousHydrogens);
37 // Evaluates if an atom index is in a vector.
38 bool isAtomOf(const std::list<int>& group, int index);
39 
40 template<std::size_t s>
41 bool isType(const std::array<const char*, s>& group, const std::string& atomType) {
42  return (std::find(group.begin(), group.end(), atomType) != group.end());
43 }
44 
45 } // namespace ProtonationHelper
46 } // namespace StructurePreparation
47 } // namespace Scine
48 
49 #endif // STRUCTUREPREPARATION_PROTONATIONHELPER_H