//unfortunately, have to wrap the docs in a C comment for doxygen
// vim:tw=74:formatoptions-=l
/**
\page filesystem QuakeForge Directory Trees

The QuakeForge directory trees resemble that of Quake, but have been made
more suitable for multi-user systems. The directory trees have been split
into "shared data" and "user data".

The shared data tree is intended to be in a read-only location that is
accessible by permitted users of the system. The contents of the shared
data will usually be the game data as extracted from the Quake or mission
pack CDs, or mod data downloaded from the internet.

The user data tree is intended to be private to the individual user and will
usually be in the user's home directory. The user data tree usually starts
out empty as it is created by QuakeForge when needed, but user configs,
saved games, recorded demos, screen-shots, quakeworld downloads etc will be
written to the user data tree. Also, QuakeC/Ruamoko file access is
generally restricted to the user data tree. Files in the user data tree
take precedence over files in the shared data tree.

Except for the system configuration file, the user configuration file, and
the directory configuration file, QuakeForge will not read any file outside
of the shared or user data trees.

The shared data tree is specified by the \c fs_sharepath cvar. The default
value varies depending on the system, but will generally be either \c
/usr/local/share/games/quakeforge or \c /usr/share/games/quakeforge on
Linux or other UNIX like systems, and \c . (the current directory) on
Windows systems.

The user data tree is specified by the \c fs_userpath cvar. The default
value varies depending on the system, but will generally be \c
~/.quakeforge or \c ~/.local/share/quakeforge on Linux or other UNIX like
systems, and \c . (the current directory) on Windows systems.

The user data tree and the shared data tree being in the same place is
quite valid, and QuakeForge is smart enough to not search twice for files
when the trees are in the same place.

Once QuakeForge is running, \c fs_sharepath and \c fs_userpath cannot be
altered. However, they may be altered by setting them in the system
configuration file, the user configuration file, or on the command line
(see \ref cvar_rom and \ref cmdline).

The internal layout of the shared and user data trees are, by default, the
same as Quake (an \c id1 directory tree, plus other mod directories), but
with the addition of a \c QF directory which holds QuakeForge specific data
(such as the menus). The structure of the data trees and, more importantly,
the relationship between the mod directories can be configured with the
directory configuration file (see \ref dirconf).

*/
