MantisBT - Rosetta
View Issue Details
0000280Rosetta[All Projects] Bad Codingpublic2013-06-05 20:472013-07-25 17:30
delucasl 
jadolfbr 
normalminoralways
assignedopen 
All platformsAnyAny
Trunk 
 
All
Anything that computes an hbond
Confirmed As Bug
0000280: HbondSet::HbondSet(pose) only computes bb-bb bonds
HbondSet::HbondSet(pose) calls setup_for_residue_pair_energies() with the backbone_only flag set to true. This is a fairly counterintuitive default behavior, and the switch should probably be flipped, assuming existing code isn't relying on the current behavior
No tags attached.
Issue History
2013-06-05 20:47delucaslNew Issue
2013-06-05 20:47delucaslStatusnew => assigned
2013-06-05 20:47delucaslAssigned To => momeara
2013-06-05 21:08jadolfbrNote Added: 0000302
2013-06-05 23:47jadolfbrAssigned Tomomeara => jadolfbr
2013-07-25 11:12jadolfbrNote Added: 0000308
2013-07-25 11:20jadolfbrNote Edited: 0000308bug_revision_view_page.php?bugnote_id=308#r91
2013-07-25 17:30rmorettiNote Added: 0000309

Notes
(0000302)
jadolfbr   
2013-06-05 21:08   
I have a fix for this in jadolfbr/hbond_interface. I'll be committing it soon.
(0000308)
jadolfbr   
2013-07-25 11:12   
(edited on: 2013-07-25 11:20)
I added an option to the pose constructor for bb_only boolean, with the default true to trunk (https://github.com/RosettaCommons/main/commit/1df8171ffc09b0d9abf4595747421ea0c23f74fb [^]) . I also updated the code documentation. To flip the switch on the default, I would need to find the pose constructor throughout code - How can this be done reliably?

(0000309)
rmoretti   
2013-07-25 17:30   
Probably the easiest way of finding all the places where a particular C++ function is called in the code is to change the interface of the function, and look for all the places the compiler complains.

For your purposes, just remove the default option on the HBondSet constructor, recompile, (temporarily) fix all the places where it complains about the missing constructor to be explicit about the parameter, and keep repeating until the code compiles without issue. You'll then have identified all the location where that function has been called. (Or at least those locations which are actively being compiled.)