libzypp  17.14.0
Pattern.h
Go to the documentation of this file.
1 /*---------------------------------------------------------------------\
2 | ____ _ __ __ ___ |
3 | |__ / \ / / . \ . \ |
4 | / / \ V /| _/ _/ |
5 | / /__ | | | | | | |
6 | /_____||_| |_| |_| |
7 | |
8 \---------------------------------------------------------------------*/
12 #ifndef ZYPP_PATTERN_H
13 #define ZYPP_PATTERN_H
14 
15 #include "zypp/ResObject.h"
16 #include "zypp/Pathname.h"
17 #include "zypp/sat/SolvableSet.h"
18 
20 namespace zypp
21 {
22 
23  DEFINE_PTR_TYPE(Pattern);
24 
26  //
27  // CLASS NAME : Pattern
28  //
31  class Pattern : public ResObject
32  {
33  public:
34  typedef Pattern Self;
38 
39  public:
42 
43  public:
45  bool isDefault() const;
47  bool userVisible() const;
49  std::string category( const Locale & lang_r = Locale() ) const;
51  Pathname icon() const;
53  Pathname script() const;
55  std::string order() const;
56 
57  public:
69  bool isAutoPattern() const;
71  sat::Solvable autoPackage() const;
73  public:
75  NameList includes() const;
76 
78  NameList extends() const;
79 
81  Contents core() const;
82 
86  Contents depends( bool includeSuggests_r = true ) const;
89  { return depends( false ); }
90 
95  Contents contents( bool includeSuggests_r = true ) const;
98  { return contents( false ); }
99 
100  public:
101  struct ContentsSet
102  {
106  };
111  void contentsSet( ContentsSet & collect_r, bool recursively_r = false ) const;
113  void fullContentsSet( ContentsSet & collect_r ) const
114  { return contentsSet( collect_r, /*recursively_r*/true ); }
115 
116  protected:
117  friend Ptr make<Self>( const sat::Solvable & solvable_r );
119  Pattern( const sat::Solvable & solvable_r );
121  virtual ~Pattern();
122  };
124 
126 } // namespace zypp
128 #endif // ZYPP_PATTERN_H