#ifndef CLIB_XFDMASTER_PROTOS_H
#define CLIB_XFDMASTER_PROTOS_H

/*
**	$VER: xfdmaster_protos.h 37.1 (2.3.96)
**
**	C prototypes. For use with 32 bit integers only.
**
**	Copyright © 1994-96 by Georg Hörmann.
**	All Rights Reserved.
*/

#include <libraries/xfdmaster.h>

struct xfdBufferInfo *xfdAllocBufferInfo(void);
void xfdFreeBufferInfo(struct xfdBufferInfo *);
struct xfdSegmentInfo *xfdAllocSegmentInfo(void);
void xfdFreeSegmentInfo(struct xfdSegmentInfo *);
BOOL xfdRecogBuffer(struct xfdBufferInfo *);
BOOL xfdDecrunchBuffer(struct xfdBufferInfo *);
BOOL xfdRecogSegment(struct xfdSegmentInfo *);
BOOL xfdDecrunchSegment(struct xfdSegmentInfo *);
STRPTR xfdGetErrorText(UWORD);
BOOL xfdTestHunkStructure(APTR, ULONG);

/* New for V34 */
UWORD xfdTestHunkStructureNew(APTR, ULONG);
UWORD xfdRelocate(APTR, ULONG, ULONG *, UWORD);

/* New for V36 */
UWORD xfdTestHunkStructureFlags(APTR, ULONG, UWORD);
UWORD xfdStripHunks(APTR, ULONG, ULONG *, UWORD);
APTR xfdAllocObject(ULONG);
void xfdFreeObject(APTR);
BOOL xfdRecogLinker(struct xfdLinkerInfo *);
BOOL xfdUnlink(struct xfdLinkerInfo *);

/* New for V37 */
UWORD xfdScanData(APTR, ULONG, ULONG *,UWORD, struct xfdScanHook *);
void xfdFreeScanList(struct xfdScanNode *);
ULONG xfdObjectType(APTR);
struct xfdScanHook *xfdInitScanHook(BOOL (*)(), APTR);

#endif /* CLIB_XFDMASTER_PROTOS_H */
