RDKit: nmmolhash.h Source File

| RDKit Open-source cheminformatics and machine learning.

Loading...
Searching...
No Matches
nmmolhash.h
Go to the documentation of this file.
1/*==============================================*/
2/* Copyright (C) 2019 NextMove Software */
3/* All rights reserved. */
4/* */
5/* This file is part of molhash. */
6/* */
7/* The contents are covered by the terms of the */
8/* BSD license, which is included in the file */
9/* license.txt. */
10/*==============================================*/
11
12// This file will disappear in a future release; please don't include it
13// directly. Use MolHash.h instead.
14
15#include <RDGeneral/export.h>
16#ifndef NMS_MOLHASH_H
17#define NMS_MOLHASH_H
18
19#include <string>
20#include <vector>
21
22namespace RDKit {
23class RWMol;
24 namespace MolHash {
25 enum class HashFunction {
26 AnonymousGraph = 1,
27 ElementGraph = 2,
28 CanonicalSmiles = 3,
29 MurckoScaffold = 4,
30 ExtendedMurcko = 5,
31 MolFormula = 6,
32 AtomBondCounts = 7,
33 DegreeVector = 8,
34 Mesomer = 9,
35 HetAtomTautomer = 10,
36 HetAtomProtomer = 11,
37 RedoxPair = 12,
38 Regioisomer = 13,
39 NetCharge = 14,
40 SmallWorldIndexBR = 15,
41 SmallWorldIndexBRL = 16,
42 ArthorSubstructureOrder = 17,
43 HetAtomTautomerv2 =
44 18, //! Note that this is under active development and the results may
45 //! change from one release to the next.
46 HetAtomProtomerv2 =
47 19, //! Note that this is under active development and the results may
48 //! change from one release to the next.
49};
50
51 RDKIT_MOLHASH_EXPORT std::string MolHash(RWMol *mol, HashFunction func,
52 bool useCXSmiles = false,
53 unsigned cxFlagsToSkip = 0);
54
55 enum class StripType {
56 AtomStereo = 1,
57 BondStereo = 2,
58 Isotope = 4,
59 AtomMap = 8,
60 Hydrogen = 16
61};
62
63 RDKIT_MOLHASH_EXPORT void Strip(RWMol *mol, unsigned int striptype);
64 RDKIT_MOLHASH_EXPORT void SplitMolecule(RWMol *mol, std::vector<RWMol *> &molv);
65} // namespace MolHash
66} // namespace RDKit
67#endif // NMS_MOLHASH_H
RDKit::RWMol
RWMol is a molecule class that is intended to be edited.
Definition RWMol.h:32
export.h
RDKIT_MOLHASH_EXPORT
#define RDKIT_MOLHASH_EXPORT
Definition export.h:337
RDKit::MolHash::HashFunction
HashFunction
Definition nmmolhash.h:25
RDKit::MolHash::HashFunction::HetAtomProtomer
@ HetAtomProtomer
Definition nmmolhash.h:36
RDKit::MolHash::HashFunction::DegreeVector
@ DegreeVector
Definition nmmolhash.h:33
RDKit::MolHash::HashFunction::AtomBondCounts
@ AtomBondCounts
Definition nmmolhash.h:32
RDKit::MolHash::HashFunction::HetAtomProtomerv2
@ HetAtomProtomerv2
Definition nmmolhash.h:46
RDKit::MolHash::HashFunction::Mesomer
@ Mesomer
Definition nmmolhash.h:34
RDKit::MolHash::HashFunction::ExtendedMurcko
@ ExtendedMurcko
Definition nmmolhash.h:30
RDKit::MolHash::HashFunction::ArthorSubstructureOrder
@ ArthorSubstructureOrder
Definition nmmolhash.h:42
RDKit::MolHash::HashFunction::HetAtomTautomer
@ HetAtomTautomer
Definition nmmolhash.h:35
RDKit::MolHash::HashFunction::MurckoScaffold
@ MurckoScaffold
Definition nmmolhash.h:29
RDKit::MolHash::HashFunction::MolFormula
@ MolFormula
Definition nmmolhash.h:31
RDKit::MolHash::HashFunction::SmallWorldIndexBRL
@ SmallWorldIndexBRL
Definition nmmolhash.h:41
RDKit::MolHash::HashFunction::NetCharge
@ NetCharge
Definition nmmolhash.h:39
RDKit::MolHash::HashFunction::SmallWorldIndexBR
@ SmallWorldIndexBR
Definition nmmolhash.h:40
RDKit::MolHash::HashFunction::RedoxPair
@ RedoxPair
Definition nmmolhash.h:37
RDKit::MolHash::HashFunction::Regioisomer
@ Regioisomer
Definition nmmolhash.h:38
RDKit::MolHash::HashFunction::ElementGraph
@ ElementGraph
Definition nmmolhash.h:27
RDKit::MolHash::HashFunction::AnonymousGraph
@ AnonymousGraph
Definition nmmolhash.h:26
RDKit::MolHash::HashFunction::CanonicalSmiles
@ CanonicalSmiles
Definition nmmolhash.h:28
RDKit::MolHash::HashFunction::HetAtomTautomerv2
@ HetAtomTautomerv2
Definition nmmolhash.h:43
RDKit::MolHash::MolHash
RDKIT_MOLHASH_EXPORT std::string MolHash(RWMol *mol, HashFunction func, bool useCXSmiles=false, unsigned cxFlagsToSkip=0)
RDKit::MolHash::SplitMolecule
RDKIT_MOLHASH_EXPORT void SplitMolecule(RWMol *mol, std::vector< RWMol * > &molv)
RDKit::MolHash::StripType
StripType
Definition nmmolhash.h:55
RDKit::MolHash::StripType::AtomStereo
@ AtomStereo
Definition nmmolhash.h:56
RDKit::MolHash::StripType::Isotope
@ Isotope
Definition nmmolhash.h:58
RDKit::MolHash::StripType::BondStereo
@ BondStereo
Definition nmmolhash.h:57
RDKit::MolHash::StripType::AtomMap
@ AtomMap
Definition nmmolhash.h:59
RDKit::MolHash::StripType::Hydrogen
@ Hydrogen
Definition nmmolhash.h:60
RDKit::MolHash::Strip
RDKIT_MOLHASH_EXPORT void Strip(RWMol *mol, unsigned int striptype)
RDKit
Std stuff.
Definition Abbreviations.h:19