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