libzypp  11.13.5
ProblemSolution.h
Go to the documentation of this file.
1 
9 #ifndef ZYPP_PROBLEMSOLUTION_H
10 #define ZYPP_PROBLEMSOLUTION_H
11 
12 #include <list>
13 #include <string>
14 
16 #include "zypp/base/PtrTypes.h"
18 #include "zypp/ResolverProblem.h"
21 
23 namespace zypp
24 {
25 
26 
43  {
44  protected:
45 
50  void clear();
51 
52  //
53  // Data members
54  //
55  ResolverProblem_Ptr _problem;
57  std::string _description;
58  std::string _details;
59 
60  public:
61 
65  ProblemSolution( ResolverProblem_Ptr parent, const std::string & description, const std::string & details );
66 
71 
72  // ---------------------------------- I/O
73 
74  friend std::ostream& operator<<(std::ostream&, const ProblemSolution & solution);
75  friend std::ostream& operator<<(std::ostream&, const ProblemSolutionList & solutionlist);
76  friend std::ostream& operator<<(std::ostream&, const CProblemSolutionList & solutionlist);
77 
78  // ---------------------------------- accessors
82  std::string description() const { return _description; }
83 
88  std::string details() const { return _details; }
89 
93  ResolverProblem_Ptr problem() const { return _problem; }
94 
95  // ---------------------------------- methods
96 
102  bool apply (solver::detail::Resolver & resolver);
103 
107  void addAction( solver::detail::SolutionAction_constPtr action );
108 
110 
111  };
112 
113 
115 };// namespace zypp
117 
118 #endif // ZYPP_PROBLEMSOLUTION_H
119