// -*- mode: cpp; mode: fold -*-
// Description /*{{{*/
-// $Id: mmap.h,v 1.2 1998/07/04 05:57:43 jgg Exp $
+// $Id: mmap.h,v 1.6 1998/07/19 04:42:15 jgg Exp $
/* ######################################################################
MMap Class - Provides 'real' mmap or a faked mmap using read().
#ifndef PKGLIB_MMAP_H
#define PKGLIB_MMAP_H
+#ifdef __GNUG__
+#pragma interface "apt-pkg/mmap.h"
+#endif
+
#include <string>
-#include <pkglib/fileutl.h>
+#include <apt-pkg/fileutl.h>
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:
bool Sync();
bool Sync(unsigned long Start,unsigned long Stop);
- MMap(File &F,unsigned long Flags);
+ MMap(FileFd &F,unsigned long Flags);
virtual ~MMap();
};
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 = 1024*1024);
virtual ~DynamicMMap();
};