8 #ifndef IMPATOM_SECONDARY_STRUCTURE_RESIDUE_H
9 #define IMPATOM_SECONDARY_STRUCTURE_RESIDUE_H
11 #include "atom_config.h"
20 IMPATOM_BEGIN_NAMESPACE
35 res_p->add_attribute(get_prob_helix_key(),prob_helix);
36 res_p->add_attribute(get_prob_strand_key(),prob_strand);
37 res_p->add_attribute(get_prob_coil_key(),prob_coil);
38 if (!Hierarchy::particle_is_instance(res_p)) {
39 Hierarchy::setup_particle(res_p);
42 ssr.set_prob_helix(prob_helix);
43 ssr.set_prob_strand(prob_strand);
44 ssr.set_prob_coil(prob_coil);
50 Float prob_helix=1.0/3.0,prob_strand=1.0/3.0,prob_coil=1.0/3.0;
60 if (p->has_attribute(get_prob_helix_key())
61 && (p->has_attribute(get_prob_strand_key()))
62 && (p->has_attribute(get_prob_coil_key())))
return true;
73 res.push_back(get_prob_helix());
74 res.push_back(get_prob_strand());
75 res.push_back(get_prob_coil());
86 static FloatKey get_prob_helix_key();
87 static FloatKey get_prob_strand_key();
90 IMP_DECORATORS(SecondaryStructureResidue, SecondaryStructureResidues,
104 const Particles &ssr_ps,
106 bool winner_takes_all_per_res=
false);
119 const Particles &ssr_ps,
123 bool winner_takes_all_per_res=
false);
131 SecondaryStructureResidue ssr2);
133 IMPATOM_END_NAMESPACE