1 /*---------------------------------------------------------------------\
3 | |__ / \ / / . \ . \ |
8 \---------------------------------------------------------------------*/
9 /** \file zypp/Language.h
12 #ifndef ZYPP_LANGUAGE_H
13 #define ZYPP_LANGUAGE_H
15 #include "zypp/ResObject.h"
16 #include "zypp/Locale.h"
18 ///////////////////////////////////////////////////////////////////
20 { /////////////////////////////////////////////////////////////////
22 DEFINE_PTR_TYPE(Language);
24 ///////////////////////////////////////////////////////////////////
26 { /////////////////////////////////////////////////////////////////
28 ///////////////////////////////////////////////////////////////////
30 // CLASS NAME : LanguageImplIf
32 /** Exposition only. */
33 class LanguageImplIf : public ResObjectImplIf
36 typedef Language ResType;
38 ///////////////////////////////////////////////////////////////////
40 /////////////////////////////////////////////////////////////////
42 ///////////////////////////////////////////////////////////////////
44 ///////////////////////////////////////////////////////////////////
46 // CLASS NAME : Language
48 /** Language interface.
50 class Language : public ResObject
53 typedef detail::LanguageImplIf Impl;
54 typedef Language Self;
55 typedef ResTraits<Self> TraitsType;
56 typedef TraitsType::PtrType Ptr;
57 typedef TraitsType::constPtrType constPtr;
59 /** Installed Language instance. */
60 static Ptr installedInstance( const Locale & locale_r );
61 /** Available Language instance. */
62 static Ptr availableInstance( const Locale & locale_r );
66 Language( const NVRAD & nvrad_r );
71 /** Access implementation */
72 virtual Impl & pimpl() = 0;
73 /** Access implementation */
74 virtual const Impl & pimpl() const = 0;
76 ///////////////////////////////////////////////////////////////////
78 /////////////////////////////////////////////////////////////////
80 ///////////////////////////////////////////////////////////////////
81 #endif // ZYPP_LANGUAGE_H