xref: /haiku/src/system/kernel/vm/VMDeviceCache.h (revision a085e81e62d7a860f809b4fb7c7bf5654c396985)
1 /*
2  * Copyright 2008-2011, Ingo Weinhold, ingo_weinhold@gmx.de.
3  * Copyright 2005-2007, Axel Dörfler, axeld@pinc-software.de.
4  * Distributed under the terms of the MIT License.
5  *
6  * Copyright 2001-2002, Travis Geiselbrecht. All rights reserved.
7  * Distributed under the terms of the NewOS License.
8  */
9 #ifndef _KERNEL_VM_STORE_DEVICE_H
10 #define _KERNEL_VM_STORE_DEVICE_H
11 
12 
13 #include <vm/VMCache.h>
14 
15 
16 class VMDeviceCache : public VMCache {
17 public:
18 			status_t			Init(addr_t baseAddress,
19 									uint32 allocationFlags);
20 
21 	virtual	status_t			Read(off_t offset, const iovec* vecs,
22 									size_t count, uint32 flags,
23 						 			size_t* _numBytes);
24 	virtual	status_t			Write(off_t offset, const iovec* vecs,
25 									size_t count, uint32 flags,
26 						  			size_t* _numBytes);
27 
28 protected:
29 	virtual	void				DeleteObject();
30 
31 private:
32 			addr_t				fBaseAddress;
33 };
34 
35 
36 #endif	/* _KERNEL_VM_STORE_DEVICE_H */
37