/*
**      $VER: spobjects_protos.h 5.1 (8.8.96)
**
**      prototypes for superplay.library's SPObjects V3+
**
**      (C) Copyright 1994-96 Andreas R. Kleinert
**      All Rights Reserved.
*/

#ifndef CLIB_SPOBJECTS_PROTOS_H
#define CLIB_SPOBJECTS_PROTOS_H

#ifndef SPOBJECTS_SPOBJECTS_H
#include <spobjects/spobjects.h>
#endif /* SPOBJECTS_SPOBJECTS_H */

APTR SPO_AllocHandle(       APTR future);
ULONG SPO_FreeHandle(       APTR handle);
ULONG SPO_Read(             APTR handle);
ULONG SPO_StartReplay(      APTR handle);
ULONG SPO_Write(            APTR handle, struct SPObjectBase *SourceBase, APTR source_handle);
ULONG SPO_StopReplay(       APTR handle);
ULONG SPO_FreeResources(    APTR handle);
ULONG SPO_SetAccessMode(    APTR handle,
                            ULONG mode);
ULONG SPO_SetWriteSubType(  APTR handle,
                            ULONG subtype,
                            APTR future);
ULONG SPO_SetWriteName(     APTR handle,
                            UBYTE *filename,
                            APTR future);
ULONG SPO_SetReadName(      APTR handle,
                            UBYTE *filename,
                            APTR future);
ULONG SPO_FileInfoRequest(  APTR handle,
                            struct Window *window,
                            ULONG future);
ULONG SPO_CheckFileType(    BPTR filehandle,
                            UBYTE *filename,
                            APTR future);
ULONG SPO_SetReqIOWindow(   APTR handle,
                            struct Window *window);
ULONG SPO_ContinueReplay(   APTR handle);
ULONG SPO_FastForward(      APTR handle);
ULONG SPO_FastBackward(     APTR handle);
ULONG SPO_GetSampleBuffer(  APTR handle, UBYTE **buffer, ULONG *buffersize);
ULONG SPO_GetSampleInfo(    APTR handle, ULONG *samplesPerSec, ULONG *volume, APTR future);
ULONG SPO_GetSampleList(    APTR handle, struct SPO_SampleList **samplelist);
ULONG SPO_SetSampleList(    APTR handle, struct SPO_SampleList *samplelist);

#endif /* CLIB_SPOBJECTS_PROTOS_H */
