#ifndef DEFINES_XPRZMODEM_PROTOS_H
#define DEFINES_XPRZMODEM_PROTOS_H

/*
    *** Automatically generated from 'lib.conf'. Edits will be lost. ***
    Copyright © 1995-2008, The AROS Development Team. All rights reserved.
*/

/*
    Desc: Defines for xprzmodem
*/

#include <aros/libcall.h>
#include <exec/types.h>
#include <aros/preprocessor/variadic/cast2iptr.hpp>


#define __XProtocolCleanup_WB(__XProtocolBase, __arg1) \
        AROS_LC1(long, XProtocolCleanup, \
                  AROS_LCA(struct XPR_IO*,(__arg1),A0), \
        struct Library *, (__XProtocolBase), 5, XProtocol)

#define XProtocolCleanup(arg1) \
    __XProtocolCleanup_WB(XProtocolBase, (arg1))

#define __XProtocolSetup_WB(__XProtocolBase, __arg1) \
        AROS_LC1(long, XProtocolSetup, \
                  AROS_LCA(struct XPR_IO *,(__arg1),A0), \
        struct Library *, (__XProtocolBase), 6, XProtocol)

#define XProtocolSetup(arg1) \
    __XProtocolSetup_WB(XProtocolBase, (arg1))

#define __XProtocolSend_WB(__XProtocolBase, __arg1) \
        AROS_LC1(long, XProtocolSend, \
                  AROS_LCA(struct XPR_IO *,(__arg1),A0), \
        struct Library *, (__XProtocolBase), 7, XProtocol)

#define XProtocolSend(arg1) \
    __XProtocolSend_WB(XProtocolBase, (arg1))

#define __XProtocolReceive_WB(__XProtocolBase, __arg1) \
        AROS_LC1(long, XProtocolReceive, \
                  AROS_LCA(struct XPR_IO *,(__arg1),A0), \
        struct Library *, (__XProtocolBase), 8, XProtocol)

#define XProtocolReceive(arg1) \
    __XProtocolReceive_WB(XProtocolBase, (arg1))

#define __XProtocolHostMon_WB(__XProtocolBase, __arg1, __arg2, __arg3, __arg4) \
        AROS_LC4(long, XProtocolHostMon, \
                  AROS_LCA(struct XPR_IO *,(__arg1),A0), \
                  AROS_LCA(char *,(__arg2),A1), \
                  AROS_LCA(long,(__arg3),D0), \
                  AROS_LCA(long,(__arg4),D1), \
        struct Library *, (__XProtocolBase), 9, XProtocol)

#define XProtocolHostMon(arg1, arg2, arg3, arg4) \
    __XProtocolHostMon_WB(XProtocolBase, (arg1), (arg2), (arg3), (arg4))

#define __XProtocolUserMon_WB(__XProtocolBase, __arg1, __arg2, __arg3, __arg4) \
        AROS_LC4(long, XProtocolUserMon, \
                  AROS_LCA(struct XPR_IO *,(__arg1),A0), \
                  AROS_LCA(char *,(__arg2),A1), \
                  AROS_LCA(long,(__arg3),D0), \
                  AROS_LCA(long,(__arg4),D1), \
        struct Library *, (__XProtocolBase), 10, XProtocol)

#define XProtocolUserMon(arg1, arg2, arg3, arg4) \
    __XProtocolUserMon_WB(XProtocolBase, (arg1), (arg2), (arg3), (arg4))

#endif /* DEFINES_XPRZMODEM_PROTOS_H*/
