chfl_property type¶
-
type
chfl_property¶ A
chfl_propertyholds data used in properties inchfl_frame,chfl_atomandchfl_residue.A property is associated with a name and can contain data of various types: logical, real, string or 3 dimensional array (
vector3d). The property kind is used to know which kind of data is stored in the property.Type fields: %init[subroutine] ::chfl_property%init()%kind[function] ::chfl_property%kind()%bool[function] ::chfl_property%bool()%double[function] ::chfl_property%double()%string[function] ::chfl_property%string()%vector3d[function] ::chfl_property%vector3d()%free[subroutine] ::chfl_property%free()
-
subroutine
chfl_property%init(value[, status])¶ This is a generic subroutine for initialization of a property. It allocate memory which must be released with
chfl_property%free().valuecan be a real number, a logical value, a string (string) or an 3-dimensional array of real numbers.Options: status [integer(chfl_status)] :: status code of the operation. If it is not CHFL_SUCCESS, usechfl_last_error()to learn more about the error.
-
function
chfl_property%kind([status])¶ Get the property kind, a number indicating which type of value this property holds. The possible kinds are represented by integer of the
chfl_property_kindkind.-
chfl_property_kind[integer]¶ Kind parameter for the integer values describing
chfl_propertykinds.
-
CHFL_PROPERTY_BOOL[integer(chfl_property_kind)]¶ Kind used for
logical(boolin C++) values.
-
CHFL_PROPERTY_DOUBLE[integer(chfl_property_kind)]¶ Kind used for
real(real64)(doublein C++) values.
-
CHFL_PROPERTY_STRING[integer(chfl_property_kind)]¶ Kind used for
string(std::stringin C++) values.
-
CHFL_PROPERTY_VECTOR3D[integer(chfl_property_kind)]¶ Kind used for
real(real64), dimension(3)(vector3din C++) values.
Return: integer (chfl_property_kind) Options: status [integer(chfl_status)] :: status code of the operation. If it is not CHFL_SUCCESS, usechfl_last_error()to learn more about the error.-
-
function
chfl_property%bool([status])¶ Get the logical value stored in this property. If the property do not store a logical value,
statuswill beCHFL_PROPERTY_ERROR.Return: logical Options: status [integer(chfl_status)] :: status code of the operation. If it is not CHFL_SUCCESS, usechfl_last_error()to learn more about the error.
-
function
chfl_property%double([status])¶ Get the real value stored in this property. If the property do not store a real value,
statuswill beCHFL_PROPERTY_ERROR.Return: real [real64] Options: status [integer(chfl_status)] :: status code of the operation. If it is not CHFL_SUCCESS, usechfl_last_error()to learn more about the error.
-
function
chfl_property%string([status])¶ Get the string stored in this property. If the property do not store a string,
statuswill beCHFL_PROPERTY_ERROR. If the string is longer thanCHFL_STRING_LENGTH, it will be truncated.Return: character (len=CHFL_STRING_LENGTH) Options: status [integer(chfl_status)] :: status code of the operation. If it is not CHFL_SUCCESS, usechfl_last_error()to learn more about the error.
-
function
chfl_property%vector3d([status])¶ Get the 3 dimensional array value stored in this property. If the property do not store an array,
statuswill beCHFL_PROPERTY_ERROR.Return: real [dimension(3), kind(real64)] Options: status [integer(chfl_status)] :: status code of the operation. If it is not CHFL_SUCCESS, usechfl_last_error()to learn more about the error.
-
subroutine
chfl_property%free()¶ Destroy a property, and free the associated memory