libzypp 17.31.0
SystemCheck.h
Go to the documentation of this file.
1/*---------------------------------------------------------------------\
2| ____ _ __ __ ___ |
3| |__ / \ / / . \ . \ |
4| / / \ V /| _/ _/ |
5| / /__ | | | | | | |
6| /_____||_| |_| |_| |
7| |
8\---------------------------------------------------------------------*/
12#ifndef ZYPP_TARGET_SYSTEMCHECK_H
13#define ZYPP_TARGET_SYSTEMCHECK_H
14#ifndef ZYPP_USE_RESOLVER_INTERNALS
15#error Do not directly include this file!
16#else
17
18#include <iosfwd>
19
20#include <zypp/base/NonCopyable.h>
21#include <zypp/Capability.h>
22
24namespace zypp
25{
27 //
28 // CLASS NAME : SystemCheck
29 //
32 class SystemCheck : private base::NonCopyable
33 {
34 friend std::ostream & operator<<( std::ostream & str, const SystemCheck & obj );
35
36 public:
37
39 static const SystemCheck & instance();
40
42 const Pathname & file();
43
45 const Pathname & dir();
46
50 bool setFile(const Pathname & file) const;
51
56 bool setDir(const Pathname & dir) const;
57
60 const CapabilitySet & requiredSystemCap() const;
61
64 const CapabilitySet & conflictSystemCap() const;
65
66 private:
68 SystemCheck();
69 bool loadFile(Pathname &file, bool reset_caps = true) const;
70 bool loadFiles() const;
71 };
73
75 std::ostream & operator<<( std::ostream & str, const SystemCheck & obj );
76
78} // namespace zypp
80#endif // ZYPP_USE_RESOLVER_INTERNALS
81#endif // ZYPP_TARGET_SYSTEMCHECK_H
String related utilities and Regular expression matching.
boost::noncopyable NonCopyable
Ensure derived classes cannot be copied.
Definition: NonCopyable.h:26
Easy-to use interface to the ZYPP dependency resolver.
Definition: CodePitfalls.doc:2
std::unordered_set< Capability > CapabilitySet
Definition: Capability.h:33
std::ostream & operator<<(std::ostream &str, const SerialNumber &obj)
Definition: SerialNumber.cc:52