21 #include <basic/Tracer.hh>
28 #include <utility/vector1.hh>
33 namespace rotamer_set {
35 static basic::Tracer
tt(
"core.pack.rotamer_set.RotamerSubset",basic::t_info );
41 n_residue_types_( 0 ),
43 id_for_current_rotamer_( 0 ),
44 rotamer_offsets_require_update_( false )
46 rotamers_.reserve( rotamer_subset.size() );
48 for (
Size ii = 1; ii <= rotamer_subset.size(); ++ii ) {
50 if ( rotamer_subset[ ii ] == src_curr_rot_index ) {
193 Size count_copy( 1 );
195 if ( ii != rot_id ) {
196 copy_rotamers[ count_copy ] =
rotamers_[ ii ];
218 assert( rotamers_to_delete.size() ==
rotamers_.size() );
222 if ( rotamers_to_delete[ ii ] ) {
231 if ( n_dropped == 0 )
return;
235 utility_exit_with_message(
"ERROR:: RotamerSubset::drop_rotamers attempted to remove all rotamers without available input_rotamer." );
247 new_rotamers[ count_new ] =
rotamers_[ ii ];
271 for (
Size ii = 1; ii <= rotamer_indices_to_delete.size(); ++ii ) {
272 rotamers_to_delete[ rotamer_indices_to_delete[ ii ] ] =
true;
297 return & rt1 != & rt2;
386 Size count_seen_residue_types( 1 );
387 Size count_seen_residue_groups( 1 );
395 ++count_seen_residue_types;
400 ++count_seen_residue_groups;