| SIMLIB/C++
    3.07
    | 
abstract base for continuous blocks with single output suitable for expression-tree building and evaluation More...
#include <simlib.h>


| Public Member Functions | |
| aContiBlock () | |
| virtual void | _Eval () | 
| evaluate block (with loop detection)  More... | |
| virtual double | Value ()=0 | 
| get block output value this method should be defined in classes derived from aContiBlock More... | |
|  Public Member Functions inherited from simlib3::SimObject | |
| bool | TestAndSetFlag (bool new_value, unsigned n) | 
| internal method for flag manipulation is used for algebraic loop checking in continuous blocks  More... | |
| SimObject () | |
| constructor  More... | |
| virtual | ~SimObject () | 
| virtual destructor  More... | |
| void * | operator new (size_t size) | 
| allocate object, set _flags  More... | |
| void | operator delete (void *ptr) | 
| deallocate object  More... | |
| void * | operator new[] (size_t size)=delete | 
| void | operator delete[] (void *ptr)=delete | 
| bool | isAllocated () const | 
| virtual std::string | Name () const | 
| get object name  More... | |
| bool | HasName () const | 
| void | SetName (const std::string &name) | 
| assign the name  More... | |
| virtual void | Output () const | 
| print object to default output  More... | |
| Protected Attributes | |
| bool | isEvaluated | 
|  Protected Attributes inherited from simlib3::SimObject | |
| unsigned | _flags | 
| bool flags for internal use (TODO bitfield?)  More... | |
| Private Member Functions | |
| virtual void | Eval () | 
| evaluate without loop detection  More... | |
| Additional Inherited Members | |
|  Public Types inherited from simlib3::SimObject | |
| enum | _Flags { _CLEAR_ALL_FLAGS = 0, _ALLOCATED_FLAG = 1<<0, _EVAL_FLAG = 1<<1, _HAS_NAME_FLAG = 1<<2 } | 
abstract base for continuous blocks with single output suitable for expression-tree building and evaluation
| 
 | virtual | 
evaluate block (with loop detection)
evaluation with algebraic loop detection
Reimplemented in simlib3::Rline, simlib3::Frict, simlib3::Qntzr, simlib3::Insv, simlib3::Lim, simlib3::_XYZpart, simlib3::_XYpart, simlib3::_ScalarProduct3D, simlib3::_ScalarProduct2D, simlib3::_Abs3D, simlib3::_Abs2D, simlib3::_UMinus, simlib3::_Div, simlib3::_Mul, simlib3::_Sub, and simlib3::_Add.
Definition at line 48 of file continuous.cc.
References simlib3::AlgLoopDetected, Eval(), isEvaluated, and simlib3::SIMLIB_error().
Referenced by simlib3::Status::Value().
| 
 | inlineprivatevirtual | 
evaluate without loop detection
Reimplemented in simlib3::Relay, simlib3::Blash, simlib3::Hyst, simlib3::Status, simlib3::Integrator, simlib3::_UMinus, simlib3::_Div, simlib3::_Mul, simlib3::_Sub, and simlib3::_Add.
Definition at line 834 of file simlib.h.
Referenced by _Eval().
| 
 | pure virtual | 
get block output value 
 this method should be defined in classes derived from aContiBlock 
Implemented in simlib3::Newton, simlib3::RegulaFalsi, simlib3::Bisect, simlib3::Iterations, simlib3::Rline, simlib3::Frict, simlib3::Qntzr, simlib3::Insv, simlib3::Lim, simlib3::Function2, simlib3::Function1, simlib3::Status, simlib3::Integrator, simlib3::Expression, simlib3::Parameter, simlib3::Variable, simlib3::Constant, simlib3::_XYZpart, simlib3::_XYpart, simlib3::_ScalarProduct3D, simlib3::_ScalarProduct2D, simlib3::_Abs3D, simlib3::_Abs2D, simlib3::_Time, simlib3::_UMinus, simlib3::_Div, simlib3::Integrator3D::special_input, simlib3::Integrator2D::special_input, simlib3::_Mul, simlib3::_Sub, simlib3::_Add, simlib3::ZDelay, and simlib3::Delay.
Referenced by Sample(), and simlib3::Input::Value().
| 
 | protected | 
 1.8.13
 1.8.13