X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/578bfd0aed2ec993f4ad85fa6a7094a852261422..f17ac0977167d1e58316d3b3f7159f65d40a090a:/apt-pkg/contrib/mmap.h diff --git a/apt-pkg/contrib/mmap.h b/apt-pkg/contrib/mmap.h index 096304177..3cb6c6468 100644 --- a/apt-pkg/contrib/mmap.h +++ b/apt-pkg/contrib/mmap.h @@ -1,6 +1,6 @@ // -*- mode: cpp; mode: fold -*- // Description /*{{{*/ -// $Id: mmap.h,v 1.1 1998/07/02 02:58:13 jgg Exp $ +// $Id: mmap.h,v 1.8 1999/01/18 06:20:08 jgg Exp $ /* ###################################################################### MMap Class - Provides 'real' mmap or a faked mmap using read(). @@ -22,24 +22,27 @@ ##################################################################### */ /*}}}*/ -// Header section: pkglib #ifndef PKGLIB_MMAP_H #define PKGLIB_MMAP_H +#ifdef __GNUG__ +#pragma interface "apt-pkg/mmap.h" +#endif + #include -#include +#include class MMap { protected: - File &Fd; + FileFd &Fd; unsigned long Flags; unsigned long iSize; void *Base; bool Map(); - bool Close(bool DoClose = true); + bool Close(bool DoClose = true,bool DoSync = true); public: @@ -54,7 +57,7 @@ class MMap bool Sync(); bool Sync(unsigned long Start,unsigned long Stop); - MMap(File &F,unsigned long Flags); + MMap(FileFd &F,unsigned long Flags); virtual ~MMap(); }; @@ -79,13 +82,13 @@ class DynamicMMap : public MMap public: // Allocation - unsigned long RawAllocate(unsigned long Size); + unsigned long RawAllocate(unsigned long Size,unsigned long Aln = 0); unsigned long Allocate(unsigned long ItemSize); unsigned long WriteString(const char *String,unsigned long Len = 0); inline unsigned long WriteString(string S) {return WriteString(S.begin(),S.size());}; void UsePools(Pool &P,unsigned int Count) {Pools = &P; PoolCount = Count;}; - DynamicMMap(File &F,unsigned long Flags,unsigned long WorkSpace = 1024*1024); + DynamicMMap(FileFd &F,unsigned long Flags,unsigned long WorkSpace = 2*1024*1024); virtual ~DynamicMMap(); };