backup
[platform/upstream/libzypp.git] / zypp / Package.h
1 /*---------------------------------------------------------------------\
2 |                          ____ _   __ __ ___                          |
3 |                         |__  / \ / / . \ . \                         |
4 |                           / / \ V /|  _/  _/                         |
5 |                          / /__ | | | | | |                           |
6 |                         /_____||_| |_| |_|                           |
7 |                                                                      |
8 \---------------------------------------------------------------------*/
9 /** \file       zypp/Package.h
10  *
11 */
12 #ifndef ZYPP_PACKAGE_H
13 #define ZYPP_PACKAGE_H
14
15 #include <list>
16
17 #include "zypp/base/ReferenceCounted.h"
18 #include "zypp/base/NonCopyable.h"
19
20 #include "zypp/Resolvable.h"
21
22 ///////////////////////////////////////////////////////////////////
23 namespace zypp
24 { /////////////////////////////////////////////////////////////////
25   ///////////////////////////////////////////////////////////////////
26   namespace detail
27   { /////////////////////////////////////////////////////////////////
28     DEFINE_PTR_TYPE(PackageImpl)
29     /////////////////////////////////////////////////////////////////
30   } // namespace detail
31   ///////////////////////////////////////////////////////////////////
32   DEFINE_PTR_TYPE(Package)
33
34   ///////////////////////////////////////////////////////////////////
35   //
36   //    CLASS NAME : Package
37   //
38   /** */
39   class Package : public Resolvable
40   {
41   public:
42     /** Default ctor */
43     Package( detail::PackageImplPtr impl_r );
44     /** Dtor */
45     virtual ~Package();
46
47   public:
48
49     /** */
50     std::string summary() const;
51     /** */
52     std::list<std::string> description() const;
53
54   private:
55     /** Pointer to implementation */
56     detail::PackageImplPtr _pimpl;
57   };
58   ///////////////////////////////////////////////////////////////////
59
60   /////////////////////////////////////////////////////////////////
61 } // namespace zypp
62 ///////////////////////////////////////////////////////////////////
63 #endif // ZYPP_PACKAGE_H