1 /*---------------------------------------------------------------------\
3 | |__ / \ / / . \ . \ |
8 \---------------------------------------------------------------------*/
9 /** \file zypp/Pattern.h
12 #ifndef ZYPP_PATTERN_H
13 #define ZYPP_PATTERN_H
15 #include "zypp/ResObject.h"
16 #include "zypp/detail/PatternImplIf.h"
17 #include "zypp/Pathname.h"
19 ///////////////////////////////////////////////////////////////////
21 { /////////////////////////////////////////////////////////////////
23 DEFINE_PTR_TYPE(Pattern);
25 ///////////////////////////////////////////////////////////////////
27 // CLASS NAME : Pattern
29 /** Pattern interface.
31 class Pattern : public ResObject
34 typedef detail::PatternImplIf Impl;
36 typedef ResTraits<Self> TraitsType;
37 typedef TraitsType::PtrType Ptr;
38 typedef TraitsType::constPtrType constPtr;
42 bool isDefault() const;
44 bool userVisible() const;
46 std::string category() const;
48 Pathname icon() const;
50 Pathname script() const;
54 /** \deprecated AFAIK unused old Selection interface method. */
55 std::set<std::string> install_packages( const Locale & lang = Locale("") ) const ZYPP_DEPRECATED;
58 const CapSet & includes() const;
60 const CapSet & extends() const;
64 Pattern( const NVRAD & nvrad_r );
69 /** Access implementation */
70 virtual Impl & pimpl() = 0;
71 /** Access implementation */
72 virtual const Impl & pimpl() const = 0;
74 ///////////////////////////////////////////////////////////////////
76 /////////////////////////////////////////////////////////////////
78 ///////////////////////////////////////////////////////////////////
79 #endif // ZYPP_PATTERN_H