1 /*---------------------------------------------------------------------\
3 | |__ / \ / / . \ . \ |
8 \---------------------------------------------------------------------*/
9 /** \file zypp/SystemResObject.h
12 #ifndef ZYPP_SYSTEMRESOBJECT_H
13 #define ZYPP_SYSTEMRESOBJECT_H
15 #include "zypp/ResObject.h"
17 ///////////////////////////////////////////////////////////////////
19 { /////////////////////////////////////////////////////////////////
21 class SystemResObject;
23 ///////////////////////////////////////////////////////////////////
25 { /////////////////////////////////////////////////////////////////
27 ///////////////////////////////////////////////////////////////////
29 // CLASS NAME : SystemResObjectImplIf
31 /** Abstract SystemResObject implementation interface.
33 class SystemResObjectImplIf : public ResObjectImplIf
36 typedef SystemResObject ResType;
38 ///////////////////////////////////////////////////////////////////
40 /////////////////////////////////////////////////////////////////
42 ///////////////////////////////////////////////////////////////////
44 ///////////////////////////////////////////////////////////////////
46 // CLASS NAME : SystemResObject
49 class SystemResObject : public ResObject
52 typedef detail::SystemResObjectImplIf Impl;
53 typedef SystemResObject Self;
54 typedef ResTraits<Self> TraitsType;
55 typedef TraitsType::PtrType Ptr;
56 typedef TraitsType::constPtrType constPtr;
59 /** Default SystemResObject instance. */
60 static Ptr instance();
64 SystemResObject( const NVRAD & nvrad_r );
66 virtual ~SystemResObject();
69 /** Access implementation */
70 virtual Impl & pimpl() = 0;
71 /** Access implementation */
72 virtual const Impl & pimpl() const = 0;
74 ///////////////////////////////////////////////////////////////////
76 /////////////////////////////////////////////////////////////////
78 ///////////////////////////////////////////////////////////////////
79 #endif // ZYPP_SYSTEMRESOBJECT_H