vfs: check userland buffers before reading them.
[haiku.git] / headers / private / storage / DiskScannerAddOn.h
blobfa537024d93a3cb5b07db1b39bc96e4df7241969
1 //----------------------------------------------------------------------
2 // This software is part of the OpenBeOS distribution and is covered
3 // by the MIT License.
4 //---------------------------------------------------------------------
5 #ifndef _DISK_SCANNER_ADD_ON
6 #define _DISK_SCANNER_ADD_ON
8 #include <SupportDefs.h>
10 class BDiskScannerParameterEditor;
11 class BPartition;
12 class BSession;
13 class BString;
15 // BDiskScannerPartitionAddOn
16 class BDiskScannerPartitionAddOn {
17 public:
18 BDiskScannerPartitionAddOn();
19 virtual ~BDiskScannerPartitionAddOn();
21 virtual const char *ShortName() = 0;
22 virtual const char *LongName() = 0;
24 virtual BDiskScannerParameterEditor *CreateEditor(const BSession *session,
25 const char *parameters) = 0;
27 private:
28 virtual void _ReservedDiskScannerPartitionAddOn1();
29 virtual void _ReservedDiskScannerPartitionAddOn2();
30 virtual void _ReservedDiskScannerPartitionAddOn3();
31 virtual void _ReservedDiskScannerPartitionAddOn4();
32 virtual void _ReservedDiskScannerPartitionAddOn5();
34 uint32 _reserved[8];
37 // BDiskScannerFSAddOn
38 class BDiskScannerFSAddOn {
39 public:
40 BDiskScannerFSAddOn();
41 virtual ~BDiskScannerFSAddOn();
43 virtual const char *ShortName() = 0;
44 virtual const char *LongName() = 0;
46 virtual BDiskScannerParameterEditor *CreateEditor(
47 const BPartition *partition, const char *parameters) = 0;
49 private:
50 virtual void _ReservedDiskScannerFSAddOn1();
51 virtual void _ReservedDiskScannerFSAddOn2();
52 virtual void _ReservedDiskScannerFSAddOn3();
53 virtual void _ReservedDiskScannerFSAddOn4();
54 virtual void _ReservedDiskScannerFSAddOn5();
56 uint32 _reserved[8];
59 // BDiskScannerParameterEditor
60 class BDiskScannerParameterEditor {
61 public:
62 BDiskScannerParameterEditor();
63 virtual ~BDiskScannerParameterEditor();
65 virtual BView *View();
66 virtual bool EditingDone();
67 virtual status_t GetParameters(BString *parameters);
69 private:
70 virtual void _ReservedDiskScannerParameterEditor1();
71 virtual void _ReservedDiskScannerParameterEditor2();
72 virtual void _ReservedDiskScannerParameterEditor3();
73 virtual void _ReservedDiskScannerParameterEditor4();
74 virtual void _ReservedDiskScannerParameterEditor5();
76 uint32 _reserved[8];
79 // partition add-ons
80 extern "C" BDiskScannerPartitionAddOn *create_ds_partition_add_on();
82 // fs add-ons
83 extern "C" BDiskScannerFSAddOn *create_ds_fs_add_on();
85 #endif // _DISK_SCANNER_ADD_ON