|
Bertini 2 d882924 (2026-10-06 19:56 UTC)
Numerical algebraic geometry library (C++ core)
|
Observer that collects the precision at every tracking event into a vector. More...
#include <observers.hpp>
Public Member Functions | |
| const std::vector< unsigned > & | Precisions () const |
| Get the recorded sequence of precisions. | |
| virtual | ~PrecisionAccumulator ()=default |
| std::type_index | ObservedKind () const override |
| The type this observer expects to observe. | |
| virtual std::vector< std::type_index > | SubscribedEventTypes () const |
| Declares which event types this observer wants to receive. | |
| virtual std::vector< std::type_index > | SubscribedEventTypes () const |
| Declares which event types this observer wants to receive. | |
Observer that collects the precision at every tracking event into a vector.
|
virtualdefault |
|
inlineoverridevirtualinherited |
The type this observer expects to observe.
Used by Observable::AddObserver to reject attaching an observer to an incompatible observable (which would otherwise silently never fire). The default is typeid(void), a wildcard meaning "attach me anywhere"; Observer<ObservedT> reports typeid(ObservedT).
Reimplemented from bertini::AnyObserver.
|
inline |
Get the recorded sequence of precisions.
|
inlinevirtualinherited |
Declares which event types this observer wants to receive.
Return a non-empty vector to opt into type-indexed dispatch: the observable will only call Observe() for events whose dynamic type exactly matches one of the returned type_index values. Return an empty vector (the default) to receive every event — this is the correct choice for observers that handle many or all event types, and is the automatic behavior for Python-defined observers.
Reimplemented in bertini::TypedObserver< Derived, ObservedT, ConcreteEvents >, bertini::TypedObserver< AMPPathAccumulator< TrackerT, SuccessfulStep >, TrackerT, SuccessfulStep< TrackerTraits< TrackerT >::EventEmitterType > >, bertini::TypedObserver< FirstPrecisionRecorder< TrackerT >, TrackerT, Initializing< TrackerTraits< TrackerT >::EventEmitterType, TrackerTraits< TrackerT >::BaseComplexT >, TrackingStarted< TrackerTraits< TrackerT >::EventEmitterType >, PrecisionChanged< TrackerTraits< TrackerT >::EventEmitterType > >, bertini::TypedObserver< MinMaxPrecisionRecorder< TrackerT >, TrackerT, Initializing< TrackerTraits< TrackerT >::EventEmitterType, TrackerTraits< TrackerT >::BaseComplexT >, TrackingStarted< TrackerTraits< TrackerT >::EventEmitterType >, PrecisionChanged< TrackerTraits< TrackerT >::EventEmitterType > >, bertini::TypedObserver< PathPrecisionRecorder< TrackerT >, TrackerT, TrackingStarted< TrackerTraits< TrackerT >::EventEmitterType >, PrecisionChanged< TrackerTraits< TrackerT >::EventEmitterType > >, bertini::TypedObserver< PathPrecisionRecorder< TrackerType >, TrackerType, TrackingStarted< TrackerTraits< TrackerType >::EventEmitterType >, PrecisionChanged< TrackerTraits< TrackerType >::EventEmitterType > >, and bertini::TypedObserver< StepFailScreenPrinter< TrackerT >, TrackerT, FailedStep< TrackerTraits< TrackerT >::EventEmitterType > >.
|
inlinevirtualinherited |
Declares which event types this observer wants to receive.
Return a non-empty vector to opt into type-indexed dispatch: the observable will only call Observe() for events whose dynamic type exactly matches one of the returned type_index values. Return an empty vector (the default) to receive every event — this is the correct choice for observers that handle many or all event types, and is the automatic behavior for Python-defined observers.