# kio Library API Documentation

Overview | Class Hierarchy | Classes | Classes (annotated) | Members | Namespaces | Source Files

# KDirSize Class Reference

Computes a directory size (similar to "du", but doesn't give the same results since we simply sum up the dir and file sizes, whereas du speaks disk blocks). More...

`#include <kdirsize.h>`

Inheritance diagram for KDirSize:

[legend]
Collaboration diagram for KDirSize:

[legend]
List of all members.

## Public Member Functions

KIO::filesize_t | totalSize () const
KIO::filesize_t | totalFiles () const
KIO::filesize_t | totalSubdirs () const

## Static Public Member Functions

static KDirSize * | dirSizeJob (const KURL &directory)
static KDirSize * | dirSizeJob (const KFileItemList &lstItems)
static KIO::filesize_t | dirSize (const KURL &directory)

## Protected Slots

virtual void | slotResult (KIO::Job *job)
void | slotEntries (KIO::Job *, const KIO::UDSEntryList &)
void | processList ()

## Protected Member Functions

| KDirSize (const KURL &directory)
| KDirSize (const KFileItemList &lstItems)
void | setSync ()
void | startNextJob (const KURL &url)
virtual void | virtual_hook (int id, void *data)

## Detailed Description

Computes a directory size (similar to "du", but doesn't give the same results since we simply sum up the dir and file sizes, whereas du speaks disk blocks).

Definition at line 30 of file kdirsize.h.

## Member Function Documentation

KIO::filesize_t KDirSize::totalSize | ( |  | ) | const`[inline]`

Returns:
  the size we found

Definition at line 42 of file kdirsize.h.

Referenced by dirSize().

KIO::filesize_t KDirSize::totalFiles | ( |  | ) | const`[inline]`

Returns:
  the total number of files (counting symlinks to files, sockets and character devices as files) in this directory and all sub-directories

Since:
  3.3

Definition at line 49 of file kdirsize.h.

KIO::filesize_t KDirSize::totalSubdirs | ( |  | ) | const`[inline]`

Returns:
  the total number of sub-directories found (not including the directory the search started from and treating symlinks to directories as directories)

Since:
  3.3

Definition at line 57 of file kdirsize.h.

KDirSize * KDirSize::dirSizeJob | ( | const KURL & | directory | ) | `[static]`

| Asynchronous method. Connect to the result signal. This one lists a single directory. Definition at line 126 of file kdirsize.cpp. Referenced by dirSize().

KDirSize * KDirSize::dirSizeJob | ( | const KFileItemList & | lstItems | ) | `[static]`

| Asynchronous method. Connect to the result signal. This one lists the items from `lstItems`. The reason we asks for items instead of just urls, is so that we directly know if the item is a file or a directory, and in case of a file, we already have its size. Definition at line 132 of file kdirsize.cpp.

KIO::filesize_t KDirSize::dirSize | ( | const KURL & | directory | ) | `[static]`

| Synchronous method - you get the result as soon as the call returns. Definition at line 138 of file kdirsize.cpp. References dirSize(), dirSizeJob(), setSync(), and totalSize(). Referenced by dirSize().

void KDirSize::slotResult | ( | KIO::Job * | job | ) | `[protected, virtual, slot]`

Called whenever a subjob finishes.

Default implementation checks for errors and propagates to parent job, then calls removeSubjob. Override if you don't want subjobs errors to be propagated.

Parameters:

  | job | the subjob

See also:
  result()

Reimplemented from KIO::Job.

Definition at line 147 of file kdirsize.cpp.

References QPtrList::count(), endl(), QPtrList::isEmpty(), kdDebug(), QPtrList::remove(), and KIO::Job::slotResult().

The documentation for this class was generated from the following files:

- kdirsize.h
- kdirsize.cpp

This file is part of the documentation for kio Library Version 3.4.1.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Sat Jun 11 20:24:31 2005 by doxygen 1.4.1 written by Dimitri van Heesch, © 1997-2003