diff --git a/PDB/demo/PDB/pdb_distance_matrix.cpp b/PDB/demo/PDB/pdb_distance_matrix.cpp index 17331fc5fd9..2f7f5ca96bf 100644 --- a/PDB/demo/PDB/pdb_distance_matrix.cpp +++ b/PDB/demo/PDB/pdb_distance_matrix.cpp @@ -89,8 +89,8 @@ int main(int argc, char *argv[]){ PDB pdb(in, verbose); - if (verbose) std::cout << "Input PDB has " << pdb.models().size() << " models." << std::endl; - if (pdb.models().size() != 1){ + if (verbose) std::cout << "Input PDB has " << CGAL::PDB::distance(pdb.models()) << " models." << std::endl; + if (CGAL::PDB::distance(pdb.models()) != 1){ std::cout << "Attempting to write multiple image files: assuming the output argument has a %d in it.\n"; } @@ -105,7 +105,7 @@ int main(int argc, char *argv[]){ if (!output_file.empty()) { char buf[100000]; - if (pdb.models().size() != 1){ + if (CGAL::PDB::distance(pdb.models()) != 1){ sprintf(buf, output_file.c_str(), m.key().index()); } else { sprintf(buf, output_file.c_str()); diff --git a/PDB/demo/PDB/pdb_info.cpp b/PDB/demo/PDB/pdb_info.cpp index 5375ef1dd7e..60b3f3054e4 100644 --- a/PDB/demo/PDB/pdb_info.cpp +++ b/PDB/demo/PDB/pdb_info.cpp @@ -19,6 +19,7 @@ MA 02110-1301, USA. */ #include +#include #include #include #include @@ -78,13 +79,14 @@ int main(int argc, char *argv[]){ } PDB inpdb(in, verbose); std::cout << "File " << input_files[i] - << " " << inpdb.models().size() << " models" << std::endl; + << " " << CGAL::PDB::distance(inpdb.models()) << " models" << std::endl; CGAL_PDB_FOREACH(const PDB::Model_pair& m, inpdb.models()) { std::cout << "Model " << m.key() << std::endl; CGAL_PDB_FOREACH(const Model::Chain_pair &c, m.model().chains()) { - std::cout << " Chain " << c.key() << " has " << c.chain().monomers().size() + std::cout << " Chain " << c.key() << " has " + << CGAL::PDB::distance(c.chain().monomers()) << " residues" << std::endl; } } diff --git a/PDB/demo/PDB/pdb_transform.cpp b/PDB/demo/PDB/pdb_transform.cpp index 6e2d8a7f251..415e9b8d54c 100644 --- a/PDB/demo/PDB/pdb_transform.cpp +++ b/PDB/demo/PDB/pdb_transform.cpp @@ -115,11 +115,11 @@ int main(int argc, char *argv[]){ PDB pdb(in, verbose); - if (verbose) std::cout << "Input PDB has " << pdb.models().size() << " models." << std::endl; + if (verbose) std::cout << "Input PDB has " << CGAL::PDB::distance(pdb.models()) << " models." << std::endl; CGAL_PDB_FOREACH(PDB::Model_pair &m, pdb.models()) { - std::cout << "Model " << m.key() << " has " << m.model().chains().size() + std::cout << "Model " << m.key() << " has " << CGAL::PDB::distance(m.model().chains()) << " chains."<< std::endl; CGAL_PDB_FOREACH(Chain &c, make_chain_range(m.model().chains())) { CGAL_PDB_FOREACH(Monomer &r, make_monomer_range(c.monomers())) { diff --git a/PDB/demo/PDB/pdb_tree.cpp b/PDB/demo/PDB/pdb_tree.cpp index 818e9699598..cccd8d604a8 100644 --- a/PDB/demo/PDB/pdb_tree.cpp +++ b/PDB/demo/PDB/pdb_tree.cpp @@ -49,8 +49,8 @@ int main(int argc, char *argv[]) { std::cout << c.chain().name(); } std::cout << std::endl; - std::cout << " " << CGAL::PDB::size(c.chain().atoms())<< " atoms" << std::endl; - std::cout << " " << CGAL::PDB::size(c.chain().bonds()) << " bonds" << std::endl; + std::cout << " " << CGAL::PDB::distance(c.chain().atoms())<< " atoms" << std::endl; + std::cout << " " << CGAL::PDB::distance(c.chain().bonds()) << " bonds" << std::endl; } } diff --git a/PDB/include/CGAL/PDB/Atom.h b/PDB/include/CGAL/PDB/Atom.h index d07cdeabebe..8b540932d3b 100644 --- a/PDB/include/CGAL/PDB/Atom.h +++ b/PDB/include/CGAL/PDB/Atom.h @@ -124,19 +124,10 @@ inline bool Atom::operator!=(const Atom &o) const { } - //! Assign unique indices to all atoms in the sequence, starting at optional start value /*! This returns the next unused index. */ -template -inline int index_atoms(Range &r, int start=0) { - for (typename Range::iterator c=r.begin(); c!= r.end(); ++c) { - c->atom().set_index(Atom::Index(start++)); - } - return start; -} - template inline int index_atoms(Range r, int start=0) { for (typename Range::iterator c=r.begin(); c!= r.end(); ++c) { diff --git a/PDB/include/CGAL/PDB/distance.h b/PDB/include/CGAL/PDB/distance.h index 5e18b77e11f..aa540a94ceb 100644 --- a/PDB/include/CGAL/PDB/distance.h +++ b/PDB/include/CGAL/PDB/distance.h @@ -24,6 +24,7 @@ #include #include #include +#include #include #include namespace CGAL { namespace PDB { diff --git a/PDB/include/CGAL/PDB/range.h b/PDB/include/CGAL/PDB/range.h index cbf69805d02..68a3327945f 100644 --- a/PDB/include/CGAL/PDB/range.h +++ b/PDB/include/CGAL/PDB/range.h @@ -137,7 +137,7 @@ struct Get_bond_indices { //! Return an iterator range which returns a pair of indices for a bond template internal::rangelib::transformed_range -make_bond_indices_range(const Range &r){ +make_bond_indices_range(Range r){ return internal::rangelib::transformed(r,Get_bond_indices()); } @@ -157,7 +157,7 @@ struct Is_backbone { //! Return an iterator range which returns skips non-backbone atoms template internal::rangelib::filtered_range -make_backbone_range(const Range& r){ +make_backbone_range(Range r){ return internal::rangelib::filtered(r, Is_backbone()); } @@ -173,7 +173,7 @@ struct Is_CA { //! Return an iterator range which returns skips non-backbone atoms template internal::rangelib::filtered_range -make_backbone_range(const Range& r){ +make_ca_range(Range r){ return internal::rangelib::filtered(r, Is_CA()); } @@ -211,7 +211,7 @@ struct Is_ok_bond { //! Return an iterator range which returns skips non-backbone atoms template internal::rangelib::filtered_range > -make_backbone_range(OKA oka, const Range& r){ +make_backbone_range(OKA oka, Range r){ return internal::rangelib::filtered(r, Is_ok_bond(oka)); }