xref: /haiku/src/add-ons/kernel/file_systems/udf/Partition.h (revision a1b5a724edc0e6fd4608de040e041f96dad62db4)
1c7557032STyler Dauwalder //----------------------------------------------------------------------
2c7557032STyler Dauwalder //  This software is part of the OpenBeOS distribution and is covered
3c7557032STyler Dauwalder //  by the OpenBeOS license.
4c7557032STyler Dauwalder //
5c7557032STyler Dauwalder //  Copyright (c) 2003 Tyler Dauwalder, tyler@dauwalder.net
6c7557032STyler Dauwalder //---------------------------------------------------------------------
7c7557032STyler Dauwalder #ifndef _UDF_PARTITION_H
8c7557032STyler Dauwalder #define _UDF_PARTITION_H
9c7557032STyler Dauwalder 
10c7557032STyler Dauwalder /*! \file Partition.h
11c7557032STyler Dauwalder */
12c7557032STyler Dauwalder 
13c7557032STyler Dauwalder #include <SupportDefs.h>
14c7557032STyler Dauwalder 
15c7557032STyler Dauwalder namespace Udf {
16c7557032STyler Dauwalder 
17c7557032STyler Dauwalder /*! \brief Abstract base class for various UDF partition types.
18c7557032STyler Dauwalder */
19c7557032STyler Dauwalder class Partition {
20c7557032STyler Dauwalder public:
21c7557032STyler Dauwalder 	virtual ~Partition() {}
22*a1b5a724STyler Dauwalder 	virtual status_t MapBlock(uint32 logicalBlock, off_t &physicalBlock) = 0;
23*a1b5a724STyler Dauwalder //	virtual status_t MapExtent(uint32 logicalBlock, uint32 logicalLength,
24*a1b5a724STyler Dauwalder //	                           uint32 &physicalBlock, uint32 &physicalLength) = 0;
25c7557032STyler Dauwalder };
26c7557032STyler Dauwalder 
27c7557032STyler Dauwalder };	// namespace Udf
28c7557032STyler Dauwalder 
29c7557032STyler Dauwalder #endif	// _UDF_PARTITION_H
30