Modalias.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00012 #ifndef ZYPP_TARGET_MODALIAS_MODALIAS_H
00013 #define ZYPP_TARGET_MODALIAS_MODALIAS_H
00014
00015 #include <iosfwd>
00016 #include <vector>
00017 #include <string>
00018
00019 #include "zypp/base/PtrTypes.h"
00020 #include "zypp/IdString.h"
00021
00023 namespace zypp
00024 {
00025
00026 namespace target
00027 {
00028
00030
00031
00032
00035 class Modalias
00036 {
00037 friend std::ostream & operator<<( std::ostream & str, const Modalias & obj );
00038
00039 public:
00041 class Impl;
00042
00043 public:
00044 typedef std::vector<std::string> ModaliasList;
00045
00047 static Modalias & instance();
00048
00050 ~Modalias();
00051
00052 public:
00053
00069 bool query( IdString cap_r ) const
00070 { return query( cap_r.c_str() ); }
00072 bool query( const char * cap_r ) const;
00074 bool query( const std::string & cap_r ) const
00075 { return query( cap_r.c_str() ); }
00076
00078 const ModaliasList & modaliasList() const;
00079
00080 private:
00082 Modalias();
00083
00085 RW_pointer<Impl> _pimpl;
00086 };
00088
00090 std::ostream & operator<<( std::ostream & str, const Modalias & obj );
00091
00093 }
00096 }
00098 #endif // ZYPP_TARGET_MODALIAS_MODALIAS_H