RDKit
Open-source cheminformatics and machine learning.
MolStandardize/Tautomer.h
Go to the documentation of this file.
1
//
2
// Copyright (C) 2018 Susan H. Leung
3
//
4
// @@ All Rights Reserved @@
5
// This file is part of the RDKit.
6
// The contents are covered by the terms of the BSD license
7
// which is included in the file license.txt, found at the root
8
// of the RDKit source tree.
9
//
10
#include <
RDGeneral/export.h
>
11
#ifndef __RD_TAUTOMER_H__
12
#define __RD_TAUTOMER_H__
13
14
#include <string>
15
#include <
Catalogs/Catalog.h
>
16
#include <
GraphMol/MolStandardize/TautomerCatalog/TautomerCatalogEntry.h
>
17
#include <
GraphMol/MolStandardize/TautomerCatalog/TautomerCatalogParams.h
>
18
19
namespace
RDKit
{
20
class
ROMol;
21
class
RWMol;
22
23
namespace
MolStandardize {
24
25
typedef
RDCatalog::HierarchCatalog
<TautomerCatalogEntry, TautomerCatalogParams,
26
int
>
27
TautomerCatalog
;
28
29
class
RDKIT_MOLSTANDARDIZE_EXPORT
TautomerCanonicalizer
{
30
public
:
31
// TautomerCanonicalizer(unsigned int max_tautomers)
32
// : MAX_TAUTOMERS(max_tautomers) {};
33
// TautomerCanonicalizer(const TautomerCanonicalizer &other) {
34
// MAX_TAUTOMERS = other.MAX_TAUTOMERS;
35
// };
36
// ~TautomerCanonicalizer() {};
37
38
ROMol
*canonicalize(
const
ROMol
&mol,
TautomerCatalog
*tautcat);
39
40
// private:
41
// unsigned int MAX_TAUTOMERS;
42
};
// TautomerCanonicalizer class
43
44
class
RDKIT_MOLSTANDARDIZE_EXPORT
TautomerEnumerator
{
45
public
:
46
std::vector<ROMOL_SPTR> enumerate(
const
ROMol
&mol,
TautomerCatalog
*tautcat);
47
48
// struct Tautomer {
49
// std::string Smiles;
50
// boost::shared_ptr<ROMol> Mol;
51
// Tautomer(std::string smiles, boost::shared_ptr<ROMol>
52
// mol) : Smiles(smiles), Mol(mol) {}
53
//
54
// // sorting products alphabetically by SMILES
55
// bool operator < (const Tautomer &tautomer) const {
56
// return (Smiles < tautomer.Smiles);
57
// }
58
//
59
// };
60
61
// TautomerEnumerator(unsigned int max_tautomers)
62
// : MAX_TAUTOMERS(max_tautomers) {};
63
// TautomerEnumerator(const TautomerEnumerator &other) {
64
// MAX_TAUTOMERS = other.MAX_TAUTOMERS;
65
// };
66
// ~TautomerEnumerator() {};
67
// private:
68
// unsigned int MAX_TAUTOMERS;
69
};
// TautomerEnumerator class
70
71
std::vector<std::pair<unsigned int, unsigned int>>
pairwise
(
72
const
std::vector<int> vect);
73
}
// namespace MolStandardize
74
}
// namespace RDKit
75
76
#endif
TautomerCatalogEntry.h
RDKit::MolStandardize::TautomerCanonicalizer
Definition:
MolStandardize/Tautomer.h:29
RDCatalog::HierarchCatalog
A Catalog with a hierarchical structure.
Definition:
Catalog.h:135
Catalog.h
TautomerCatalogParams.h
RDKit::ROMol
Definition:
ROMol.h:171
RDKit::MolStandardize::TautomerCatalog
RDCatalog::HierarchCatalog< TautomerCatalogEntry, TautomerCatalogParams, int > TautomerCatalog
Definition:
MolStandardize/Tautomer.h:27
RDKit::MolStandardize::pairwise
std::vector< std::pair< unsigned int, unsigned int > > pairwise(const std::vector< int > vect)
RDKit
Std stuff.
Definition:
Atom.h:30
RDKIT_MOLSTANDARDIZE_EXPORT
#define RDKIT_MOLSTANDARDIZE_EXPORT
Definition:
export.h:437
RDKit::MolStandardize::TautomerEnumerator
Definition:
MolStandardize/Tautomer.h:44
export.h
GraphMol
MolStandardize
Tautomer.h
Generated on Fri Jun 12 2020 19:04:45 for RDKit by
1.8.17