29 #include <utility/vector1_bool.hh>
30 #include <basic/Tracer.hh>
31 #include <utility/string_util.hh>
32 #include <utility/excn/Exceptions.hh>
39 static basic::Tracer
TR(
"protocols.toolbox.TaskOperations.RestrictToNeighborhoodOperation" );
43 namespace task_operations {
49 :
parent(), calculator_name_(calculator)
59 :
parent(), calculator_name_(
"")
65 :
parent(), calculator_name_(
"")
89 if (
this == &rhs)
return *
this;
98 std::set< core::Size >
const & central_residues,
103 using namespace core::pose::metrics;
104 if( CalculatorFactory::Instance().check_calculator_exists(
calculator_name_ ) ){
105 Warning() <<
"In RestrictToNeighborhoodOperation, calculator " <<
calculator_name_
106 <<
" already exists, this is hopefully correct for your purposes" << std::endl;
109 CalculatorFactory::Instance().register_calculator(
calculator_name_,
new NeighborhoodByDistanceCalculator( central_residues, dist_cutoff ) );
117 using namespace core::pose::metrics;
118 if( CalculatorFactory::Instance().check_calculator_exists(
calculator_name_ ) ){
119 Warning() <<
"In RestrictToNeighborhoodOperation, calculator " <<
calculator_name_
120 <<
" already exists, this is hopefully correct for your purposes" << std::endl;
123 CalculatorFactory::Instance().register_calculator(
calculator_name_,
new NeighborhoodByDistanceCalculator( central_residues ) );
131 for(SizeSet::const_iterator it(central_residues.begin()),
end(central_residues.end()) ; it !=
end; ++it){
155 using namespace core::pose::metrics;
156 if( !CalculatorFactory::Instance().check_calculator_exists(
calculator_name_ ) ){
157 throw utility::excn::EXCN_Msg_Exception(
"In RestrictToNeighborhoodOperation get_calculator, calculator " +
calculator_name_ +
" does not exist");
163 assert( dynamic_cast< NeighborhoodByDistanceCalculator const * > (CalculatorFactory::Instance().retrieve_calculator(
calculator_name_).
get()));
166 static_cast< NeighborhoodByDistanceCalculator const * >
167 (CalculatorFactory::Instance().retrieve_calculator(
calculator_name_).
get()));
182 SizeSet const & central_residues,