29 #include <utility/tag/Tag.hh>
36 #include <basic/Tracer.hh>
42 #include <utility/vector1.hh>
43 #include <utility/string_util.hh>
45 #include <boost/algorithm/string.hpp>
46 #include <utility/excn/Exceptions.hh>
47 #include <boost/foreach.hpp>
53 namespace simple_moves {
55 static basic::Tracer
TR(
"protocols.simple_moves.ModifyVariantTypeMover" );
60 protocols::moves::
Mover(
"ModifyVariantType"),
63 remove_target_types_()
75 task =
task_factory_->create_task_and_apply_taskoperations( pose );
76 TR.Debug <<
"Initializing from packer task." << std::endl;
80 TR.Debug <<
"No packer task specified, using default task." << std::endl;
85 if( task->pack_residue(resi) )
92 new_rsd_type = rsd_set.get_residue_type_with_variant_removed( *new_rsd_type, remove_type);
97 new_rsd_type = rsd_set.get_residue_type_with_variant_added( *new_rsd_type, add_type);
107 return "ModifyVariantType";
141 if (add_target_types_.size() == 0 && remove_target_types_.size() == 0)
143 TR.Error <<
"Must specify add_type and/or remove_type type in ModifyVariantTypeMover." << std::endl;
144 throw utility::excn::EXCN_RosettaScriptsOption(
"Must specify add_type and/or remove_type type in ModifyVariantTypeMover.");