/***************************************************************************
                            kde_KArchiveFile.h -  description
                             -------------------
    begin                : Wed Feb  6 15:12:26 2002
    copyright            : (C) 2000-2001 Lost Highway Ltd. All rights reserved.
    email                : Lost_Highway@tipitina.demon.co.uk
    generated by         : duke@tipitina on Wed Feb  6 15:12:26 2002, using kalyptus 0.9.
 ***************************************************************************/

/***************************************************************************
 *                                                                         *
 *   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.                       *
 *                                                                         *
 ***************************************************************************/

#ifndef KDE_KARCHIVEFILE
#define KDE_KARCHIVEFILE

#include <qtc/qtc_types.h>

#include <kdec/kde_types.h>

/**


 @short A file in an archive.

*/
kde_KArchiveFile * kde_new_KArchiveFile(kde_KArchive* archive, qt_QString * name, int access, int date, qt_QString * user, qt_QString * group, qt_QString * symlink, int pos, int size);
void kde_del_KArchiveFile( kde_KArchiveFile* p );

/** 
 Position of the data in the [uncompressed] archive.
     
*/
int kde_KArchiveFile_position(kde_KArchiveFile* instPointer);

/** 
 Size of the data.
     
*/
int kde_KArchiveFile_size(kde_KArchiveFile* instPointer);

/** 

*/
qt_QByteArray* kde_KArchiveFile_data(kde_KArchiveFile* instPointer);

/** 
 This method returns QIODevice (internal class: KLimitedIODevice)
 on top of the underlying QIODevice. This is obviously for reading only.
 Note that the ownership of the device is being transferred to the caller,
 who will have to delete it.
 The returned device auto-opens (in readonly mode), no need to open it.
     
*/
qt_QIODevice * kde_KArchiveFile_device(kde_KArchiveFile* instPointer);

/** 

*/
int kde_KArchiveFile_isFile(kde_KArchiveFile* instPointer);

#endif
