added concrete implementations of putc(), getc(), getchar() and gets()
[tangerine.git] / workbench / libs / partition / partition_support.h
blob8812d2dff51ce63b9d173cb44a857131a3f7d289
1 #ifndef PARTITION_SUPPORT_H
2 #define PARTITION_SUPPORT_H
4 /*
5 Copyright © 1995-2001, The AROS Development Team. All rights reserved.
6 $Id$
8 */
10 #include <exec/types.h>
11 #include <libraries/partition.h>
12 #include <utility/tagitem.h>
14 #include "partition_intern.h"
16 struct PTFunctionTable {
17 ULONG type; /* Partition Table Type */
18 STRPTR name;
19 LONG (*checkPartitionTable) (struct Library *, struct PartitionHandle *);
20 LONG (*openPartitionTable) (struct Library *, struct PartitionHandle *);
21 void (*closePartitionTable) (struct Library *, struct PartitionHandle *);
22 LONG (*writePartitionTable) (struct Library *, struct PartitionHandle *);
23 LONG (*createPartitionTable) (struct Library *, struct PartitionHandle *);
24 struct PartitionHandle *(*addPartition)(struct Library *, struct PartitionHandle *, struct TagItem *);
25 void (*deletePartition) (struct Library *, struct PartitionHandle *);
26 LONG (*getPartitionTableAttrs)(struct Library *, struct PartitionHandle *, struct TagItem *);
27 LONG (*setPartitionTableAttrs)(struct Library *, struct PartitionHandle *, struct TagItem *);
28 LONG (*getPartitionAttrs) (struct Library *, struct PartitionHandle *, struct TagItem *);
29 LONG (*setPartitionAttrs) (struct Library *, struct PartitionHandle *, struct TagItem *);
30 struct PartitionAttribute * (*queryPartitionTableAttrs)(struct Library *);
31 struct PartitionAttribute * (*queryPartitionAttrs) (struct Library *);
32 ULONG (*destroyPartitionTable) (struct Library *, struct PartitionHandle *);
35 extern struct PTFunctionTable *PartitionSupport[];
37 LONG PartitionGetGeometry(struct Library *, struct IOExtTD *, struct DriveGeometry *);
38 void PartitionNsdCheck(struct Library *, struct PartitionHandle *);
39 ULONG getStartBlock(struct PartitionHandle *);
40 LONG readBlock(struct Library *, struct PartitionHandle *, ULONG, void *);
41 LONG PartitionWriteBlock(struct Library *, struct PartitionHandle *, ULONG, void *);
42 struct TagItem *findTagItem(ULONG tag, struct TagItem *);
43 void fillMem(BYTE *, LONG, BYTE);
45 #define getGeometry PartitionGetGeometry
46 #define writeBlock PartitionWriteBlock
48 #endif /* PARTITION_SUPPORT_H */