diff --git a/modules/mol/alg/pymod/wrap_mol_alg.cc b/modules/mol/alg/pymod/wrap_mol_alg.cc index c7c3e1c3b3b62e46de87b21ff5a118da5808cbcb..2989eb5da746c61f06f2c072f60b84c13ba98b12 100644 --- a/modules/mol/alg/pymod/wrap_mol_alg.cc +++ b/modules/mol/alg/pymod/wrap_mol_alg.cc @@ -36,7 +36,8 @@ void export_entity_to_density(); namespace { -Real (*ldt_a)(const mol::EntityView&, const mol::alg::GlobalDistanceList& glob_dist_list, Real, const String&)=&mol::alg::LocalDistTest; +Real (*ldt_a)(const mol::EntityView&, const mol::alg::GlobalDistanceList& , Real, const String&)=&mol::alg::LocalDistTest; +Real (*ldt_c)(const mol::EntityView&, const mol::EntityView& , Real, Real, const String&)=&mol::alg::LocalDistTest; Real (*ldt_b)(const seq::AlignmentHandle&,Real, Real, int, int)=&mol::alg::LocalDistTest; mol::EntityView (*fc_a)(const mol::EntityView&, const mol::alg::ClashingDistances&,bool)=&mol::alg::FilterClashes; mol::EntityView (*fc_b)(const mol::EntityHandle&, const mol::alg::ClashingDistances&, bool)=&mol::alg::FilterClashes; @@ -83,6 +84,7 @@ BOOST_PYTHON_MODULE(_ost_mol_alg) #endif def("LocalDistTest", ldt_a, (arg("local_ldt_property_string")="")); + def("LocalDistTest", ldt_c, (arg("local_ldt_property_string")="")); def("LocalDistTest", ldt_b, (arg("ref_index")=0, arg("mdl_index")=1)); def("FilterClashes", fc_a, (arg("ent"), arg("clashing_distances"), arg("always_remove_bb")=false)); def("FilterClashes", fc_b, (arg("ent"), arg("clashing_distances"), arg("always_remove_bb")=false)); diff --git a/modules/mol/alg/src/local_dist_test.cc b/modules/mol/alg/src/local_dist_test.cc index 430dd31bebb4e5c5bea26461df9b253e8bc0d608..4c4bd2e25a790bcfd642909af3c457649153fead 100644 --- a/modules/mol/alg/src/local_dist_test.cc +++ b/modules/mol/alg/src/local_dist_test.cc @@ -425,6 +425,14 @@ Real LocalDistTest(const EntityView& mdl, const GlobalDistanceList& glob_dist_li return total_ov.first/(total_ov.second ? total_ov.second : 1); } +Real LocalDistTest(const EntityView& mdl, const EntityView& target, Real cutoff, Real max_dist, const String& local_ldt_property_string) +{ + GlobalDistanceList glob_dist_list = CreateDistanceList(target,max_dist); + return LocalDistTest(mdl, glob_dist_list, cutoff, local_ldt_property_string); +} + + + Real LocalDistTest(const ost::seq::AlignmentHandle& aln, Real cutoff, Real max_dist, int ref_index, int mdl_index) { diff --git a/modules/mol/alg/src/local_dist_test.hh b/modules/mol/alg/src/local_dist_test.hh index 74e0f4f29ca00b54340a683a036904d3eb66e596..9c174f9698bb37ccd7e23f16febf77e1928624c4 100644 --- a/modules/mol/alg/src/local_dist_test.hh +++ b/modules/mol/alg/src/local_dist_test.hh @@ -77,6 +77,12 @@ Real DLLEXPORT_OST_MOL_ALG LocalDistTest(const EntityView& mdl, Real cutoff, const String& local_ldt_property_string=""); +Real DLLEXPORT_OST_MOL_ALG LocalDistTest(const EntityView& mdl, + const EntityView& target, + Real cutoff, + Real max_dist, + const String& local_ldt_property_string=""); + Real DLLEXPORT_OST_MOL_ALG LocalDistTest(const ost::seq::AlignmentHandle& aln, Real cutoff, Real max_dist, int ref_index=0, int mdl_index=1);