#ifndef  CLIB_INTOIDS_PROTOS_H
#define  CLIB_INTOIDS_PROTOS_H 1

/******************************************************************************
 * $Header: Big:Programming/C/Intoids/Library/RCS/Intoids_protos.h,v 1.3 1997/02/12 16:48:51 AGMS Exp $
 *
 * C function prototypes for intoids.library users.
 *
 * Look in Intoids.c for documentation (autodocs generated from there), e-mail
 * addresses and credits.  See Libraries/Intoids.h for datatypes.
 *
 * Intoids.library - An Amiga runtime shared code library for efficiently
 * handling large and small integer values using pointer sized data fields.
 *
 * Modifications for storing smaller integers in 32 bit values and conversion
 * to an Amiga library copyright © 1996 by Alexander G. M. Smith.
 * Original long integer code copyright © 1988 Free Software Foundation.
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Library General Public
 * License as published by the Free Software Foundation; either
 * version 2 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Library General Public License for more details.
 *
 * You should have received a copy of the GNU Library General Public
 * License along with this library; if not, write to the Free
 * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 */

#ifndef  LIBRARIES_INTOIDS_H
#include <libraries/Intoids.h>
#endif

VOID FreeIntoid (Intoid RecycleMe);
STRPTR GetLastIntoidErrorMessage (VOID);
STRPTR GetIntoidsMessage (IntoidStringNumbers StringNumber);
LONG SignOfIntoid (Intoid IntegerA);
BOOL IntoidFitsInLong (Intoid IntegerA);
LONG IntoidToLong (Intoid IntegerA);
Intoid LongToIntoid (LONG LongA, Intoid RecycleMe);
LONG IntoidToAscii (Intoid IntegerA, STRPTR Buffer, LONG BufferLength, UWORD Base);
Intoid AsciiToIntoid (STRPTR Buffer, char **NextCharacterPntrPntr, UWORD Base, Intoid RecycleMe);
Intoid CopyIntoid (Intoid IntegerA, Intoid RecycleMe);
Intoid AddIntoids (Intoid IntegerA, Intoid IntegerB, Intoid RecycleMe);
Intoid NegateIntoid (Intoid IntegerA, Intoid RecycleMe);
Intoid AbsoluteIntoid (Intoid IntegerA, Intoid RecycleMe);
Intoid SubtractIntoids (Intoid IntegerA, Intoid IntegerB, Intoid RecycleMe);
LONG CompareIntoids (Intoid IntegerA, Intoid IntegerB);
LONG CompareIntoidMagnitudes (Intoid IntegerA, Intoid IntegerB);
Intoid MultiplyIntoids (Intoid IntegerA, Intoid IntegerB, Intoid RecycleMe);
Intoid DivideIntoids (Intoid IntegerA, Intoid IntegerB, Intoid RecycleMe);
ULONG PortableIntLengthViaCallBack (PortIntCallBackPntr CallBack, APTR UserPntr);
ULONG PortableIntLengthViaBuffer (APTR Buffer, ULONG BufferSize);
Intoid PortableIntToIntoidViaCallBack (PortIntCallBackPntr CallBack, APTR UserPntr, ULONG *AmountReadPntr, Intoid RecycleMe);
Intoid PortableIntToIntoidViaBuffer (APTR Buffer, ULONG BufferSize, ULONG *AmountReadPntr, Intoid RecycleMe);
BOOL IntoidToPortableIntViaCallBack (Intoid AnIntoid, ULONG *BytesWrittenPntr, PortIntCallBackPntr CallBack, APTR UserPntr);
BOOL IntoidToPortableIntViaBuffer (Intoid AnIntoid, ULONG *BytesWrittenPntr, APTR Buffer, ULONG BufferSize);
ULONG PortableIntSizeOfIntoid (Intoid AnIntoid);

#endif   /* CLIB_INTOIDS_PROTOS_H */
