22 #if defined BALL_HAS_OPENBABEL || defined BALL_HAS_OPENEYE
24 #ifdef BALL_HAS_OPENEYE
25 #include <oechem/graphmol.h>
81 void getDatasetSummary(vector<String>& dataset_names, vector<Size>& no_isomers, vector<Size>& no_conformations);
83 void searchMoleculesByUCK(
String uck, list<LongSize>& conformation_IDs);
87 vector<Molecule*> fetchMoleculeById(vector<LongSize>& conformation_ids);
93 return storeMolecule(mol,0);
96 void deleteIsomer(
LongSize isomer_id);
98 void deleteConformation(
LongSize conformation_id);
102 vector<Result*> fetchResults(list<String>& conformation_hashs,
String target_name=
"");
105 void searchMoleculesByLogP(
const double& min_logP,
const double& max_logP, list<LongSize>& conformation_IDs,
const list<LongSize>* conformation_IDs_to_check,
bool input_isomer_IDs=0,
bool output_isomer_IDs=0);
108 void searchMoleculesByMW(
const double& min_MW,
const double& max_MW, list<LongSize>& conformation_IDs,
const list<LongSize>* conformation_IDs_to_check,
bool input_isomer_IDs,
bool output_isomer_IDs);
111 void fetchDatasetConformationIDs(
String& target_name, list<LongSize>& conformation_IDs,
const list<LongSize>* conformation_IDs_to_check=0,
bool input_isomer_IDs=0,
bool output_isomer_IDs=0);
114 void searchSimilarMoleculesByFingerprint(list<vector<bool> >& query_fingerprints,
const float& minimal_similarity,
const float& maximal_similarity, list<LongSize>& conformation_IDs,
const list<LongSize>* conformation_IDs_to_check=0,
bool input_isomer_IDs=0,
bool output_isomer_IDs=0);
116 #if defined BALL_HAS_OPENBABEL || defined BALL_HAS_OPENEYE
118 void searchMoleculesBySmarts(
const list<String>& smarts, list<LongSize>& conformation_IDs,
const list<LongSize>* conformation_IDs_to_check=0,
const list<Size>* no_of_matches=0,
bool intersection=1,
bool input_isomer_IDs=0,
bool output_isomer_IDs=0);
124 void fetchVendorInformation(
Molecule* mol, list<VendorInfo>& vendor_info);
131 void disableFunctionalGroupCounting();
133 void setVendorPropertyNames(
String vendor_name,
String vendors_compound_id_tag,
bool fetch_vendorname_from_prop,
String vendor_version,
String url);
139 static const Size VERSION;
140 QSqlDatabase database_;
146 bool fg_counting_disabled_;
148 bool save_vendor_information_;
149 bool fetch_vendorname_from_prop_;
150 String property_vendorname_;
152 String vendorversion_;
154 String property_vendorID_;
158 void searchMoleculesByIsomerColumn_(
const String prop_name,
const double& min_value,
const double& max_value, list<LongSize>& conformation_IDs,
const list<LongSize>* conformation_IDs_to_check,
bool input_isomer_IDs,
bool output_isomer_IDs);
161 void buildProperties(Molecule* mol,
LongSize ID, list<String>& property_columns);
163 MolecularSimilarity* molecular_similarity_;
165 #if defined BALL_HAS_OPENBABEL || defined BALL_HAS_OPENEYE
169 void bitvectorToBytearray_(
const vector<bool>& bitvector, QByteArray& bytearray);
171 void bytearrayToBitvector_(
const QByteArray& bytearray, vector<bool>& bitvector);
178 static void buildTopology(Molecule& mol, QByteArray &data);
184 static void getTopology(Molecule& mol, QDataStream &ds);
190 static void buildCoordinates(Molecule& mol, QByteArray &data);
196 static void getCoordinates(Molecule& mol, QDataStream &ds);
202 static void buildCharges(Molecule& mol, QByteArray &data);
208 static void getCharges(Molecule& mol, QDataStream &ds);
String vendors_compound_ID
BALL_ULONG64_TYPE LongSize
String database_compound_ID
LongSize storeMolecule(Molecule *mol)