Line data Source code
1 1 : // Distributed under the MIT License. 2 : // See LICENSE.txt for details. 3 : 4 : /// \file 5 : /// Defines enum class Triggers::WhenToCheck. 6 : 7 : #pragma once 8 : 9 : #include <cstdint> 10 : #include <iosfwd> 11 : 12 : namespace Triggers { 13 : 14 : /// \ingroup EventsAndTriggersGroup 15 : /// \brief Frequency at which Events and Triggers are checked 16 1 : enum class WhenToCheck : uint8_t { 17 : AtIterations, /**< checked at iterations e.g. of an elliptic solve */ 18 : AtSlabs, /**< checked at time Slab boundaries */ 19 : AtSteps, /**< checked at time step boundaries */ 20 : AtCheckpoints, /**< checked at checkpoints */ 21 : }; 22 : 23 : /// Output operator for a WhenToCheck. 24 1 : std::ostream& operator<<(std::ostream& os, const WhenToCheck& when_to_check); 25 : } // namespace Triggers