Patch.h

Go to the documentation of this file.
00001 /*---------------------------------------------------------------------\
00002 |                          ____ _   __ __ ___                          |
00003 |                         |__  / \ / / . \ . \                         |
00004 |                           / / \ V /|  _/  _/                         |
00005 |                          / /__ | | | | | |                           |
00006 |                         /_____||_| |_| |_|                           |
00007 |                                                                      |
00008 \---------------------------------------------------------------------*/
00012 #ifndef ZYPP_PATCH_H
00013 #define ZYPP_PATCH_H
00014 
00015 #include "zypp/ResObject.h"
00016 #include "zypp/detail/PatchImplIf.h"
00017 
00019 namespace zypp
00020 { 
00021 
00022   DEFINE_PTR_TYPE(Patch);
00023   
00025   //
00026   //    CLASS NAME : Patch
00027   //
00032   class Patch : public ResObject
00033   {
00034   public:
00035     typedef detail::PatchImplIf      Impl;
00036     typedef Patch                    Self;
00037     typedef ResTraits<Self>          TraitsType;
00038     typedef TraitsType::PtrType      Ptr;
00039     typedef TraitsType::constPtrType constPtr;
00040 
00041   public:
00042     typedef Impl::AtomList AtomList;
00043 
00044   public:
00046     std::string id() const;
00048     Date timestamp() const;
00050     std::string category() const;
00052     bool reboot_needed() const;
00054     bool affects_pkg_manager() const;
00056     AtomList atoms() const;
00058     bool interactive() const;
00059     // TODO add comments and reevaluate the need for functions below
00060     void mark_atoms_to_freshen(bool freshen);
00061     bool any_atom_selected();
00062     void select(); // TODO parameter to specify select/unselect or another function
00063 
00064   protected:
00066     Patch( const NVRAD & nvrad_r );
00068     virtual ~Patch();
00069 
00070   private:
00072     virtual Impl & pimpl() = 0;
00074     virtual const Impl & pimpl() const = 0;
00075   };
00076 
00078 } // namespace zypp
00080 #endif // ZYPP_PATCH_H

Generated on Thu Jul 6 00:07:22 2006 for zypp by  doxygen 1.4.6