* Adds a df_forceStop to stop readers and writers, clears out queues on destructor
* Propery implement close function, requires protected closeStreams
* changes from greg's version
* close() needs to be called in the derived destructors
* Close the writers before the reader to avoid deadlock
* Don't process trailing new lines
* Don't accept pushes if the queue is done
* Add mutex protecting d_threadCounter, remove unneeded forceStop checks
* Update Code/GraphMol/FileParsers/MultithreadedMolSupplier.cpp
Co-authored-by: Greg Landrum <greg.landrum@gmail.com>
* Add comment for the d_threadCounterMutex unlock
---------
Co-authored-by: = <=>
Co-authored-by: Greg Landrum <greg.landrum@gmail.com>
* fixed issue #2965
* added test case for issue #2965
* fixed formatting and added comment.
* update
* General Reader files
* removed dependency on boost filesystems
* removed class
* clang-format
* added-comments
* further-cleanup
* added clang-formatting
* braces-for-if-else
* changed error messages, added option for windows file path
* fixed getFileName function
* cleanup
* option for filename without path
* further-cleanup
* added tests for determineFileFormat
* cleanup, const arguments for validate function
* init
* cleanup
* cleanup
* clang-format does not work for CMake
* added RDK_TEST_MULTITHREADED option
* add-flag
* cleanup
* Delete ConcurrentQueue.h
This PR deals with the Generalized File Reader.
* Delete testConcurrentQueue.cpp
This PR deals with the Generalized File Reader.
* no change
* concurrent queue
* print values
* Single Producer Multiple Consumer works
* cleanup
* Producer Consumer Example
* update queue methods and tests
* cleanup
* test
* fixed tests
* cleanup, updated tests
* Delete ProducerConsumer.h
* Delete testProducerConsumer.cpp
* cleanup
* futher cleanup
* changes based on feedback
* make queue non copyable
* psuedocode
* possible implementation
* untested implementation
* change class to typename
* basic-setup
* need to fix segfault
* need to fix blocking
* need to fix blocking
* need to fix blocking
* fix indentation
* one possibility
* without lambda function
* possible fix with some test cases
* performance tests
* added support for record id and item text
* cleanup
* cleanup
* fixed memory leak and added methods with tests for getting last id and item text
* cleanup
* added more test cases with different smi files
* cleanup
* SD mol supplier
* modified the parsing for SDMolSupplier
* cleanup
* cleanup
* new file for testing
* added support for reading molecule properties with tests
* thread-safe logging and exception handling
* cleanup
* without thread safe logging
* cleanup
* cleanup, modified MultithreadedSmilesMolSupplier
* cleanup, made reader and writer functions private
* move O2.sdf
* basic python wrapper with tests
* cleanup, added new methods for python wrappers
* made changes suggested by Andrew
* file and compression formats are case-insensitive
* cannot open files with gzstream
* cleanup
* possible fix for opening compressed streams (SMILES)
* removed seekg() and tellg() methods from multithreadeded suppliers
* cleanup
* test cases for python wrappers
* some wrapper cleanup
* cleanup, removed unused functions
* update the MT tests so that they actually do some work
also includes some cleanup here
* cleanup
* remove iterator_next header include
* added support for multithreaded readers
* use getNumThreadsToUse for multithreaded suppliers
* fixed documentation for multithreaded python wrappers
* commented performance test
* first draft of final evaluation report
* removed inline variables
* first draft getting started in python
* fixed typos in getting started in python
* fixed typos
* fix documentation tests
* fixed documentation tests
* added links to important files and PR
* added perfomance results
* first version of wrappers with compressed streams
* getting rid of streambuf stream method
* modified General File Reader
* make this work when building in non-threads mode
* rename a test
* rename a function in the python API
* rearrange the python test a bit
* disable the stream-based constructors in Python
* mark the multithreaded classes as experimental
Co-authored-by: greg landrum <greg.landrum@gmail.com>