xref: /haiku/src/system/kernel/fs/vfs_boot.h (revision 9e8dc2a9bbbe768acdfd224a6a4af01918bb4ce0)
1 /*
2  * Copyright 2007, Ingo Weinhold, bonefish@cs.tu-berlin.de.
3  * Distributed under the terms of the MIT License.
4  */
5 #ifndef _VFS_BOOT_H
6 #define _VFS_BOOT_H
7 
8 
9 #include <disk_device_manager/KDiskDevice.h>
10 #include <util/KMessage.h>
11 
12 
13 class BootMethod {
14 public:
15 	BootMethod(const KMessage& bootVolume, int32 method);
16 	virtual ~BootMethod();
17 
18 	virtual status_t Init();
19 
20 	virtual bool IsBootDevice(KDiskDevice* device, bool strict) = 0;
21 	virtual bool IsBootPartition(KPartition* partition, bool& foundForSure) = 0;
22 	virtual void SortPartitions(KPartition** partitions, int32 count) = 0;
23 
24 protected:
25 	const KMessage&	fBootVolume;
26 	int32			fMethod;
27 };
28 
29 
30 #endif	// _VFS_BOOT_H
31