OECreateSubSearchDatabaseOptions

Attention

PRELIMINARY-IMAGE This is a preliminary API until 2020.Oct and may be improved based on user feedback. It is currently available in C++ and Python.

class OECreateSubSearchDatabaseOptions

This class represents the OECreateSubSearchDatabaseOptions class that encapsulates properties that determine how a substructure search database is generated when calling the OECreateSubSearchDatabaseFile function.

The OECreateSubSearchDatabaseOptions class stores the following properties:

Property Default Get method Set method Corresponding namespace / class / type
screen type   GetScreenType Constructor OESubSearchScreenTypeBase class
database sorting true GetSortByBitCounts SetSortByBitCounts boolean
handling molecule titles false GetKeepTitle SetKeepTitle boolean
number of processors 0 (0 means OEGetNumProcessors) GetNumProcessors SetNumProcessors unsigned integer

Constructors

OECreateSubSearchDatabaseOptions(const OESubSearchScreenTypeBase *)

Constructs an OESubSearchScreenTypeBase object with the given screen type.

GetKeepTitle

bool GetKeepTitle() const

Returns whether the molecule titles are kept in the output substructure search database. The default is false.

GetNumProcessors

unsigned GetNumProcessors() const

Returned the number of processors used during the database generation.

GetScreenType

const OESubSearchScreenTypeBase *GetScreenType() const

Returns the type of the screen that will be generated for each molecule in substructure search database.

See also

GetSortByBitCounts

bool GetSortByBitCounts() const

Returns whether to sort the molecules based on their screen bit counts. The default is true.

SetKeepTitle

void SetKeepTitle(const bool keep)

Sets whether to keep molecule titles taken from the input file as unique identifiers. If false, a 16 character long UUID will be assigned for each molecule as a new title.

Hint

If the original molecule titles are kept, these titles should be unique. OECreateSubSearchDatabaseFile will not check or throw any warnings for non-unique title when generating the substructure database files.

By keeping the titles when the database is generated, an external id (such as corporate or vendor id) can be associate with each molecule in the substructure search database. When searching the database, the titles of the matched molecules can be retrieved by the OESubSearchDatabase.GetMatchTitles method.

SetNumProcessors

void SetNumProcessors(const unsigned)

Sets the number of threads that are used to generate the substructure search database when calling the OECreateSubSearchDatabaseFile function. When set to 0, the number of processors used will be the number returned by the OEGetNumProcessors function.

SetSortByBitCounts

void SetSortByBitCounts(const bool sort)

Sets whether to sort the molecules based on their screen bit counts.

Hint

The OESubSearchDatabase works with both sorted and unsorted input database files. While sorting the database at generation can take slightly more time, this pays off at search time. Based on the query molecule, significant portion of the screen matches can be skipped without losing any matches when using a sorted input database.