|
Zoltan2
|
00001 // 00002 // Zoltan2: A package of combinatorial algorithms for scientific computing 00003 // Copyright 2012 Sandia Corporation 00004 // 00005 // Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation, 00006 // the U.S. Government retains certain rights in this software. 00007 // 00008 // Redistribution and use in source and binary forms, with or without 00009 // modification, are permitted provided that the following conditions are 00010 // met: 00011 // 00012 // 1. Redistributions of source code must retain the above copyright 00013 // notice, this list of conditions and the following disclaimer. 00014 // 00015 // 2. Redistributions in binary form must reproduce the above copyright 00016 // notice, this list of conditions and the following disclaimer in the 00017 // documentation and/or other materials provided with the distribution. 00018 // 00019 // 3. Neither the name of the Corporation nor the names of the 00020 // contributors may be used to endorse or promote products derived from 00021 // this software without specific prior written permission. 00022 // 00023 // THIS SOFTWARE IS PROVIDED BY SANDIA CORPORATION "AS IS" AND ANY 00024 // EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 00025 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 00026 // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SANDIA CORPORATION OR THE 00027 // CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 00028 // EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 00029 // PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 00030 // PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 00031 // LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 00032 // NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 00033 // SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 00034 // 00035 // Questions? Contact Karen Devine (kddevin@sandia.gov) 00036 // Erik Boman (egboman@sandia.gov) 00037 // Siva Rajamanickam (srajama@sandia.gov) 00038 // 00039 00044 #ifndef _ZOLTAN2_PARAMETERS_HPP_ 00045 #define _ZOLTAN2_PARAMETERS_HPP_ 00046 00047 #include <Zoltan2_Standards.hpp> 00048 00049 namespace Zoltan2{ 00050 00052 // Parameter-related namespace methods 00053 00054 void createAllParameters(Teuchos::ParameterList &pList); 00055 00056 void createValidatorList( 00057 const Teuchos::ParameterList &plIn, Teuchos::ParameterList &plOut); 00058 00059 void printListDocumentation( const Teuchos::ParameterList &pl, std::ostream &os, 00060 std::string listNames=std::string("")); 00061 00063 // Parameter-related enumerated types. 00064 // 00065 // If you change these enumerators, change their documentation 00066 // in data/parameters.xml. 00067 // 00068 00081 enum AssertionLevel { 00082 NO_ASSERTIONS, 00083 BASIC_ASSERTION, 00084 COMPLEX_ASSERTION, 00085 DEBUG_MODE_ASSERTION, 00086 NUM_ASSERTION_LEVELS 00087 }; 00088 00098 enum MessageOutputLevel { 00099 NO_STATUS, 00100 BASIC_STATUS, 00101 DETAILED_STATUS, 00102 VERBOSE_DETAILED_STATUS, 00103 NUM_STATUS_OUTPUT_LEVELS 00104 }; 00105 00118 enum TimerType { 00119 NO_TIMERS, 00120 MACRO_TIMERS, 00121 MICRO_TIMERS, 00122 BOTH_TIMERS, 00123 TEST_TIMERS, 00124 NUM_TIMING_OPTIONS 00125 }; 00126 00130 enum OSType { 00131 COUT_STREAM, 00132 CERR_STREAM, 00133 NULL_STREAM, 00134 NUM_OUTPUT_STREAMS 00135 }; 00136 00139 enum multiCriteriaNorm{ 00140 normMinimizeTotalWeight, 00141 normBalanceTotalMaximum, 00142 normMinimizeMaximumWeight, 00143 normNumNorms 00144 }; 00145 00146 } // end of namespace Zoltan2 00147 00148 #endif
1.7.6.1