libelemental  1.2.0
Public Member Functions
Elemental::Property< Float > Class Template Reference

A floating-point property of the chemical elements. More...

#include <element.hh>

Inheritance diagram for Elemental::Property< Float >:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 Property (const Message &name, const Message &format, const Message &description, const Message *sources[]) throw ()
bool is_scale_valid () const throw ()
 Returns whether the scale of values for this property is valid.
double get_scale_position (const Float &instance, bool logarithmic=false) const throw (std::domain_error, std::invalid_argument)
 Returns the position on a normalized 0.0 to 1.0 scale for a value.
double get_minimum () const throw (std::domain_error)
 Returns the least value of this property for any element.
double get_medium (bool logarithmic=false) const throw (std::domain_error)
 Returns the value of this property that has a scale position of 0.5.
double get_maximum () const throw (std::domain_error)
 Returns the greatest value of this property for any element.
virtual bool is_colorable () const throw ()
 Returns whether values of the property have color representations.

Detailed Description

template<>
class Elemental::Property< Float >

A floating-point property of the chemical elements.


Member Function Documentation

double Elemental::Property< Float >::get_maximum ( ) const throw (std::domain_error)

Returns the greatest value of this property for any element.

Exceptions:
std::domain_errorif the property does not have a valid scale.
double Elemental::Property< Float >::get_medium ( bool  logarithmic = false) const throw (std::domain_error)

Returns the value of this property that has a scale position of 0.5.

Parameters:
logarithmicWhether to compute the value on a logarithmic scale.
Exceptions:
std::domain_errorif the property does not have a valid scale.
double Elemental::Property< Float >::get_minimum ( ) const throw (std::domain_error)

Returns the least value of this property for any element.

Exceptions:
std::domain_errorif the property does not have a valid scale.
double Elemental::Property< Float >::get_scale_position ( const Float instance,
bool  logarithmic = false 
) const throw (std::domain_error, std::invalid_argument)

Returns the position on a normalized 0.0 to 1.0 scale for a value.

Parameters:
instanceA defined value for this property.
logarithmicWhether to compute the position on a logarithmic instead of linear scale.
Exceptions:
std::domain_errorif the property does not have a valid scale.
std::invalid_argumentif instance is not a defined value.
virtual bool Elemental::Property< Float >::is_colorable ( ) const throw () [virtual]

Returns whether values of the property have color representations.

If true, values may or may not be color_value_base descendants.

Reimplemented from Elemental::PropertyBase.

bool Elemental::Property< Float >::is_scale_valid ( ) const throw ()

Returns whether the scale of values for this property is valid.

The scale is valid if one or more elements has a defined value for this property and those values are not all equal.


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