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