libzypp  11.13.5
DeltaCandidates.h
Go to the documentation of this file.
1 /*---------------------------------------------------------------------\
2 | ____ _ __ __ ___ |
3 | |__ / \ / / . \ . \ |
4 | / / \ V /| _/ _/ |
5 | / /__ | | | | | | |
6 | /_____||_| |_| |_| |
7 | |
8 \---------------------------------------------------------------------*/
9 
10 #ifndef ZYPP_REPO_DELTACANDIDATES_H
11 #define ZYPP_REPO_DELTACANDIDATES_H
12 
13 #include <iosfwd>
14 #include <list>
15 
16 #include "zypp/base/PtrTypes.h"
17 #include "zypp/base/Function.h"
18 #include "zypp/repo/PackageDelta.h"
19 #include "zypp/Repository.h"
20 #include "zypp/Package.h"
21 
23 namespace zypp
24 {
25 
26  namespace repo
27  {
28 
37  {
38  friend std::ostream & operator<<( std::ostream & str, const DeltaCandidates & obj );
39 
40  public:
42  class Impl;
43 
44  public:
50  DeltaCandidates( const std::list<Repository> & repos, const std::string & pkgname = "" );
53 
54  std::list<packagedelta::DeltaRpm> deltaRpms(const Package::constPtr & package) const;
55 
56  private:
59  };
61 
63  std::ostream & operator<<( std::ostream & str, const DeltaCandidates & obj );
64 
66 
70  template<class RepoIter>
71  inline DeltaCandidates makeDeltaCandidates( RepoIter begin_r, RepoIter end_r )
72  { return DeltaCandidates( std::list<Repository>( begin_r, end_r ) ); }
73 
77  template<class RepoContainer>
78  inline DeltaCandidates makeDeltaCandidates( const RepoContainer & cont_r )
79  { return makeDeltaCandidates( cont_r.begin(), cont_r.end() ); }
80 
81 
83  } // namespace repo
86 } // namespace zypp
88 #endif // ZYPP_REPO_DELTACANDIDATES_H