libzypp 17.35.1
ZYpp.h
Go to the documentation of this file.
1/*---------------------------------------------------------------------\
2| ____ _ __ __ ___ |
3| |__ / \ / / . \ . \ |
4| / / \ V /| _/ _/ |
5| / /__ | | | | | | |
6| /_____||_| |_| |_| |
7| |
8\---------------------------------------------------------------------*/
12#ifndef ZYPP_ZYPP_H
13#define ZYPP_ZYPP_H
14#include <iosfwd>
15
17#include <zypp/base/PtrTypes.h>
18#include <zypp-core/Globals.h>
19
20#include <zypp/ZConfig.h>
21#include <zypp/ManagedFile.h>
22
23#include <zypp/ZYppCommit.h>
24#include <zypp/ResTraits.h>
25
26#include <zypp/Target.h>
27#include <zypp/Resolver.h>
28#include <zypp/KeyRing.h>
30
31namespace zyppng {
32 class Context;
33}
34
36namespace zypp
37{
38
39 namespace zypp_detail
40 {
41 class ZYppImpl;
42 }
43
44 class ZYppFactory;
45 class ResPool;
46 class ResPoolProxy;
47 class KeyRing;
48
50 //
51 // CLASS NAME : ZYpp
52 //
58 {
59 friend std::ostream & operator<<( std::ostream & str, const ZYpp & obj );
60
61 public:
62 // can't get swig working if shared_ptr is without namespace here
63 using Ptr = ::boost::shared_ptr<ZYpp>;
64 using constPtr = ::boost::shared_ptr<const ZYpp>;
65
66 public:
67
72 ResPool pool() const;
73
78 ResPoolProxy poolProxy() const;
79
81
82 void setPartitions(const DiskUsageCounter::MountPointSet &mp);
83
84 DiskUsageCounter::MountPointSet getPartitions() const;
85
86 public:
90 Target_Ptr target() const;
91
95 Target_Ptr getTarget() const;
96
103 void initializeTarget(const Pathname & root, bool doRebuild_r = false);
104
108 void finishTarget();
109
114 static void setShutdownSignal();
115
120 static void clearShutdownSignal();
121
122 public:
124
130 ZYppCommitResult commit( const ZYppCommitPolicy & policy_r );
131
135 void installSrcPackage( const SrcPackage_constPtr & srcPackage_r );
136
140 ManagedFile provideSrcPackage( const SrcPackage_constPtr & srcPackage_r );
141
142 public:
144 Resolver_Ptr resolver() const;
145 KeyRing_Ptr keyRing() const;
146
147 public:
149 Pathname homePath() const;
150
152 Pathname tmpPath() const;
153
155 void setHomePath( const Pathname & path );
156
157 private:
159 friend class ZYppFactory;
161 using Impl_Ptr = shared_ptr<Impl>;
163 explicit ZYpp( const Impl_Ptr & impl_r );
164 private:
166 friend void ::boost::checked_delete<ZYpp>(ZYpp*) BOOST_NOEXCEPT; // template<class T> inline void checked_delete(T * x)
168 ~ZYpp();
169 private:
172 };
175} // namespace zypp
177#endif // ZYPP_ZYPP_H
std::set< MountPoint > MountPointSet
ResPool::instance().proxy();.
Global ResObject pool.
Definition ResPool.h:62
Options and policies for ZYpp::commit.
Result returned from ZYpp::commit.
ZYpp factory class (Singleton)
Definition ZYppFactory.h:44
RW_pointer< Impl > _pimpl
Pointer to implementation.
Definition ZYpp.h:171
::boost::shared_ptr< const ZYpp > constPtr
Definition ZYpp.h:64
shared_ptr< Impl > Impl_Ptr
Definition ZYpp.h:161
::boost::shared_ptr< ZYpp > Ptr
Definition ZYpp.h:63
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.
std::ostream & operator<<(std::ostream &str, const SerialNumber &obj)
const Arch Arch_armv7hnl Arch_armv7nhl ZYPP_API
Definition Arch.h:247
zypp::KeyRing KeyRing
Definition context.h:28
Wrapper for const correct access via Smart pointer types.
Definition PtrTypes.h:293
Provides API related macros.