• Skip to content
  • Skip to link menu
KDE 3.5 API Reference
  • KDE API Reference
  • API Reference
  • Sitemap
  • Contact Us
 

kio

KAr Class Reference

KAr is a class for reading archives in ar format. More...

#include <kar.h>

Inheritance diagram for KAr:

Inheritance graph
[legend]

List of all members.


Public Member Functions

virtual bool doneWriting (uint size)
QString fileName ()
 KAr (QIODevice *dev)
 KAr (const QString &filename)
virtual bool prepareWriting (const QString &name, const QString &user, const QString &group, uint size)
virtual bool writeDir (const QString &name, const QString &user, const QString &group)
virtual ~KAr ()

Protected Member Functions

virtual bool closeArchive ()
virtual bool openArchive (int mode)
virtual void virtual_hook (int id, void *data)

Detailed Description

KAr is a class for reading archives in ar format.

Writing is not supported. A class for reading ar archives.

Author:
Laurence Anderson <l.d.anderson@warwick.ac.uk>
Since:
3.1

Definition at line 38 of file kar.h.


Constructor & Destructor Documentation

KAr::KAr ( const QString &  filename  ) 

Creates an instance that operates on the given filename.

Parameters:
filename is a local path (e.g. "/home/holger/myfile.ar")

Definition at line 42 of file kar.cpp.

KAr::KAr ( QIODevice *  dev  ) 

Creates an instance that operates on the given device.

The device can be compressed (KFilterDev) or not (QFile, etc.).

Parameters:
dev the device to read from

Definition at line 51 of file kar.cpp.

KAr::~KAr (  )  [virtual]

If the ar file is still opened, then it will be closed automatically by the destructor.

Definition at line 58 of file kar.cpp.


Member Function Documentation

bool KAr::closeArchive (  )  [protected, virtual]

Closes the archive.

Called by close.

Implements KArchive.

Definition at line 163 of file kar.cpp.

virtual bool KAr::doneWriting ( uint  size  )  [inline, virtual]

Call doneWriting after writing the data.

Parameters:
size the size of the file
See also:
prepareWriting()

Implements KArchive.

Definition at line 77 of file kar.h.

QString KAr::fileName (  )  [inline]

The name of the ar file, as passed to the constructor.

Returns:
the filename. Null if you used the QIODevice constructor

Definition at line 65 of file kar.h.

bool KAr::openArchive ( int  mode  )  [protected, virtual]

Opens the archive for reading.

Parses the directory listing of the archive and creates the KArchiveDirectory/KArchiveFile entries.

Implements KArchive.

Definition at line 69 of file kar.cpp.

virtual bool KAr::prepareWriting ( const QString &  name,
const QString &  user,
const QString &  group,
uint  size 
) [inline, virtual]

Here's another way of writing a file into an archive: Call prepareWriting, then call writeData() as many times as wanted then call doneWriting( totalSize ).

For tar.gz files, you need to know the size before hand, since it is needed in the header. For zip files, size isn't used.

Parameters:
name the name of the file
user the user that owns the file
group the group that owns the file
size the size of the file
Todo:
TODO(BIC): make this a thin non-virtual wrapper around prepareWriting(name,user,group,size,perm,atime,mtime,ctime) or eliminate it.

Implements KArchive.

Definition at line 71 of file kar.h.

void KAr::virtual_hook ( int  id,
void *  data 
) [protected, virtual]

Reimplemented from KArchive.

Definition at line 169 of file kar.cpp.

virtual bool KAr::writeDir ( const QString &  name,
const QString &  user,
const QString &  group 
) [inline, virtual]

If an archive is opened for writing then you can add new directories using this function.

KArchive won't write one directory twice.

Parameters:
name the name of the directory
user the user that owns the directory
group the group that owns the directory
Todo:
TODO(BIC): make this a thin wrapper around writeDir(name,user,group,perm,atime,mtime,ctime) or eliminate it

Implements KArchive.

Definition at line 83 of file kar.h.


The documentation for this class was generated from the following files:
  • kar.h
  • kar.cpp

kio

Skip menu "kio"
  • Main Page
  • Modules
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members
  • Related Pages

API Reference

Skip menu "API Reference"
  • dcop
  • DNSSD
  • interfaces
  • Kate
  • kconf_update
  • KDECore
  • KDED
  • kdefx
  • KDEsu
  • kdeui
  • KDocTools
  • KHTML
  • KImgIO
  • KInit
  • kio
  • kioslave
  • KJS
  • KNewStuff
  • KParts
  • KUtils
Generated for API Reference by doxygen 1.5.9
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal