#pragma once #include "rust/cxx.h" #include #include namespace RDKit { using SubstructMatchItem = std::pair; using MatchVectType = MatchVectType; std::unique_ptr> substruct_match(const std::shared_ptr &mol, const std::shared_ptr &other_mol, const std::shared_ptr ¶ms); std::shared_ptr new_substruct_match_parameters(); bool get_use_chirality(const std::shared_ptr ¶ms); bool get_use_enhanced_stereo(const std::shared_ptr ¶ms); bool get_aromatic_matches_conjugated(const std::shared_ptr ¶ms); bool get_use_query_query_matches(const std::shared_ptr ¶ms); bool get_use_generic_matchers(const std::shared_ptr ¶ms); bool get_recursion_possible(const std::shared_ptr ¶ms); bool get_uniquify(const std::shared_ptr ¶ms); void set_use_chirality(std::shared_ptr ¶ms, bool what); void set_use_enhanced_stereo(std::shared_ptr ¶ms, bool what); void set_aromatic_matches_conjugated(std::shared_ptr ¶ms, bool what); void set_use_query_query_matches(std::shared_ptr ¶ms, bool what); void set_use_generic_matchers(std::shared_ptr ¶ms, bool what); void set_recursion_possible(std::shared_ptr ¶ms, bool what); void set_uniquify(std::shared_ptr ¶ms, bool what); std::unique_ptr> substruct_matchvect_type_to_vec_substruct_match_item(const MatchVectType &match_vect); int substruct_match_item_query_atom_idx(const SubstructMatchItem &item); int substruct_match_item_mol_atom_idx(const SubstructMatchItem &item); } // namespace RDKit