17575abbcSIngo Weinhold/*
27575abbcSIngo Weinhold * Copyright 2009,2011, Haiku, Inc.
37575abbcSIngo Weinhold * Distributed under the terms of the MIT License.
47575abbcSIngo Weinhold */
57575abbcSIngo Weinhold#ifndef _PACKAGE__HPKG__V1__PACKAGE_DATA_READER_H_
67575abbcSIngo Weinhold#define _PACKAGE__HPKG__V1__PACKAGE_DATA_READER_H_
77575abbcSIngo Weinhold
87575abbcSIngo Weinhold
97575abbcSIngo Weinhold#include <package/hpkg/DataReader.h>
107575abbcSIngo Weinhold
117575abbcSIngo Weinhold
127575abbcSIngo Weinholdnamespace BPackageKit {
137575abbcSIngo Weinhold
147575abbcSIngo Weinholdnamespace BHPKG {
157575abbcSIngo Weinhold
167575abbcSIngo Weinhold
170ee16518SIngo Weinholdclass BBufferPool;
187575abbcSIngo Weinhold
197575abbcSIngo Weinhold
207575abbcSIngo Weinholdnamespace V1 {
217575abbcSIngo Weinhold
227575abbcSIngo Weinhold
237575abbcSIngo Weinholdclass BPackageData;
247575abbcSIngo Weinhold
257575abbcSIngo Weinhold
267575abbcSIngo Weinholdclass BPackageDataReaderFactory {
277575abbcSIngo Weinholdpublic:
287575abbcSIngo Weinhold								BPackageDataReaderFactory(
290ee16518SIngo Weinhold									BBufferPool* bufferPool);
307575abbcSIngo Weinhold
317575abbcSIngo Weinhold			status_t			CreatePackageDataReader(BDataReader* dataReader,
327575abbcSIngo Weinhold									const BPackageData& data,
332c32402dSIngo Weinhold									BAbstractBufferedDataReader*& _reader);
347575abbcSIngo Weinhold
357575abbcSIngo Weinholdprivate:
360ee16518SIngo Weinhold			BBufferPool*		fBufferPool;
377575abbcSIngo Weinhold};
387575abbcSIngo Weinhold
397575abbcSIngo Weinhold
407575abbcSIngo Weinhold}	// namespace V1
417575abbcSIngo Weinhold
427575abbcSIngo Weinhold}	// namespace BHPKG
437575abbcSIngo Weinhold
447575abbcSIngo Weinhold}	// namespace BPackageKit
457575abbcSIngo Weinhold
467575abbcSIngo Weinhold
477575abbcSIngo Weinhold#endif	// _PACKAGE__HPKG__V1__PACKAGE_DATA_READER_H_
48