RDKit
Open-source cheminformatics and machine learning.
Loading...
Searching...
No Matches
MMPA.h
Go to the documentation of this file.
1
//
2
// Copyright (C) 2015 Novartis Institutes for BioMedical Research
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
#pragma once
12
#include <vector>
13
#include <string>
14
#include <stdexcept>
15
#include "../RDKitBase.h"
16
17
namespace
RDKit
{
18
19
namespace
MMPA {
20
21
namespace
detail {
22
RDKIT_MMPA_EXPORT
unsigned
long
long
computeMorganCodeHash
(
const
ROMol
&mol);
23
}
24
25
//! fragments a Molecule for processing with the Matched Molecular Pairs
26
//! MMPA algorithm (Hussain et al)
27
/*!
28
\param mol Molecule to fragment
29
\param result Vector of Core and Sidechain results from the various
30
cuts
31
\param maxCuts Maximum number of times to cut the molecule to generate
32
fragments. A max cut of 3 will fragment with 1,2 and 3
33
cuts.
34
\param maxCutBonds Set the bond limit for determining which molecules
35
to analyze. If a molecule has more than
36
this number of cutabble bonds, ignore.
37
38
\return true if the molecule was fragmented, false otherwise.
39
*/
40
41
RDKIT_MMPA_EXPORT
bool
fragmentMol
(
42
const
ROMol
&mol, std::vector<std::pair<ROMOL_SPTR, ROMOL_SPTR>> &
result
,
43
unsigned
int
maxCuts
= 3,
unsigned
int
maxCutBonds
= 20,
44
const
std::string &
pattern
=
"[#6+0;!$(*=,#[!#6])]!@!=!#[*]"
);
45
46
//! fragments a Molecule for processing with the Matched Molecular Pairs
47
//! MMPA algorithm (Hussain et al)
48
/*!
49
\param mol Molecule to fragment
50
\param result Vector of Core and Sidechain results from the various
51
cuts
52
\param minCuts Minimum number of times to cut the molecule to generate
53
fragments.
54
\param maxCuts Maximum number of times to cut the molecule to generate
55
fragments.
56
\param maxCutBonds Set the bond limit for determining which molecules
57
to analyze. If a molecule has more than
58
this number of cutabble bonds, ignore.
59
60
\return true if the molecule was fragmented, false otherwise.
61
*/
62
RDKIT_MMPA_EXPORT
bool
fragmentMol
(
63
const
ROMol
&mol, std::vector<std::pair<ROMOL_SPTR, ROMOL_SPTR>> &
result
,
64
unsigned
int
minCuts
,
unsigned
int
maxCuts
,
unsigned
int
maxCutBonds
,
65
const
std::string &
pattern
=
"[#6+0;!$(*=,#[!#6])]!@!=!#[*]"
);
66
67
//! fragments a Molecule for processing with the Matched Molecular Pairs
68
//! MMPA algorithm (Hussain et al)
69
/*!
70
\param mol Molecule to fragment
71
\param result Vector of Core and Sidechain results from the various
72
cuts
73
\param bondsToCut Vector of bond indices to use as cut points
74
\param minCuts Minimum number of times to cut the molecule to generate
75
fragments.
76
\param maxCuts Maximum number of times to cut the molecule to generate
77
fragments.
78
\return true if the molecule was fragmented, false otherwise.
79
*/
80
RDKIT_MMPA_EXPORT
bool
fragmentMol
(
81
const
ROMol
&mol, std::vector<std::pair<ROMOL_SPTR, ROMOL_SPTR>> &
result
,
82
const
std::vector<unsigned int> &
bondsToCut
,
unsigned
int
minCuts
= 1,
83
unsigned
int
maxCuts
= 3);
84
85
}
// namespace MMPA
86
}
// namespace RDKit
RDKit::ROMol
Definition
ROMol.h:199
export.h
RDKIT_MMPA_EXPORT
#define RDKIT_MMPA_EXPORT
Definition
export.h:257
RDKit::MMPA::detail::computeMorganCodeHash
RDKIT_MMPA_EXPORT unsigned long long computeMorganCodeHash(const ROMol &mol)
RDKit::MMPA::fragmentMol
RDKIT_MMPA_EXPORT bool fragmentMol(const ROMol &mol, std::vector< std::pair< ROMOL_SPTR, ROMOL_SPTR > > &result, unsigned int maxCuts=3, unsigned int maxCutBonds=20, const std::string &pattern="[#6+0;!$(*=,#[!#6])]!@!=!#[*]")
RDKit
Std stuff.
Definition
Abbreviations.h:19
RDKit::rdvalue_is
bool rdvalue_is(const RDValue_cast_t)
Definition
RDValue-doublemagic.h:372
GraphMol
MMPA
MMPA.h
Generated on Sun Dec 22 2024 04:42:57 for RDKit by
1.9.8