xref: /haiku/src/bin/mkfs/FsCreator.h (revision 7557d13189fe38749b3f8c8e6fdd4327e2049740)
1*7557d131SStephan Aßmus /*
2*7557d131SStephan Aßmus  * Copyright 2008 Haiku Inc. All rights reserved.
3*7557d131SStephan Aßmus  * Distributed under the terms of the MIT License.
4*7557d131SStephan Aßmus  *
5*7557d131SStephan Aßmus  * Authors:
6*7557d131SStephan Aßmus  *		Marco Minutoli, mminutoli@gmail.com
7*7557d131SStephan Aßmus  */
8*7557d131SStephan Aßmus #ifndef _FSCREATOR_H_
9*7557d131SStephan Aßmus #define _FSCREATOR_H_
10*7557d131SStephan Aßmus 
11*7557d131SStephan Aßmus #include <String.h>
12*7557d131SStephan Aßmus 
13*7557d131SStephan Aßmus #include <DiskDevice.h>
14*7557d131SStephan Aßmus #include <DiskDeviceRoster.h>
15*7557d131SStephan Aßmus 
16*7557d131SStephan Aßmus class FsCreator {
17*7557d131SStephan Aßmus public:
18*7557d131SStephan Aßmus 	FsCreator(const char* devPath, BString& type, BString& volumeName,
19*7557d131SStephan Aßmus 		const char* fsOpt, bool verbose);
20*7557d131SStephan Aßmus 
21*7557d131SStephan Aßmus 	bool Run();
22*7557d131SStephan Aßmus private:
23*7557d131SStephan Aßmus 	inline BString _ReadLine();
24*7557d131SStephan Aßmus 
25*7557d131SStephan Aßmus 	BString fType;
26*7557d131SStephan Aßmus 	BString fDevicePath;
27*7557d131SStephan Aßmus 	BString& fVolumeName;
28*7557d131SStephan Aßmus 	const char* fFsOptions;
29*7557d131SStephan Aßmus 	BDiskDevice fDevice;
30*7557d131SStephan Aßmus 	BPartition* fPartition;
31*7557d131SStephan Aßmus 	const bool fVerbose;
32*7557d131SStephan Aßmus };
33*7557d131SStephan Aßmus 
34*7557d131SStephan Aßmus #endif // _FSCREATOR_H_
35