Flow123d
release_3.0.0-1193-g9220a69
|
Class for declaration of the input data that are floating point numbers. More...
#include <type_base.hh>
Public Member Functions | |
Double (double lower_bound=-std::numeric_limits< double >::max(), double upper_bound=std::numeric_limits< double >::max()) | |
Constructor. More... | |
TypeHash | content_hash () const override |
Implements TypeBase::content_hash . More... | |
bool | match (double value) const |
Returns true if the given integer value conforms to the Type::Double bounds. More... | |
string | type_name () const override |
Implements Type::TypeBase::type_name . More... | |
string | class_name () const override |
Override Type::TypeBase::class_name . More... | |
MakeInstanceReturnType | make_instance (std::vector< ParameterPair > vec=std::vector< ParameterPair >()) override |
Implements TypeBase::make_instance . More... | |
Public Member Functions inherited from Input::Type::TypeBase | |
virtual FinishStatus | finish_status () const |
Returns true if the type is fully specified and ready for read access. More... | |
virtual bool | is_finished () const |
virtual bool | is_closed () const |
Returns true if the type is closed. More... | |
string | desc () const |
Returns string with Type extensive documentation. More... | |
virtual bool | operator== (const TypeBase &other) const |
Comparison of types. More... | |
bool | operator!= (const TypeBase &other) const |
Comparison of types. More... | |
virtual | ~TypeBase () |
Destructor. More... | |
virtual FinishStatus | finish (FinishStatus finish_type=FinishStatus::regular_) |
Finish method. Finalize construction of "Lazy types": Record, Selection, Abstract and generic type. More... | |
std::string | hash_str () const |
Format the hash of this type. More... | |
virtual MakeInstanceReturnType | make_instance (ParameterVector vec=ParameterVector())=0 |
bool | is_root_of_generic_subtree () const |
Indicates if type is marked with flag root_of_generic_subtree_ . More... | |
Private Attributes | |
double | lower_bound_ |
Minimal value of Integer. More... | |
double | upper_bound_ |
Maximal value of Integer. More... | |
Friends | |
class | OutputBase |
Additional Inherited Members | |
Public Types inherited from Input::Type::TypeBase | |
typedef std::size_t | TypeHash |
Type returned by content_hash methods. More... | |
typedef std::string | json_string |
String stored in JSON format. More... | |
typedef std::map< std::string, json_string > | attribute_map |
Defines map of Input::Type attributes. More... | |
typedef std::pair< std::string, std::shared_ptr< TypeBase > > | ParameterPair |
Defines pairs of (name, Input::Type), that are used for replace of parameters in generic types. More... | |
typedef std::vector< ParameterPair > | ParameterVector |
Define vector of parameters passed to the overloaded make_instance method. More... | |
typedef std::map< std::string, TypeHash > | ParameterMap |
Defines map of used parameters. More... | |
typedef std::pair< std::shared_ptr< TypeBase >, ParameterMap > | MakeInstanceReturnType |
Return type of make_instance methods, contains instance of generic type and map of used parameters. More... | |
Static Public Member Functions inherited from Input::Type::TypeBase | |
static void | delete_unfinished_types () |
Finishes and marks all types registered in type repositories and unused in IST. More... | |
static std::string | hash_str (TypeHash hash) |
Format given hash for output. More... | |
Static Public Attributes inherited from Input::Type::TypeBase | |
static const TypeHash | none_hash = std::numeric_limits<TypeHash>::max() |
Protected Types inherited from Input::Type::TypeBase | |
typedef string | KeyHash |
The type of hash values used in associative array that translates key names to indices in Record and Selection. More... | |
Protected Member Functions inherited from Input::Type::TypeBase | |
TypeBase () | |
The default constructor. More... | |
TypeBase (const TypeBase &other) | |
Copy constructor. More... | |
void | add_attribute_ (std::string name, json_string val) |
Add attribute of given name to attribute map. More... | |
bool | validate_json (json_string str) const |
Check if str is valid JSON string. More... | |
json_string | print_parameter_map_to_json (ParameterMap parameter_map) const |
Create JSON output from parameter_map formatted as value of attribute. More... | |
json_string | print_parameter_map_keys_to_json (ParameterMap param_map) const |
void | set_generic_attributes (ParameterMap param_map) |
void | copy_attributes (attribute_map other_attributes) |
Static Protected Member Functions inherited from Input::Type::TypeBase | |
static KeyHash | key_hash (const string &str) |
Hash function. More... | |
static bool | is_valid_identifier (const string &key) |
Check that a key is valid identifier. More... | |
Protected Attributes inherited from Input::Type::TypeBase | |
std::shared_ptr< attribute_map > | attributes_ |
map of type attributes (e. g. input_type, name etc.) More... | |
bool | root_of_generic_subtree_ |
flag is true if type should be root of generic subtree More... | |
TypeHash | generic_type_hash_ |
hash string of generic type if type is derived, or empty string More... | |
ParameterMap | parameter_map_ |
map of parameters if type is part of generic subtree More... | |
Class for declaration of the input data that are floating point numbers.
The data are stored in an double
variable. You can specify bounds for the valid input data.
Definition at line 541 of file type_base.hh.
Input::Type::Double::Double | ( | double | lower_bound = -std::numeric_limits<double>::max() , |
double | upper_bound = std::numeric_limits<double>::max() |
||
) |
Constructor.
You can also specify minimum and maximum value.
Definition at line 475 of file type_base.cc.
|
overridevirtual |
Override Type::TypeBase::class_name
.
Reimplemented from Input::Type::TypeBase.
Definition at line 502 of file type_base.cc.
|
overridevirtual |
Implements TypeBase::content_hash
.
Hash is calculated by type name and bounds.
Implements Input::Type::TypeBase.
Definition at line 480 of file type_base.cc.
|
override |
Implements TypeBase::make_instance
.
Definition at line 507 of file type_base.cc.
bool Input::Type::Double::match | ( | double | value | ) | const |
Returns true if the given integer value conforms to the Type::Double bounds.
Definition at line 491 of file type_base.cc.
|
overridevirtual |
Implements Type::TypeBase::type_name
.
Name has form Double
.
Reimplemented from Input::Type::TypeBase.
Definition at line 497 of file type_base.cc.
|
friend |
Definition at line 542 of file type_base.hh.
|
private |
Minimal value of Integer.
Definition at line 575 of file type_base.hh.
|
private |
Maximal value of Integer.
Definition at line 576 of file type_base.hh.