]> git.ipfire.org Git - thirdparty/squid.git/blame - src/fs/rock/RockIoRequests.h
SourceFormat Enforcement
[thirdparty/squid.git] / src / fs / rock / RockIoRequests.h
CommitLineData
bbc27441 1/*
bde978a6 2 * Copyright (C) 1996-2015 The Squid Software Foundation and contributors
bbc27441
AJ
3 *
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.
7 */
8
e2851fe7
AR
9#ifndef SQUID_FS_ROCK_IO_REQUESTS_H
10#define SQUID_FS_ROCK_IO_REQUESTS_H
11
12#include "DiskIO/ReadRequest.h"
13#include "DiskIO/WriteRequest.h"
14#include "fs/rock/RockIoState.h"
15
16class DiskFile;
17
9199139f
AR
18namespace Rock
19{
e2851fe7 20
e2851fe7
AR
21class ReadRequest: public ::ReadRequest
22{
5c2f68b7
AJ
23 CBDATA_CLASS(ReadRequest);
24
e2851fe7
AR
25public:
26 ReadRequest(const ::ReadRequest &base, const IoState::Pointer &anSio);
27 IoState::Pointer sio;
e2851fe7
AR
28};
29
e2851fe7
AR
30class WriteRequest: public ::WriteRequest
31{
5c2f68b7
AJ
32 CBDATA_CLASS(WriteRequest);
33
e2851fe7 34public:
ce49546e 35 WriteRequest(const ::WriteRequest &base, const IoState::Pointer &anSio);
e2851fe7 36 IoState::Pointer sio;
ce49546e
AR
37
38 /// slot being written using this write request
39 SlotId sidCurrent;
40
41 /// allocated next slot (negative if we are writing the last slot)
42 SlotId sidNext;
e2851fe7 43
5296bbd9
AR
44 /// whether this is the last request for the entry
45 bool eof;
e2851fe7
AR
46};
47
e2851fe7
AR
48} // namespace Rock
49
50#endif /* SQUID_FS_ROCK_IO_REQUESTS_H */
f53969cc 51