From 69360f6cce07b1d806d3ba35763eea9263500a95 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Steffan=20S=C3=B8lvsten?= Date: Sun, 1 Oct 2023 17:01:52 -0400 Subject: [PATCH] Move detailed description into execution policy class Doxygen did not want to add the Execution Policy chapter into the Adiar module since it only had the class (which had its own page). So, the information with context was lost. --- src/adiar/exec_policy.h | 26 ++++++++++++-------------- 1 file changed, 12 insertions(+), 14 deletions(-) diff --git a/src/adiar/exec_policy.h b/src/adiar/exec_policy.h index 9842bdfd3..5b0702e7f 100644 --- a/src/adiar/exec_policy.h +++ b/src/adiar/exec_policy.h @@ -9,22 +9,23 @@ namespace adiar /// \{ ////////////////////////////////////////////////////////////////////////////// - /// \name Execution Policy + /// \brief Settings to dictate the execution of Adiar's algorithms. /// /// Adiar's algorithms work very differently from other BDD implementations. /// Hence, it makes use of multiple novel techniques to make it competitive - /// across the entire spectrum of BDD shapes and sizes. + /// across the entire spectrum of BDD shapes and sizes. These can be turned + /// on/off or tweaked by changing these settings. /// - /// An instance of the `exec_policy` class may be parsed to each algorithm to - /// change which or whether one of these techniques should be used throughout - /// execution. Most likely, you can entirely ignore this and just use the - /// default settings. + /// Most likely, you would want to apply all techniques (in a safe way) and so + /// you do not need to think about changing any of these. /// - /// \{ - - ////////////////////////////////////////////////////////////////////////////// - /// \brief Collection of enum values to change the execution of Adiar's - /// algorithms. + /// For example, you can fix the `bdd_exists` to only use *internal* memory + /// and the *Nested Sweeping* framework as follows: + /// ```cpp + /// bdd_exists(exec_policy::access::Internal & exec_policy::quant::Nested, + /// f, + /// vars.rbegin(), vars.rend()); + /// ``` ////////////////////////////////////////////////////////////////////////////// class exec_policy { @@ -279,9 +280,6 @@ namespace adiar /// \} ////////////////////////////////////////////////////////////////////////////// - /// \} - ////////////////////////////////////////////////////////////////////////////// - ////////////////////////////////////////////////////////////////////////////// /// \brief Operator overload to support lifting enum values to `exec_policy`. //////////////////////////////////////////////////////////////////////////////