]>
git.ipfire.org Git - thirdparty/squid.git/blob - src/fs/ufs/StoreSearchUFS.h
2 * Copyright (C) 1996-2019 The Squid Software Foundation and contributors
4 * Squid software is distributed under GPLv2+ license and includes
5 * contributions from numerous individuals and organizations.
6 * Please see the COPYING and CONTRIBUTORS files for details.
9 #ifndef SQUID_FS_UFS_STORESEARCHUFS_H
10 #define SQUID_FS_UFS_STORESEARCHUFS_H
12 #include "StoreSearch.h"
13 #include "UFSSwapDir.h"
20 class StoreSearchUFS
: public StoreSearch
22 CBDATA_CLASS(StoreSearchUFS
);
25 StoreSearchUFS(RefCount
<UFSSwapDir
> sd
);
26 virtual ~StoreSearchUFS();
28 /** \todo Iterator API - garh, wrong place */
30 * callback the client when a new StoreEntry is available
33 virtual void next(void (callback
)(void *cbdata
), void *cbdata
);
36 \retval true if a new StoreEntry is immediately available
37 \retval false if a new StoreEntry is NOT immediately available
41 virtual bool error() const;
42 virtual bool isDone() const;
43 virtual StoreEntry
*currentItem();
45 RefCount
<UFSSwapDir
> sd
;
46 RemovalPolicyWalker
*walker
;
49 /// \bug (callback) should be hidden behind a proper human readable name
50 void (callback
)(void *cbdata
);
55 StoreSearchUFS(StoreSearchUFS
const &); //disabled
56 StoreSearchUFS
& operator=(StoreSearchUFS
const &); //disabled
57 StoreSearchUFS(); //disabled
62 #endif /* SQUID_FS_UFS_STORESEARCHUFS_H */