Templated class which stores one entry for the CachedResult class. More...
#include <IpCachedResults.hpp>
Public Member Functions | |
bool | DependentsIdentical (const std::vector< const TaggedObject * > &dependents, const std::vector< Number > &scalar_dependents) const |
This method returns true if the dependencies provided to this function are identical to the ones stored with the DependentResult. | |
void | DebugPrint () const |
Print information about this DependentResults. | |
Constructor, Destructors | |
DependentResult (const T &result, const std::vector< const TaggedObject * > &dependents, const std::vector< Number > &scalar_dependents) | |
Constructor, given all information about the result. | |
~DependentResult () | |
Destructor. | |
Accessor method. | |
bool | IsStale () const |
This returns true, if the DependentResult is no longer valid. | |
void | Invalidate () |
Invalidates the cached result. | |
const T & | GetResult () const |
Returns the cached result. | |
Protected Member Functions | |
virtual void | RecieveNotification (NotifyType notify_type, const Subject *subject) |
This method is overloading the pure virtual method from the Observer base class. | |
Private Member Functions | |
Default Compiler Generated Methods | |
DependentResult () | |
Default Constructor. | |
DependentResult (const DependentResult &) | |
Copy Constructor. | |
void | operator= (const DependentResult &) |
Overloaded Equals Operator. | |
Private Attributes | |
bool | stale_ |
Flag indicating, if the cached result is still valid. | |
const T | result_ |
The value of the dependent results. | |
std::vector< TaggedObject::Tag > | dependent_tags_ |
Dependencies in form of TaggedObjects. | |
std::vector< Number > | scalar_dependents_ |
Dependencies in form a Numbers. |
Templated class which stores one entry for the CachedResult class.
It stores the result (of type T), together with its dependencies (vector of TaggedObjects and vector of Numbers). It also stores a priority.
Definition at line 257 of file IpCachedResults.hpp.
Ipopt::DependentResult< T >::DependentResult | ( | const T & | result, | |
const std::vector< const TaggedObject * > & | dependents, | |||
const std::vector< Number > & | scalar_dependents | |||
) | [inline] |
Constructor, given all information about the result.
Definition at line 350 of file IpCachedResults.hpp.
Ipopt::DependentResult< T >::~DependentResult | ( | ) | [inline] |
Destructor.
Definition at line 383 of file IpCachedResults.hpp.
Ipopt::DependentResult< T >::DependentResult | ( | ) | [private] |
Default Constructor.
Ipopt::DependentResult< T >::DependentResult | ( | const DependentResult< T > & | ) | [private] |
Copy Constructor.
bool Ipopt::DependentResult< T >::IsStale | ( | ) | const [inline] |
This returns true, if the DependentResult is no longer valid.
Definition at line 395 of file IpCachedResults.hpp.
void Ipopt::DependentResult< T >::Invalidate | ( | ) | [inline] |
Invalidates the cached result.
Definition at line 401 of file IpCachedResults.hpp.
const T & Ipopt::DependentResult< T >::GetResult | ( | ) | const [inline] |
Returns the cached result.
Definition at line 458 of file IpCachedResults.hpp.
bool Ipopt::DependentResult< T >::DependentsIdentical | ( | const std::vector< const TaggedObject * > & | dependents, | |
const std::vector< Number > & | scalar_dependents | |||
) | const [inline] |
This method returns true if the dependencies provided to this function are identical to the ones stored with the DependentResult.
Definition at line 421 of file IpCachedResults.hpp.
void Ipopt::DependentResult< T >::DebugPrint | ( | ) | const [inline] |
Print information about this DependentResults.
Definition at line 469 of file IpCachedResults.hpp.
void Ipopt::DependentResult< T >::RecieveNotification | ( | NotifyType | notify_type, | |
const Subject * | subject | |||
) | [inline, protected, virtual] |
This method is overloading the pure virtual method from the Observer base class.
This method is called when a Subject registered for this Observer sends a notification. In this particular case, if this method is called with notify_type==NT_Changed or NT_BeingDeleted, then this results is marked as stale.
Implements Ipopt::Observer.
Definition at line 407 of file IpCachedResults.hpp.
void Ipopt::DependentResult< T >::operator= | ( | const DependentResult< T > & | ) | [private] |
Overloaded Equals Operator.
Reimplemented from Ipopt::Observer.
bool Ipopt::DependentResult< T >::stale_ [private] |
Flag indicating, if the cached result is still valid.
A result becomes invalid, if the RecieveNotification method is called with NT_Changed
Definition at line 331 of file IpCachedResults.hpp.
const T Ipopt::DependentResult< T >::result_ [private] |
The value of the dependent results.
Definition at line 333 of file IpCachedResults.hpp.
std::vector<TaggedObject::Tag> Ipopt::DependentResult< T >::dependent_tags_ [private] |
Dependencies in form of TaggedObjects.
Definition at line 335 of file IpCachedResults.hpp.
std::vector<Number> Ipopt::DependentResult< T >::scalar_dependents_ [private] |
Dependencies in form a Numbers.
Definition at line 337 of file IpCachedResults.hpp.