1 /*---------------------------------------------------------------------\
3 | |__ / \ / / . \ . \ |
8 \---------------------------------------------------------------------*/
9 /** \file zypp/Package.h
12 #ifndef ZYPP_PACKAGE_H
13 #define ZYPP_PACKAGE_H
15 #include "zypp/ResObject.h"
16 #include "zypp/detail/PackageImplIf.h"
18 ///////////////////////////////////////////////////////////////////
20 { /////////////////////////////////////////////////////////////////
22 ///////////////////////////////////////////////////////////////////
24 // CLASS NAME : Package
26 /** Package interface.
28 class Package : public ResObject
31 typedef detail::PackageImplIf Impl;
33 typedef ResTraits<Self> TraitsType;
34 typedef TraitsType::PtrType Ptr;
35 typedef TraitsType::constPtrType constPtr;
43 Package( const std::string & name_r,
44 const Edition & edition_r,
45 const Arch & arch_r );
48 /** Get the package change log */
49 Changelog changelog();
52 /** Access implementation */
53 virtual Impl & pimpl() = 0;
54 /** Access implementation */
55 virtual const Impl & pimpl() const = 0;
57 ///////////////////////////////////////////////////////////////////
59 /////////////////////////////////////////////////////////////////
61 ///////////////////////////////////////////////////////////////////
62 #endif // ZYPP_PACKAGE_H