00001 /* vim: set sw=4 sts=4 et foldmethod=syntax : */ 00002 00003 /* 00004 * Copyright (c) 2006, 2007 Ciaran McCreesh 00005 * 00006 * This file is part of the Paludis package manager. Paludis is free software; 00007 * you can redistribute it and/or modify it under the terms of the GNU General 00008 * Public License version 2, as published by the Free Software Foundation. 00009 * 00010 * Paludis is distributed in the hope that it will be useful, but WITHOUT ANY 00011 * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS 00012 * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more 00013 * details. 00014 * 00015 * You should have received a copy of the GNU General Public License along with 00016 * this program; if not, write to the Free Software Foundation, Inc., 59 Temple 00017 * Place, Suite 330, Boston, MA 02111-1307 USA 00018 */ 00019 00020 #ifndef PALUDIS_GUARD_SRC_COMMON_ARGS_LOG_LEVEL_ARG_HH 00021 #define PALUDIS_GUARD_SRC_COMMON_ARGS_LOG_LEVEL_ARG_HH 1 00022 00023 #include <paludis/args/args_option.hh> 00024 #include <paludis/util/log.hh> 00025 00026 /** \file 00027 * Declarations for the LogLevelArg class. 00028 * 00029 * \ingroup g_args 00030 * 00031 * \section Examples 00032 * 00033 * - None at this time. 00034 */ 00035 00036 namespace paludis 00037 { 00038 namespace args 00039 { 00040 /** 00041 * The '--log-level' standard command line argument. 00042 * 00043 * \since 0.26 00044 * \ingroup g_args 00045 * \nosubgrouping 00046 */ 00047 class PALUDIS_VISIBLE LogLevelArg : 00048 public EnumArg 00049 { 00050 public: 00051 ///\name Basic operations 00052 ///\{ 00053 00054 LogLevelArg(ArgsGroup * const, const std::string &, char); 00055 ~LogLevelArg(); 00056 00057 ///\} 00058 00059 /** 00060 * Our selected value, as a LogLevel. 00061 */ 00062 LogLevel option() const; 00063 }; 00064 00065 } 00066 } 00067 00068 #endif