PHATVOL Struct Reference
[Volume Support]

Collaboration diagram for PHATVOL:

Collaboration graph
[legend]

Detailed Description

Volume info structure.

Definition at line 184 of file phatvol.h.


Data Fields

int vol_type
 Type of volume.
u_long vol_numfree
 Number of free clusters.
u_long vol_nxtfree
 Possibly next free cluster.
PHATSECTBUF vol_buf [1]
 Sector buffer of this volume.
HANDLE vol_fsmutex
 Mutual exclusion filesystem access semaphore.
HANDLE vol_iomutex
 Mutual exclusion I/O semaphore.
u_int vol_sectsz
 Bytes per sector.
u_int vol_clustsz
 Sectors per cluster.
u_long vol_tabsz
 Number of sectors per allocation table.
u_long vol_tab_sect [2]
 First sector of each allocation table.
u_int vol_rootsz
 Number of sectors used by the root directory.
u_long vol_root_sect
 First sector of the root directory.
u_long vol_root_clust
 First cluster of the root directory.
u_long vol_last_clust
 Last data cluster number.
u_long vol_data_sect
 First data sector.

Field Documentation

int PHATVOL::vol_type

Type of volume.

Either 12, 16 or 32.

Definition at line 189 of file phatvol.h.

Referenced by AllocFirstCluster(), IsFixedRootDir(), PhatDirOpen(), PhatDirReleaseChain(), PhatFilePosSet(), PhatFileRead(), PhatFileWrite(), and PhatVolMount().

u_long PHATVOL::vol_numfree

Number of free clusters.

Definition at line 191 of file phatvol.h.

Referenced by AllocFirstCluster(), Phat12ReleaseChain(), Phat16ReleaseChain(), Phat32ReleaseChain(), PhatFileWrite(), and PhatVolMount().

u_long PHATVOL::vol_nxtfree

Possibly next free cluster.

Definition at line 193 of file phatvol.h.

PHATSECTBUF PHATVOL::vol_buf[1]

Sector buffer of this volume.

Definition at line 200 of file phatvol.h.

Referenced by Phat12GetClusterLink(), Phat12SetClusterLink(), Phat16GetClusterLink(), Phat16SetClusterLink(), Phat32GetClusterLink(), Phat32SetClusterLink(), PhatDirEntryUpdate(), PhatFileRead(), PhatFileWrite(), PhatSectorFlush(), PhatSectorLoad(), PhatVolMount(), and PhatVolUnmount().

HANDLE PHATVOL::vol_fsmutex

Mutual exclusion filesystem access semaphore.

Definition at line 203 of file phatvol.h.

Referenced by PhatVolMount().

HANDLE PHATVOL::vol_iomutex

Mutual exclusion I/O semaphore.

Definition at line 205 of file phatvol.h.

Referenced by PhatSectorLoad(), and PhatVolMount().

u_int PHATVOL::vol_sectsz

Bytes per sector.

Definition at line 207 of file phatvol.h.

Referenced by Phat12GetClusterLink(), Phat12SetClusterLink(), PhatDirCreate(), PhatFilePosSet(), PhatFileRead(), PhatFileWrite(), and PhatVolMount().

u_int PHATVOL::vol_clustsz

Sectors per cluster.

Definition at line 209 of file phatvol.h.

Referenced by PhatClusterSector(), PhatDirCreate(), PhatFilePosSet(), PhatFileRead(), PhatFileWrite(), and PhatVolMount().

u_long PHATVOL::vol_tabsz

Number of sectors per allocation table.

Definition at line 212 of file phatvol.h.

Referenced by PhatVolMount().

u_long PHATVOL::vol_tab_sect[2]

First sector of each allocation table.

We maintain upto two allocation tables.

Definition at line 217 of file phatvol.h.

Referenced by Phat12SetClusterLink(), Phat16SetClusterLink(), Phat32SetClusterLink(), and PhatVolMount().

u_int PHATVOL::vol_rootsz

Number of sectors used by the root directory.

Definition at line 220 of file phatvol.h.

Referenced by PhatFilePosSet(), PhatFileRead(), PhatFileWrite(), and PhatVolMount().

u_long PHATVOL::vol_root_sect

First sector of the root directory.

Definition at line 222 of file phatvol.h.

Referenced by PhatClusterSector(), and PhatVolMount().

u_long PHATVOL::vol_root_clust

First cluster of the root directory.

Definition at line 224 of file phatvol.h.

Referenced by PhatDirCreate(), PhatDirOpen(), and PhatVolMount().

u_long PHATVOL::vol_last_clust

Last data cluster number.

The first cluster number is 2, so this value is equal to the total number of data clusters plus 2.

Definition at line 231 of file phatvol.h.

Referenced by PhatVolMount().

u_long PHATVOL::vol_data_sect

First data sector.

The first sector following the root directory.

Definition at line 236 of file phatvol.h.

Referenced by PhatClusterSector(), and PhatVolMount().


The documentation for this struct was generated from the following file:
© 2000-2007 by egnite Software GmbH - visit http://www.ethernut.de/