/***************************************************************************
                            qt_QList.h -  description
                             -------------------
    begin                : Tue Jun 12 18:35:37 2001
    copyright            : (C) 2000-2001 by Richard Dale
    email                : Richard_Dale@tipitina.demon.co.uk
    generated by         : duke@tipitina on Tue Jun 12 18:35:37 2001, using kdoc $.
 ***************************************************************************/

/***************************************************************************
 *                                                                         *
 *   This program is free software; you can redistribute it and/or modify  *
 *   it under the terms of the GNU General Public License as published by  *
 *   the Free Software Foundation; either version 2 of the License, or     *
 *   (at your option) any later version.                                   *
 *                                                                         *
 ***************************************************************************/

#ifndef QT_QLIST
#define QT_QLIST

#include "qtc_types.h"


/** 
* $Id: qt_QList.h,v 1.1 2001/10/22 22:06:45 rdale Exp $
*
* Definition of QList template/macro class
*
* Created : 920701
*
* Copyright (C) 1992-2000 Trolltech AS.  All rights reserved.
*
* This file is part of the tools module of the Qt GUI Toolkit.
*
* This file may be distributed under the terms of the Q Public License
* as defined by Trolltech AS of Norway and appearing in the file
* LICENSE.QPL included in the packaging of this file.
*
* This file may be distributed and/or modified under the terms of the
* GNU General Public License version 2 as published by the Free Software
* Foundation and appearing in the file LICENSE.GPL included in the
* packaging of this file.
*
* Licensees holding valid Qt Enterprise Edition or Qt Professional Edition
* licenses may use this file in accordance with the Qt Commercial License
* Agreement provided with the Software.
*
* This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
* WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
*
* See http://www.trolltech.com/pricing.html or email sales@trolltech.com for
*   information about Qt Commercial License Agreements.
* See http://www.trolltech.com/qpl/ for QPL licensing information.
* See http://www.trolltech.com/gpl/ for GPL licensing information.
*
* Contact info@trolltech.com if any conditions of this licensing are
* not clear to you.
*
********************************************************************
*/
qt_QList * qt_new_QList();
void qt_del_QList( qt_QList* p );
unsigned int qt_QList_count(qt_QList* instPointer);
int qt_QList_isEmpty(qt_QList* instPointer);
int qt_QList_insert(qt_QList* instPointer,unsigned int i, int* d);
void qt_QList_inSort(qt_QList* instPointer,int* d);
void qt_QList_prepend(qt_QList* instPointer,int* d);
void qt_QList_append(qt_QList* instPointer,int* d);
int qt_QList_remove(qt_QList* instPointer,unsigned int i);
int qt_QList_remove1(qt_QList* instPointer);
int qt_QList_remove2(qt_QList* instPointer,int* d);
int qt_QList_removeRef(qt_QList* instPointer,int* d);
void qt_QList_removeNode(qt_QList* instPointer,qt_QLNode* n);
int qt_QList_removeFirst(qt_QList* instPointer);
int qt_QList_removeLast(qt_QList* instPointer);
int* qt_QList_take(qt_QList* instPointer,unsigned int i);
int* qt_QList_take1(qt_QList* instPointer);
int* qt_QList_takeNode(qt_QList* instPointer,qt_QLNode* n);
void qt_QList_clear(qt_QList* instPointer);
void qt_QList_sort(qt_QList* instPointer);
int qt_QList_find(qt_QList* instPointer,int* d);
int qt_QList_findNext(qt_QList* instPointer,int* d);
int qt_QList_findRef(qt_QList* instPointer,int* d);
int qt_QList_findNextRef(qt_QList* instPointer,int* d);
unsigned int qt_QList_contains(qt_QList* instPointer,int* d);
unsigned int qt_QList_containsRef(qt_QList* instPointer,int* d);
int* qt_QList_at(qt_QList* instPointer,unsigned int i);
int qt_QList_at1(qt_QList* instPointer);
int* qt_QList_current(qt_QList* instPointer);
qt_QLNode* qt_QList_currentNode(qt_QList* instPointer);
int* qt_QList_getFirst(qt_QList* instPointer);
int* qt_QList_getLast(qt_QList* instPointer);
int* qt_QList_first(qt_QList* instPointer);
int* qt_QList_last(qt_QList* instPointer);
int* qt_QList_next(qt_QList* instPointer);
int* qt_QList_prev(qt_QList* instPointer);
void qt_QList_toVector(qt_QList* instPointer,qt_QGVector* vec);

#endif
