Commit Graph

196 Commits

Author SHA1 Message Date
Greg Landrum
890886d770 speedup the NumBitsInCommon operation (#1785)
* patch to speedup tanimoto calculation

* make it build on windows

* cleanup a bit

* followup from review
2018-04-02 05:01:07 +02:00
Greg Landrum
108d84ab1e Switch from boost::thread to std::thread (#1745)
* boost::thread mostly gone... still need to get rid of once
everything compiles

* replace boost::call_once

* remove link-time dependency on boost::thread

* first pass at using async

* switch to using async everywhere
2018-02-22 03:43:07 +01:00
Greg Landrum
636a0f6e69 Cleanup a bunch of compiler warnings (#1697)
* remove a bunch of compiler warnings

* remove some more warnings on windows (there are still plenty to go...)
2017-12-22 12:59:52 +01:00
Matt Swain
e57b7a9bc8 Use numpy not numeric for boost 1.65+ - fixes #1581 (#1664)
boost python numeric no longer exists in boost 1.65, so check boost version and conditionally use boost python numpy.
2017-11-20 05:44:19 +01:00
Greg Landrum
67bc7a647c merge on master; modernization needs to be repeated 2017-09-05 17:09:50 +02:00
Greg Landrum
a7065dc36d fixes #1447 (#1529)
* fixes #1447

* python2 compatibility
2017-08-23 17:25:04 -04:00
Greg Landrum
f6ced134f0 a number of other small changes from manually reviewing the PR 2017-04-22 17:24:57 +02:00
Greg Landrum
142a1f4fed an observation from the review 2017-04-22 17:22:13 +02:00
Greg Landrum
915cf08faa run clang-format with c++-11 style over that 2017-04-22 17:19:10 +02:00
Greg Landrum
7c0bb0b743 clang-tidy output 2017-04-22 17:09:24 +02:00
Greg Landrum
270f7b76e5 Partial support for reading CXSMILES (#1237)
* add a SmilesParserParams object to prepare for this

* add a SmilesParserParams object to prepare for this

* add tests for the SmilesParseParmas

* support name parsing, should it be the default?

* rename CXNSmiles to CXSmiles;
add a spirit parser for CXSmiles coordinate that is at least syntax correct

* abandon boost::spirit for now; crude atom token parser

* support params in smiles parser (not tested, may not build)

* can read coords and atom labels along with mol names; crude, but works

* read coordinate bonds

* remove some compiler warnings with VS2015

* remove a bunch of compiler warnings on windows

* remove more warnings on windows

* remove more warnings on windows

* backup commit: first pass at parsing query features

* radical spec parsing

* handle attachment points using atom mapping

* switch to a named property for atom labels

* fix handling of the "A" atom query

* add functions to construct A and Q queries (needs more work)

* fix a problem created while cleaning up warnings earlier

* add some additional convenience functions for making generic atoms.
Still need M and to recognize these while writing CXSMILES

* add M queries; update some tests

* fix a linux compile problem

* get the cxsmiles stuff working in python; basic testing

* support "M" in CXSMILES
2017-01-31 13:50:36 -05:00
Greg Landrum
81ee476fd7 Fixes #1118 (#1119) 2016-10-24 11:15:25 -04:00
Greg Landrum
7fa3cae4cd clear up a bunch of windows warnings (#1086) 2016-10-04 06:46:07 -04:00
gedeck
e9af48ffd7 Issue1071/yapf (#1078)
* Issue #1071: add yapf configuration file

* yapf formatting of Code directory

* yapf formatting of Contrib directory

* yapf formatting of Data directory

* yapf formatting of Docs directory

* yapf formatting of External directory

* yapf formatting of Projects directory

* yapf formatting of Regress directory

* yapf formatting of Scripts directory

* yapf formatting of Web directory

* yapf formatting of rdkit directory
2016-09-23 04:58:46 +02:00
Greg Landrum
2907166444 Add a MultiFPBReader class (#909)
* first pass at a MultiFPBReader in c++
includes initial tests

* first pass at multi-threading; untested

* add multi-threaded test

* multi-threaded tversky

* add multi-threaded contains searches

* allow FPBReader::init() to be called multiple times

* add a cleanup() method to clear out whatever memory we are using

* allow the init() call to be pushed to search-time;
this allows calls to the contained init() methods to be run in separate threads

* make ownership of FPBReader pointers optional
add addReader() method

* Add MultiFPBReader python wrapper

* support multi-threaded initOnSearch

* add a couple of more tests
2016-05-29 09:38:14 -04:00
Greg Landrum
c0f9be86c8 Get things building with gcc4.4 on centos6
* Fixes exposing shared_ptr<const T> to python

* remove some of the pragmas for pre 4.5 versions of gcc

* get things working with centos6 and gcc4.4
2016-04-17 11:48:35 -04:00
Greg Landrum
2d78b7f710 FPB Reader documentation update 2016-04-12 06:21:18 +02:00
Greg Landrum
249146afaa Dev/containing nbrs in python
* expose GetContainingNeighbors() to python

* add another contains test from python
2016-04-11 13:09:18 -04:00
Paolo Tosco
f18b12b2dc Merge remote-tracking branch 'upstream/master' into origmaster
Conflicts:
	Code/GraphMol/MolDraw2D/Wrap/CMakeLists.txt
2016-03-24 10:05:36 +00:00
Greg Landrum
b9ba12f8f9 Remove extra calls to python::register_exception_translator 2016-03-01 06:36:54 +01:00
Paolo Tosco
ae55c83fc2 - fixed a typo in Code/DataStructs/BitOps.cpp which caused the build
to fail on Windows 64-bit
2016-02-22 22:08:16 +00:00
Paolo Tosco
c27a2a317b - as the __popcnt64 builtin is not present on 32-bit Windows, the build
failed; this commit fixes the problem using the __popcnt builtin on
  32-bit Windows
2016-02-21 21:31:41 +00:00
Greg Landrum
f6db4aaab8 switch to using builtin_popcountll 2016-01-22 16:07:28 -05:00
Greg Landrum
9e9eaa729c make it possible to turn off the use of popcnt 2016-01-22 03:49:04 -05:00
Greg Landrum
2179db09e0 switch dice and tversky to popcntl too 2016-01-19 05:05:27 -05:00
Greg Landrum
2c4964eed3 switch to popcntl 2016-01-19 01:54:21 -05:00
Greg Landrum
55c96db67e first pass at block reads 2016-01-19 01:24:32 -05:00
Greg Landrum
6e6c200bd3 add Tversky code to the python wrapper 2016-01-18 10:57:48 +01:00
Greg Landrum
6581b4db7f docs 2016-01-18 10:57:20 +01:00
Greg Landrum
37234afa62 passes tests 2016-01-18 10:42:04 +01:00
Greg Landrum
c0a820fb87 tversky basics work; still need better testing at the FPB level 2016-01-18 10:15:05 +01:00
Greg Landrum
38ece3aa62 backup, does not work 2016-01-18 04:23:07 +01:00
Greg Landrum
f08ceff556 report unrecognized chunks 2016-01-12 12:12:50 +01:00
Greg Landrum
de1192efe4 switch to a shared_array 2016-01-12 12:12:50 +01:00
Greg Landrum
d56a9d38b5 get this building on windows 2016-01-12 12:12:46 +01:00
Greg Landrum
6b06bccf3f clean up the uses of casts in the new code 2016-01-12 12:09:56 +01:00
Greg Landrum
90f142cf11 a bit more documentaiton 2016-01-12 12:09:56 +01:00
Greg Landrum
3130578930 additional tests 2016-01-12 12:09:56 +01:00
Greg Landrum
9e7b6a7409 add lazy id reading on the other paths (also not checked) 2016-01-12 12:09:56 +01:00
Greg Landrum
606ae353ca stop reading in all Ids when in lazy mode 2016-01-12 12:09:56 +01:00
Greg Landrum
700c59ff37 Add doxygen docs
Add ExplicitBitVect versions of a few of the methods
Update a couple of copyrights
2016-01-12 12:09:56 +01:00
Greg Landrum
4ae3318e45 speed up UpdateBitVectFromFPSText 2016-01-12 12:09:55 +01:00
Greg Landrum
438c1b217b add fingerprint contains searches (to support SSS screening) 2016-01-12 12:09:55 +01:00
Greg Landrum
7c0d4bdd89 add bitmap version of AllProbeBitsMatch() 2016-01-12 12:09:55 +01:00
Greg Landrum
8aae258e3c move responsibility for memory management out of extractBytes 2016-01-12 12:09:55 +01:00
Greg Landrum
9d26882286 comments 2016-01-12 12:09:55 +01:00
Greg Landrum
88826aea7b add (and test) functions for converting byte arrays to bitsets and back 2016-01-12 12:09:55 +01:00
Greg Landrum
16dc0cdc27 fix a typo when builtin_popcount is not being used 2016-01-12 12:09:55 +01:00
Greg Landrum
a6f2aba9b5 remove some printing 2016-01-12 12:09:55 +01:00
Greg Landrum
5af208a1e4 add a lazy mode that does not need to read in the whole database 2016-01-12 12:09:54 +01:00