1/* 2 * Copyright 2009, Ingo Weinhold, ingo_weinhold@gmx.de. 3 * Distributed under the terms of the MIT License. 4 */ 5#ifndef PACKAGE_LEAF_NODE_H 6#define PACKAGE_LEAF_NODE_H 7 8 9#include "PackageNode.h" 10 11#include <io_requests.h> 12 13 14class BPackageData; 15 16 17class PackageLeafNode : public PackageNode { 18public: 19 PackageLeafNode(Package* package, mode_t mode); 20 virtual ~PackageLeafNode(); 21 22 virtual const char* SymlinkPath() const; 23 24 virtual status_t Read(off_t offset, void* buffer, 25 size_t* bufferSize); 26 virtual status_t Read(io_request* request); 27 28public: 29 SinglyLinkedListLink<PackageLeafNode> fListLink; 30}; 31 32 33typedef SinglyLinkedList<PackageLeafNode, 34 SinglyLinkedListMemberGetLink<PackageLeafNode, 35 &PackageLeafNode::fListLink> > PackageLeafNodeList; 36 37 38#endif // PACKAGE_LEAF_NODE_H 39