RDKit: Mancude.h Source File

| RDKit Open-source cheminformatics and machine learning.

Loading...
Searching...
No Matches
Mancude.h
Go to the documentation of this file.
1//
2//
3// Copyright (C) 2020 Schrödinger, LLC
4//
5// @@ All Rights Reserved @@
6// This file is part of the RDKit.
7// The contents are covered by the terms of the BSD license
8// which is included in the file license.txt, found at the root
9// of the RDKit source tree.
10//
11
12///
13/// Utilities to handle atomic numbers in Mancude (maximum number
14/// of noncumulative double bonds) rings
15///
16/// This guarantees that aromatic rings containing heteroatoms
17/// are always resolved in the same way
18///
19
20#pragma once
21
22#include <vector>
23
24#include <RDGeneral/BoostStartInclude.h>
25#include <boost/rational.hpp>
26#include <RDGeneral/BoostEndInclude.h>
27
28namespace RDKit {
29
30namespace CIPLabeler {
31
32class CIPMol;
33
34 enum class Type {
35 Cv4D3, // =C(X)-
36 Nv3D2, // =N-
37 Nv4D3Plus, // =[N+]<
38 Nv2D2Minus, // -[N-]-
39 Cv3D3Minus, // -[C(X)-]-
40 Ov3D2Plus, // -[O+]=
41 Other
42};
43
44/**
45 * Calculate fractional atomic numbers for all atoms in the mol.
46 * Using fractional atomic numbers makes sure that atoms in rings
47 * that have resonant structures are always considered with the same
48 * priority.
49 *
50 */
51std::vector<boost::rational<int>> calcFracAtomNums(const CIPMol &mol);
52
53} // namespace CIPLabeler
54} // namespace RDKit
BoostEndInclude.h
BoostStartInclude.h
RDKit::CIPLabeler::CIPMol
Definition CIPMol.h:66
RDKit::CIPLabeler
Definition CIPLabeler.h:27
RDKit::CIPLabeler::Type
Type
Definition Mancude.h:34
RDKit::CIPLabeler::Type::Other
@ Other
Definition Mancude.h:41
RDKit::CIPLabeler::Type::Cv3D3Minus
@ Cv3D3Minus
Definition Mancude.h:39
RDKit::CIPLabeler::Type::Nv2D2Minus
@ Nv2D2Minus
Definition Mancude.h:38
RDKit::CIPLabeler::Type::Ov3D2Plus
@ Ov3D2Plus
Definition Mancude.h:40
RDKit::CIPLabeler::Type::Nv3D2
@ Nv3D2
Definition Mancude.h:36
RDKit::CIPLabeler::Type::Nv4D3Plus
@ Nv4D3Plus
Definition Mancude.h:37
RDKit::CIPLabeler::Type::Cv4D3
@ Cv4D3
Definition Mancude.h:35
RDKit::CIPLabeler::calcFracAtomNums
std::vector< boost::rational< int > > calcFracAtomNums(const CIPMol &mol)
RDKit
Std stuff.
Definition Abbreviations.h:19