#include <assert.h>
#include <stdarg.h>
#include <oski/userconst.h>
Go to the source code of this file.
Data Structures | |
| struct | oski_inmatpropset_t |
| Collected input matrix property settings. More... | |
Defines | |
| #define | INC_OSKI_INMATPROP_H |
| inmatprop.h has been included. | |
| #define | INMATPROP_UNDEFINED (int)(INMATPROP_NULL) |
| Property undefined. | |
| #define | MIN_INMATPROP MAT_GENERAL |
| Smallest value of the enumerated type, oski_inmatprop_t. | |
| #define | MAX_INMATPROP (INMATPROP_MAX-1) |
| Largest value of the enumerated type, oski_inmatprop_t. | |
Functions | |
| void | oski_ClearInMatPropSet (oski_inmatpropset_t *props) |
| Initialize property set with "unset" values. | |
| void | oski_CompleteDefaultInMatPropSet (oski_inmatpropset_t *props) |
| Complete unitialized properties with default values. | |
| int | oski_IsInMatPropSetConsistent (const oski_inmatpropset_t *props) |
| Checks an input matrix property set for consistency. | |
| void | oski_DisplayInMatPropSet (const oski_inmatpropset_t *props) |
| Display an input matrix's asserted properties (FOR DEBUGGING ONLY). | |
| int | oski_CollectInMatProps (oski_inmatpropset_t *props, int k,...) |
| Collect input matrix properties. | |
| int | oski_CollectInMatProps_va (oski_inmatpropset_t *props, int k, va_list ap) |
| Explicit variable argument version of oski_CollectInMatProps(). | |
| int | oski_CollectInMatProps_arr (oski_inmatpropset_t *props, int k, const oski_inmatprop_t *in_props) |
| Explicit property-array version of oski_CollectInMatProps(). | |
This module implements facilities that help collect, record, and examine the input matrix properties specified by the user when she creates the matrix handle.
Header file dependencies:
| #define INC_OSKI_INMATPROP_H |
inmatprop.h has been included.
| #define INMATPROP_UNDEFINED (int)(INMATPROP_NULL) |
Property undefined.
This macro defines a special value used to denote that an input matrix property has not yet been defined.
Referenced by oski_ClearInMatPropSet(), oski_CompleteDefaultInMatPropSet(), and UpdateProp().
| #define MAX_INMATPROP (INMATPROP_MAX-1) |
| #define MIN_INMATPROP MAT_GENERAL |
| void oski_ClearInMatPropSet | ( | oski_inmatpropset_t * | props | ) |
Initialize property set with "unset" values.
Initialize property set with "unset" values.
| [out] | props | Property data structure to initialize. |
References oski_inmatpropset_t::has_sorted_indices, oski_inmatpropset_t::has_unique_indices, oski_inmatpropset_t::has_unit_diag_implicit, oski_inmatpropset_t::index_base, INMATPROP_UNDEFINED, and oski_inmatpropset_t::pattern.
Referenced by oski_CollectInMatProps_arr(), and oski_CollectInMatProps_va().
| int oski_CollectInMatProps | ( | oski_inmatpropset_t * | props, | |
| int | k, | |||
| ... | ||||
| ) |
Collect input matrix properties.
Assuming the caller has a variable input argument list, this macro parses these arguments and collects them in an instance of oski_inmatpropset_t.
| [in] | k | The number of remaining arguments. |
| [out] | props | A pointer to an instance of oski_inmatpropset_t. Its values will be overwritten by the call to this macro. |
References oski_CollectInMatProps_va().
Referenced by UpdateProp().
| void oski_CompleteDefaultInMatPropSet | ( | oski_inmatpropset_t * | props | ) |
Complete unitialized properties with default values.
| [in,out] | props | Property data structure to complete. |
References oski_inmatpropset_t::has_sorted_indices, oski_inmatpropset_t::has_unique_indices, oski_inmatpropset_t::has_unit_diag_implicit, oski_inmatpropset_t::index_base, INMATPROP_UNDEFINED, MAT_GENERAL, oski_IsInMatPropSetConsistent(), and oski_inmatpropset_t::pattern.
Referenced by oski_CollectInMatProps_arr(), and oski_CollectInMatProps_va().
| void oski_DisplayInMatPropSet | ( | const oski_inmatpropset_t * | props | ) |
Display an input matrix's asserted properties (FOR DEBUGGING ONLY).
| [in] | props | Asserted input matrix property set. |
References oski_inmatpropset_t::has_sorted_indices, oski_inmatpropset_t::has_unique_indices, oski_inmatpropset_t::has_unit_diag_implicit, oski_inmatpropset_t::index_base, MAT_GENERAL, MAT_HERM_FULL, MAT_HERM_LOWER, MAT_HERM_UPPER, MAT_SYMM_FULL, MAT_SYMM_LOWER, MAT_SYMM_UPPER, MAT_TRI_LOWER, MAT_TRI_UPPER, oski_PrintDebugMessage(), and oski_inmatpropset_t::pattern.
Referenced by oski_CollectInMatProps_arr(), and oski_CollectInMatProps_va().
| int oski_IsInMatPropSetConsistent | ( | const oski_inmatpropset_t * | props | ) |
Checks an input matrix property set for consistency.
| [in] | props | Input matrix properties specified. |
References oski_inmatpropset_t::has_sorted_indices, oski_inmatpropset_t::has_unique_indices, oski_inmatpropset_t::has_unit_diag_implicit, oski_inmatpropset_t::index_base, IS_VAL_IN_RANGE, MAT_GENERAL, MAT_HERM_FULL, and oski_inmatpropset_t::pattern.
Referenced by oski_CompleteDefaultInMatPropSet().
1.5.9