00001 /*---------------------------------------------------------------------\ 00002 | ____ _ __ __ ___ | 00003 | |__ / \ / / . \ . \ | 00004 | / / \ V /| _/ _/ | 00005 | / /__ | | | | | | | 00006 | /_____||_| |_| |_| | 00007 | | 00008 \---------------------------------------------------------------------*/ 00012 #ifndef ZYPP_DETAIL_SUSETAGS_SELECTIONIMPL_H 00013 #define ZYPP_DETAIL_SUSETAGS_SELECTIONIMPL_H 00014 00015 #include "zypp/detail/SelectionImplIf.h" 00016 #include "zypp/Source.h" 00017 00019 namespace zypp 00020 { 00021 00022 namespace source 00023 { 00024 namespace susetags 00025 { 00026 00028 // 00029 // CLASS NAME : SelectionImpl 00030 // 00033 struct SuseTagsSelectionImpl : public zypp::detail::SelectionImplIf 00034 { 00035 public: 00036 SuseTagsSelectionImpl(); 00037 virtual ~SuseTagsSelectionImpl(); 00038 00039 virtual TranslatedText summary() const; 00040 virtual TranslatedText description() const; 00041 virtual Label category() const; 00042 virtual bool visible() const; 00043 virtual Label order() const; 00044 00045 virtual const std::set<std::string> suggests() const PURE_VIRTUAL; 00046 virtual const std::set<std::string> recommends() const PURE_VIRTUAL; 00047 virtual const std::set<std::string> install_packages( const Locale & lang = Locale("") ) const; 00048 virtual Source_Ref source() const; 00049 00050 TranslatedText _summary; 00051 TranslatedText _description; 00052 std::string _parser_version; 00053 std::string _name; 00054 std::string _version; 00055 std::string _release; 00056 std::string _arch; 00057 std::string _order; 00058 std::string _category; 00059 bool _visible; 00060 00061 std::set<std::string> _suggests; 00062 std::set<std::string> _recommends; 00063 std::set<std::string> _requires; 00064 std::set<std::string> _conflicts; 00065 std::set<std::string> _provides; 00066 std::set<std::string> _obsoletes; 00067 std::map< Locale, std::set<std::string> > _inspacks; 00068 std::map< Locale, std::set<std::string> > _delpacks; 00069 00070 Source_Ref _source; 00071 }; 00073 00075 } // namespace susetags 00077 } // namespace source 00079 } // namespace zypp 00081 #endif // ZYPP_DETAIL_SELECTIONIMPL_H