Line data Source code
1 : // Author(s): Wieger Wesselink 2 : // Copyright: see the accompanying file COPYING or copy at 3 : // https://github.com/mCRL2org/mCRL2/blob/master/COPYING 4 : // 5 : // Distributed under the Boost Software License, Version 1.0. 6 : // (See accompanying file LICENSE_1_0.txt or copy at 7 : // http://www.boost.org/LICENSE_1_0.txt) 8 : // 9 : /// \file mcrl2/pbes/tools/pbesstategraph_options.h 10 : /// \brief add your file description here. 11 : 12 : #ifndef MCRL2_PBES_TOOLS_PBESSTATEGRAPH_OPTIONS_H 13 : #define MCRL2_PBES_TOOLS_PBESSTATEGRAPH_OPTIONS_H 14 : 15 : #include "mcrl2/data/rewrite_strategy.h" 16 : #include "mcrl2/utilities/execution_timer.h" 17 : 18 : namespace mcrl2 { 19 : 20 : namespace pbes_system { 21 : 22 : struct pbesstategraph_options 23 : { 24 : data::rewrite_strategy rewrite_strategy; 25 : bool simplify; 26 : bool use_global_variant; 27 : bool print_influence_graph; 28 : bool cache_marking_updates; 29 : int marking_algorithm; 30 : bool use_alternative_lcfp_criterion; 31 : bool use_alternative_gcfp_relation; 32 : bool use_alternative_gcfp_consistency; 33 : utilities::execution_timer* timer; // if it is non-zero, it will be used to display timing information 34 : 35 27 : pbesstategraph_options() 36 27 : : rewrite_strategy(data::jitty), 37 27 : simplify(true), 38 27 : use_global_variant(false), 39 27 : print_influence_graph(false), 40 27 : cache_marking_updates(false), 41 27 : marking_algorithm(0), 42 27 : use_alternative_lcfp_criterion(false), 43 27 : use_alternative_gcfp_relation(false), 44 27 : use_alternative_gcfp_consistency(false), 45 27 : timer(nullptr) 46 27 : {} 47 : 48 284 : bool timing_enabled() const 49 : { 50 284 : return timer != nullptr; 51 : } 52 : }; 53 : 54 : } // namespace pbes_system 55 : 56 : } // namespace mcrl2 57 : 58 : #endif // MCRL2_PBES_TOOLS_PBESSTATEGRAPH_OPTIONS_H