15 #ifndef INCLUDED_protocols_frag_picker_nonlocal_NonlocalPair_hh
16 #define INCLUDED_protocols_frag_picker_nonlocal_NonlocalPair_hh
31 #include <utility/pointer/owning_ptr.hh>
32 #include <utility/pointer/ReferenceCount.hh>
33 #include <utility/vector1.hh>
40 namespace frag_picker {
44 typedef std::pair<FragmentCandidateOP, scores::FragmentScoreMapOP>
Candidate;
47 using namespace protocols::frag_picker;
55 query_position_i_ = query_pos_i;
56 query_position_j_ = query_pos_j;
57 candidate_i_ = candidate_i;
58 candidate_j_ = candidate_j;
59 candidate_i_rank_ = candidate_i_rank;
60 candidate_j_rank_ = candidate_j_rank;
79 return candidate_i_rank_;
83 return candidate_j_rank_;
87 return query_position_i_;
91 return query_position_j_;
95 out <<
"pair: " << query_position_i_ <<
" " << query_position_j_ <<
" " <<
96 candidate_i_.first->get_residue(1)->resi() <<
" " << candidate_j_.first->get_residue(1)->resi() <<
97 " " << candidate_i_rank_ <<
" " << candidate_j_rank_;
98 std::map<ContactType, Size> contact_type_cnt;
99 std::map<ContactType, Size>::iterator iter;
100 for (
Size i=1; i<=contacts_.size(); ++i) contact_type_cnt[contacts_[i]->type()]++;
101 for ( iter = contact_type_cnt.begin(); iter != contact_type_cnt.end(); iter++ )
102 out <<
" " <<
contact_name(iter->first) <<
" " << iter->second;
104 candidate_i_.first->print_fragment(out);
106 candidate_j_.first->print_fragment(out);