Brian Kelley
95a92282d1
Dictionary access is saniztized and optimized.
...
o rdkit gains a RDKit::common_properties namespace that contains common string value properties
o Dict.h and below gain getPropIfPresent that attempts to retrieve a property and returns
true/false on success or failure. This is used to optimize access.
o rdkit learns how to pass property keys by reference, not value.
A new namespace has been added to RDKit, common_properties
that contains the std::string values for commonly used
properties. This helps to avoid typos in string values
but also avoids a creation of std::strings from character
values. All accessors (has/get/clear and getPropIfPresent) now pass
the key by reference.
Additionally, getPropIfPresent removes the double lookup
of hasProp/getProp which can be a significant speedup
in the smiles and smarts parsers (10-20%)
2015-01-15 12:23:29 -05:00
Greg Landrum
4b8caf2ceb
Fixes #409
2015-01-10 07:21:55 +01:00
Greg Landrum
c26cbc26cb
switch to using references to smart pointers for the Match functions;
...
really ought to re-examine when/how we are passing smart pointers
around in general, but that is a bigger job.
Ref: http://herbsutter.com/2013/06/05/gotw-91-solution-smart-pointer-parameters/
2014-05-10 06:21:27 +02:00
Greg Landrum
34ab68ca2a
introduce QueryBond::QueryMatch, as with QueryAtoms;
...
all tests passing;
performance tests still needed
2014-05-07 05:29:25 +02:00
Greg Landrum
4a14a52674
Fixes #153
2013-11-15 06:47:18 +01:00
Greg Landrum
126e75a8b3
comment out the new substruct atom-match caching code; it does not seem to actually make things faster
2013-04-27 03:04:12 +00:00
Greg Landrum
d07a674fa4
fix and test GitHub issue 15
2013-03-28 12:51:05 +00:00
Greg Landrum
c00d323eee
set props
2013-03-28 10:30:40 +00:00
Greg Landrum
d79491aaf9
use caching of vertex matches to speed up the VF2 searches
2013-03-28 10:28:13 +00:00
Greg Landrum
24764635d8
initial support for double bond stereochem in substructure searching
2013-03-11 05:36:00 +00:00
Greg Landrum
414b579b1c
first pass at support for supporting atomic stereochemistry in substructure matches
2013-03-10 07:33:00 +00:00
Greg Landrum
14314b01ad
add cmake configure variable to make multi-threaded stuff optional
2012-12-17 04:07:20 +00:00
Greg Landrum
f8c1999207
update build system to work with boost v1.51
2012-10-26 03:48:04 +00:00
Greg Landrum
bcf6310f11
an attempt to make handling of recursive SMARTS threadsafe.
...
This passes the tests here and in knime on linux64. Other OSs still need testing
2012-09-29 09:01:43 +00:00
Greg Landrum
3b3d44db16
remove exe property from source files
2011-01-13 04:22:56 +00:00
Greg Landrum
b993f89afe
remove the bjam-based build system
2010-09-27 03:54:07 +00:00
Greg Landrum
f3fbef45c5
update copyright statements
2010-09-26 17:04:37 +00:00
Greg Landrum
4db8233db6
sync with trunk
2010-09-10 05:12:41 +00:00
Greg Landrum
052ec66542
cleanups:
...
remove x bit from headers and sources;
remove a couple empty files from Code/GraphMol
2010-09-08 04:25:57 +00:00
Greg Landrum
cb6cdb99b3
merge in a set of changes from Riccardo V. to install .h files as well;
...
this needs more testing.
2010-09-04 14:07:22 +00:00
Greg Landrum
0ce95829a5
cleanup deprecated args
2010-08-21 00:16:55 +00:00
Greg Landrum
f42f479d28
enabling infrastructure for making repeated recursive
...
smarts queries run faster (like vector bindings). Though there is an addition to the smarts parser
exposed here, I do not recommend using it in client code.
2010-06-03 10:02:15 +00:00
Greg Landrum
ec2c2042e8
remove the vflib usage code from Substruct area
2010-04-19 07:45:22 +00:00
Greg Landrum
49ef84ed45
a bunch of fixes to SLN handling
2010-04-11 09:06:52 +00:00
Greg Landrum
803b459289
merge in changes from trunk in preparation for moving this stuff onto the trunk
2009-10-25 05:51:56 +00:00
Greg Landrum
44b5041ef2
fix and test sf.net bug 2884178
2009-10-24 06:01:32 +00:00
Greg Landrum
53485592ca
builds on windows with visual studio; need to pass back to linux now
2009-10-01 13:35:48 +00:00
Greg Landrum
76297b0fff
builds and passes tests on linux
2009-09-28 11:02:18 +00:00
Greg Landrum
96adbc11ea
remove the deprecated assign{Atom,Bond}ChiralCodes functions
2009-08-02 15:33:08 +00:00
Greg Landrum
9cabf87374
remove vflib from Jamfiles
...
remove const specifiers from return values in DataStructs
add initial pass at query-query matching for Atoms and Bonds
fix and test for sf.net issu 2738320
add Mol.AddRecursiveQuery() method to Mol
2009-06-29 11:47:38 +00:00
Greg Landrum
b418472bd5
cleanup
2009-04-20 08:14:52 +00:00
Greg Landrum
17fa9210e6
merge revs1065:1087 from vf2 branch into trunk
2009-04-18 18:25:27 +00:00
Greg Landrum
8e731f9e70
move the MolDiscriminators calculations into Subgraphs in order to remove the lapack dependency from the core molecule code;
...
At some point the BalabanJ calculation, still in MolDiscriminators.cpp, should be
moved to MolDescriptors.
2009-04-10 04:09:49 +00:00
Greg Landrum
f3dc387bc4
merge changes from revs991:996 on Ullmann_9Feb2009 branch;
...
get USE_VFLIB fulling working and make it the default
2009-02-28 16:52:06 +00:00
Greg Landrum
e05580e495
This is a sizeable one: change the way BGL is used so that atoms and bonds are stored as bundled properties
...
instead of using the property map interface.
A nice side-effect is that the wart of having to use property maps to loop over bonds or atom neighbors
is now gone.
This potentially breaks lots of client C++ code.
2009-02-11 20:19:25 +00:00
Greg Landrum
4056ad7e6c
use vertex degree to prune matches
2009-02-09 16:49:26 +00:00
Greg Landrum
30fe77b609
initial commit: passes all tests and seems to be faster than the original code
2009-02-09 16:19:31 +00:00
Greg Landrum
8bf7a4c187
now all tests pass here as well
2009-02-03 05:26:10 +00:00
Greg Landrum
2580fbaaa2
this is probably a ways from done, but now at least we can run bjam under mingw without it immediately erroring out
2008-11-15 17:14:13 +00:00
Greg Landrum
21bb475b61
further jamfile mods for macosx
2008-10-19 05:36:09 +00:00
Greg Landrum
89a34d1a39
get this building on Darwin; NOTE: this may not work on win or linux yet
2008-09-03 19:24:35 +00:00
Greg Landrum
e8f3536845
remove a bunch of compiler warnings
2008-05-26 20:05:57 +00:00
Greg Landrum
8424d36830
get things building on windows.
2008-04-08 18:24:56 +00:00
Greg Landrum
d3aea154ef
switch everything over to dynamic linking in order to try and solve
...
the horrible cross-library exception handling mess on linux. This may well break things on windows, which
might want these things static. Regardless, even as it is, this should be considered experimental
2008-04-08 10:24:57 +00:00
Greg Landrum
26a4124ad9
remove files for old build system
2008-02-20 17:06:59 +00:00
Greg Landrum
430a83bd96
merge in the jamfiles from the bjam branch;
...
various and sundry minor code cleanups;
this probably does not yet build on windows... that is next
2007-11-23 15:55:30 +00:00
Greg Landrum
e450f5beeb
doc updates and some minor formatting changes
2007-10-24 16:37:37 +00:00
Greg Landrum
7cfa8cde0b
another substruct caching try
2007-09-23 06:56:13 +00:00
Greg Landrum
47d47a49d3
remove vestiges of old windows build system
2007-07-31 17:09:53 +00:00
Greg Landrum
d5ffea669d
add support for chirality in substructure searches;
...
this only is going to work in cases where CIP codes have been (i.e. can be)
assigned to atoms.
2006-11-03 06:35:14 +00:00