RDKit
Open-source cheminformatics and machine learning.
Loading...
Searching...
No Matches
Descriptor.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
#pragma once
12
13
#include <cstdint>
14
#include <string>
15
#include <stdexcept>
16
17
namespace
RDKit
{
18
namespace
CIPLabeler
{
19
20
/**
21
* Defines a descriptor which can be assigned to an atom to indicate the type of
22
* chirality (if there is any). Each descriptor defines its general @{link
23
* Type} which can be useful when comparing centres of different geometry.
24
*
25
*/
26
enum class
Descriptor
: uint8_t {
27
NONE
,
// Unspecified
28
UNKNOWN
,
29
ns
,
// Other
30
/**
31
* Tetrahedral
32
*/
33
R
,
34
S
,
35
r
,
36
s
,
37
/**
38
* Cis/Trans
39
*/
40
seqTrans
,
41
seqCis
,
42
E
,
43
Z
,
44
/* Axial */
45
M
,
46
P
,
47
m
,
48
p
,
49
50
SP_4
,
51
TBPY_5
,
52
OC_6
53
};
54
55
static
std::string
to_string
(
const
Descriptor
&desc) {
56
switch
(desc) {
57
case
Descriptor::NONE
:
58
return
"NONE"
;
59
case
Descriptor::UNKNOWN
:
60
return
"UNKNOWN"
;
61
case
Descriptor::ns
:
62
return
"ns"
;
63
case
Descriptor::R
:
64
return
"R"
;
65
case
Descriptor::S
:
66
return
"S"
;
67
case
Descriptor::r
:
68
return
"r"
;
69
case
Descriptor::s
:
70
return
"s"
;
71
case
Descriptor::seqTrans
:
72
return
"e"
;
73
case
Descriptor::seqCis
:
74
return
"z"
;
75
case
Descriptor::E
:
76
return
"E"
;
77
case
Descriptor::Z
:
78
return
"Z"
;
79
case
Descriptor::M
:
80
return
"M"
;
81
case
Descriptor::P
:
82
return
"P"
;
83
case
Descriptor::m
:
84
return
"m"
;
85
case
Descriptor::p
:
86
return
"p"
;
87
case
Descriptor::SP_4
:
88
return
"SP_4"
;
89
case
Descriptor::TBPY_5
:
90
return
"TBPY_5"
;
91
case
Descriptor::OC_6
:
92
return
"OC_6"
;
93
}
94
throw
std::runtime_error(
"Unknown descriptor"
);
95
}
96
97
}
// namespace CIPLabeler
98
}
// namespace RDKit
RDKit::CIPLabeler
Definition
CIPLabeler.h:27
RDKit::CIPLabeler::to_string
static std::string to_string(const Descriptor &desc)
Definition
Descriptor.h:55
RDKit::CIPLabeler::Descriptor
Descriptor
Definition
Descriptor.h:26
RDKit::CIPLabeler::Descriptor::s
@ s
Definition
Descriptor.h:36
RDKit::CIPLabeler::Descriptor::Z
@ Z
Definition
Descriptor.h:43
RDKit::CIPLabeler::Descriptor::OC_6
@ OC_6
Definition
Descriptor.h:52
RDKit::CIPLabeler::Descriptor::E
@ E
Definition
Descriptor.h:42
RDKit::CIPLabeler::Descriptor::P
@ P
Definition
Descriptor.h:46
RDKit::CIPLabeler::Descriptor::r
@ r
Definition
Descriptor.h:35
RDKit::CIPLabeler::Descriptor::S
@ S
Definition
Descriptor.h:34
RDKit::CIPLabeler::Descriptor::M
@ M
Definition
Descriptor.h:45
RDKit::CIPLabeler::Descriptor::UNKNOWN
@ UNKNOWN
Definition
Descriptor.h:28
RDKit::CIPLabeler::Descriptor::seqTrans
@ seqTrans
Definition
Descriptor.h:40
RDKit::CIPLabeler::Descriptor::m
@ m
Definition
Descriptor.h:47
RDKit::CIPLabeler::Descriptor::SP_4
@ SP_4
Definition
Descriptor.h:50
RDKit::CIPLabeler::Descriptor::p
@ p
Definition
Descriptor.h:48
RDKit::CIPLabeler::Descriptor::TBPY_5
@ TBPY_5
Definition
Descriptor.h:51
RDKit::CIPLabeler::Descriptor::NONE
@ NONE
Definition
Descriptor.h:27
RDKit::CIPLabeler::Descriptor::R
@ R
Definition
Descriptor.h:33
RDKit::CIPLabeler::Descriptor::seqCis
@ seqCis
Definition
Descriptor.h:41
RDKit::CIPLabeler::Descriptor::ns
@ ns
Definition
Descriptor.h:29
RDKit
Std stuff.
Definition
Abbreviations.h:19
GraphMol
CIPLabeler
Descriptor.h
Generated on
for RDKit by
1.15.0