1 /*---------------------------------------------------------------------\
3 | |__ / \ / / . \ . \ |
8 \---------------------------------------------------------------------*/
9 /** \file zypp/Product.h
12 #ifndef ZYPP_PRODUCT_H
13 #define ZYPP_PRODUCT_H
15 #include "zypp/ResObject.h"
16 #include "zypp/detail/ProductImplIf.h"
18 ///////////////////////////////////////////////////////////////////
20 { /////////////////////////////////////////////////////////////////
22 DEFINE_PTR_TYPE(Product);
24 ///////////////////////////////////////////////////////////////////
26 // CLASS NAME : ResObject
28 /** Product interface.
30 class Product : public ResObject
33 typedef detail::ProductImplIf Impl;
35 typedef ResTraits<Self> TraitsType;
36 typedef TraitsType::PtrType Ptr;
37 typedef TraitsType::constPtrType constPtr;
40 /** Get the product categoty (base, add-on) */
41 std::string category() const;
43 /** Get the vendor of the product */
46 /** Get the name of the product to be presented to user */
47 TranslatedText displayName() const;
51 Product( const NVRAD & nvrad_r );
56 /** Access implementation */
57 virtual Impl & pimpl() = 0;
58 /** Access implementation */
59 virtual const Impl & pimpl() const = 0;
62 /////////////////////////////////////////////////////////////////
64 ///////////////////////////////////////////////////////////////////
65 #endif // ZYPP_PRODUCT_H