fs_entry-fwd.hh

Go to the documentation of this file.
00001 /* vim: set sw=4 sts=4 et foldmethod=syntax : */
00002 
00003 /*
00004  * Copyright (c) 2005, 2006, 2007 Ciaran McCreesh
00005  * Copyright (c) 2006 Mark Loeser
00006  *
00007  * This file is part of the Paludis package manager. Paludis is free software;
00008  * you can redistribute it and/or modify it under the terms of the GNU General
00009  * Public License version 2, as published by the Free Software Foundation.
00010  *
00011  * Paludis is distributed in the hope that it will be useful, but WITHOUT ANY
00012  * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
00013  * FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
00014  * details.
00015  *
00016  * You should have received a copy of the GNU General Public License along with
00017  * this program; if not, write to the Free Software Foundation, Inc., 59 Temple
00018  * Place, Suite 330, Boston, MA  02111-1307  USA
00019  */
00020 
00021 #ifndef PALUDIS_GUARD_PALUDIS_UTIL_FS_ENTRY_FWD_HH
00022 #define PALUDIS_GUARD_PALUDIS_UTIL_FS_ENTRY_FWD_HH 1
00023 
00024 #include <iosfwd>
00025 #include <paludis/util/attributes.hh>
00026 #include <paludis/util/set-fwd.hh>
00027 #include <paludis/util/sequence-fwd.hh>
00028 
00029 /** \file
00030  * Forward declarations for paludis/util/fs_entry.hh .
00031  *
00032  * \ingroup g_fs
00033  */
00034 
00035 namespace paludis
00036 {
00037     class FSError;
00038 
00039     /**
00040      * File permissions used by FSEntry.
00041      *
00042      * \ingroup g_fs
00043      */
00044     enum FSPermission
00045     {
00046         fs_perm_read,       ///< read permission on file
00047         fs_perm_write,      ///< write permission on file
00048         fs_perm_execute     ///< execute permission on file
00049     };
00050 
00051     /**
00052      * User classes used by FSEntry.
00053      *
00054      * \ingroup g_fs
00055      */
00056     enum FSUserGroup
00057     {
00058         fs_ug_owner,         ///< owner permission
00059         fs_ug_group,        ///< group permission
00060         fs_ug_others        ///< others permission
00061     };
00062 
00063     class FSEntry;
00064 
00065     /**
00066      * An FSEntry can be written to an ostream.
00067      *
00068      * \ingroup g_fs
00069      */
00070     std::ostream & operator<< (std::ostream & s, const FSEntry & f) PALUDIS_VISIBLE;
00071 
00072     /**
00073      * A sequence of FSEntry instances.
00074      *
00075      * \ingroup g_fs
00076      */
00077     typedef Sequence<FSEntry> FSEntrySequence;
00078 
00079     /**
00080      * A set of FSEntry instances.
00081      *
00082      * \ingroup g_fs
00083      */
00084     typedef Set<FSEntry> FSEntrySet;
00085 }
00086 
00087 #endif

Generated on Mon Sep 21 10:36:08 2009 for paludis by  doxygen 1.5.4