TTTT Analysis  0.1
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
fv::BoundValue< T > Class Template Reference

A generic value owning only a function object. More...

#include <value.hpp>

Inheritance diagram for fv::BoundValue< T >:
Inheritance graph
[legend]
Collaboration diagram for fv::BoundValue< T >:
Collaboration graph
[legend]

Public Member Functions

 BoundValue (Function< T()> &f, const std::string alias="")
 
- Public Member Functions inherited from fv::DerivedValue< T >
 DerivedValue (const std::string &name, const std::string &alias="")
 
void log ()
 
T & get_value ()
 Calculate, if necessary, and return the value held by this object.
 
- Public Member Functions inherited from fv::Value< T >
 Value (const std::string &name, const std::string &alias="")
 
void enable_logging (const std::function< std::string(T)> &value_to_string=[](T){return "";})
 
void disable_logging ()
 

Protected Member Functions

void update_value ()
 Updates the internal value. More...
 

Protected Attributes

Function< T()> & f
 
- Protected Attributes inherited from fv::DerivedValue< T >
value
 
- Protected Attributes inherited from fv::Value< T >
std::function< std::string(T)> value_to_string
 

Detailed Description

template<typename T>
class fv::BoundValue< T >

A generic value owning only a function object.

All necessary values upon which this value depends must be bound to the function object.

Definition at line 1193 of file value.hpp.

Member Function Documentation

◆ update_value()

template<typename T >
void fv::BoundValue< T >::update_value ( )
inlineprotectedvirtual

Updates the internal value.

This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated Value objects, doing some calculation on them, and storing the result in value.

Implements fv::DerivedValue< T >.

Definition at line 1196 of file value.hpp.


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