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
16class VMDeviceCache : public VMCache {
17public:
18			status_t			Init(addr_t baseAddress,
19									uint32 allocationFlags);
20
21	virtual	status_t			Read(off_t offset, const generic_io_vec *vecs,
22									 size_t count, uint32 flags,
23									 generic_size_t *_numBytes);
24	virtual	status_t			Write(off_t offset, const generic_io_vec *vecs,
25									  size_t count, uint32 flags,
26									  generic_size_t *_numBytes);
27
28protected:
29	virtual	void				DeleteObject();
30
31private:
32			addr_t				fBaseAddress;
33};
34
35
36#endif	/* _KERNEL_VM_STORE_DEVICE_H */
37