SERiF v0.0.1a
Stellar Evolution and Rotation in Four Dimensions
Loading...
Searching...
No Matches
serif::utils::dependencies::ComputationUpdate< InputsT, ValueT > Struct Template Reference

#include <incremental_computation.hpp>

Collaboration diagram for serif::utils::dependencies::ComputationUpdate< InputsT, ValueT >:
[legend]

Public Member Functions

template<typename KeyT>
requires detail::contains_key_v<KeyT, InputsT>
bool changed () const
 A new or forced calculation refreshes every input, even when values compare equal.
 

Public Attributes

const ValueT * previous {nullptr}
 
std::array< bool, detail::KeyListSize< InputsT >::value > changed_inputs {}
 
bool rebuild {false}
 

Member Function Documentation

◆ changed()

template<IsKeyList InputsT, typename ValueT>
template<typename KeyT>
requires detail::contains_key_v<KeyT, InputsT>
bool serif::utils::dependencies::ComputationUpdate< InputsT, ValueT >::changed ( ) const
inlinenodiscard

A new or forced calculation refreshes every input, even when values compare equal.

Member Data Documentation

◆ changed_inputs

template<IsKeyList InputsT, typename ValueT>
std::array<bool, detail::KeyListSize<InputsT>::value> serif::utils::dependencies::ComputationUpdate< InputsT, ValueT >::changed_inputs {}

◆ previous

template<IsKeyList InputsT, typename ValueT>
const ValueT* serif::utils::dependencies::ComputationUpdate< InputsT, ValueT >::previous {nullptr}

◆ rebuild

template<IsKeyList InputsT, typename ValueT>
bool serif::utils::dependencies::ComputationUpdate< InputsT, ValueT >::rebuild {false}

The documentation for this struct was generated from the following file: