10 #ifndef INCLUDED_protocols_sic_dock_xyzStripeHashPoseWithMeta_hh
11 #define INCLUDED_protocols_sic_dock_xyzStripeHashPoseWithMeta_hh
15 #include <numeric/geometry/hashing/xyzStripeHashWithMeta.hh>
23 #include <platform/types.hh>
35 ) : numeric::geometry::hashing::xyzStripeHashWithMeta<double>(radius) {
42 ) : numeric::geometry::hashing::xyzStripeHashWithMeta<double>(radius) {
65 for(
int ia = 1; ia <= (
int)amap.
n_atom(ir); ia++) {
66 if(amap[
AtomID(ia,ir)] > 0) natom++;
74 for(
int ia = 1; ia <= (
int)amap.
n_atom(ir); ia++) {
75 if(amap[
AtomID(ia,ir)] > 0) {
77 meta [ count] = amap[
AtomID(ia,ir)];
94 if(
CB==m )
if(r.has(
"CB")) natom++;
95 if(
BB ==m ) natom += r.has(
"N")+r.has(
"CA")+r.has(
"C")+r.has(
"O")+r.has(
"CB");
96 if(
HVY==m ) natom += r.nheavyatoms();
97 if(
ALL==m ) natom += r.natoms();
107 atoms[++count] = p.
xyz(aid);
108 meta [ count] = r.atom_type(ia).lj_radius();
110 if(r.has(
"CB")){ atoms[++count]=r.xyz(
"CB"); meta[count]=r.atom_type(r.atom_index(
"CB")).lj_radius(); }
112 if(r.has(
"N")){ atoms[++count]=r.xyz(
"N"); meta[count]=r.atom_type(r.atom_index(
"N")).lj_radius(); }
113 if(r.has(
"CA")){ atoms[++count]=r.xyz(
"CA"); meta[count]=r.atom_type(r.atom_index(
"CA")).lj_radius(); }
114 if(r.has(
"C")){ atoms[++count]=r.xyz(
"C"); meta[count]=r.atom_type(r.atom_index(
"C")).lj_radius(); }
115 if(r.has(
"O")){ atoms[++count]=r.xyz(
"O"); meta[count]=r.atom_type(r.atom_index(
"O")).lj_radius(); }
116 if(r.has(
"CB")){ atoms[++count]=r.xyz(
"CB"); meta[count]=r.atom_type(r.atom_index(
"CB")).lj_radius(); }
118 if(r.has(
"CA")){ atoms[++count]=r.xyz(
"CA"); meta[count]=r.atom_type(r.atom_index(
"CA")).lj_radius(); }
119 if(r.has(
"C")){ atoms[++count]=r.xyz(
"C"); meta[count]=r.atom_type(r.atom_index(
"C")).lj_radius(); }
120 if(r.has(
"CB")){ atoms[++count]=r.xyz(
"CB"); meta[count]=r.atom_type(r.atom_index(
"CB")).lj_radius(); }
122 int natom = (
ALL==m) ? r.natoms() : r.nheavyatoms();
123 for(
int ia = 1; ia <= natom; ++ia) {
125 atoms[++count] = p.
xyz(aid);
126 meta [ count] = r.atom_type(ia).lj_radius();
130 if(meta_in.size()!=0) {