#include <assert.h>
#include <oski/config.h>
#include <oski/common.h>
#include <oski/matrix.h>
Functions | |
oski_matstruct_t * | oski_CreateMatStruct (void) |
Allocates space for a new matrix structure, and initializes its fields. | |
static void | DumpTrace (oski_trace_t trace, const oski_matcommon_t *props) |
Dump the contents of a matrix handle's trace (DEBUGGING ONLY). | |
void | oski_DestroyMatStruct (oski_matstruct_t *A) |
Free a matrix structure (but not its child data structures). |
The interfaces specifies the creation of handles from concrete array representations (e.g., CSR & CSC format).
oski_matstruct_t* oski_CreateMatStruct | ( | void | ) |
Allocates space for a new matrix structure, and initializes its fields.
Returns a newly allocated matrix structure.
References oski_matcommon_t::has_unit_diag, oski_matstruct_t::input_mat, INVALID_ID, oski_matcommon_t::is_herm, oski_matstruct_t::is_shared, oski_matcommon_t::is_symm, oski_matcommon_t::is_tri_lower, oski_matcommon_t::is_tri_upper, oski_matcommon_t::num_cols, oski_matcommon_t::num_nonzeros, oski_matcommon_t::num_rows, oski_CreateTimer(), oski_CreateTrace(), oski_InitStructHint(), oski_Malloc, oski_matcommon_t::pattern, oski_matstruct_t::props, oski_matspecific_t::repr, oski_matstruct_t::structhints, TIME_NOT_AVAIL, oski_matstruct_t::time_stream, oski_matstruct_t::timer, oski_matstruct_t::trace, oski_matstruct_t::tuned_mat, oski_matstruct_t::tuned_xforms, oski_matspecific_t::type_id, and oski_matstruct_t::workhints.
void oski_DestroyMatStruct | ( | oski_matstruct_t * | A | ) |
Free a matrix structure (but not its child data structures).
[in,out] | A | Matrix object/handle. |
References DumpTrace(), oski_matstruct_t::input_mat, INVALID_MAT, oski_DestroyTimer(), oski_DestroyTrace(), oski_Free, OSKI_MATTYPEID_METHOD, oski_PrintDebugMessage(), oski_ResetStructHint(), oski_matstruct_t::props, oski_matspecific_t::repr, oski_matstruct_t::structhints, oski_matstruct_t::timer, oski_matstruct_t::trace, oski_matstruct_t::tuned_mat, oski_matstruct_t::tuned_xforms, oski_matspecific_t::type_id, and oski_matstruct_t::workhints.