libflame  revision_anchor
Functions
FLA_Obj_create_ext_check.c File Reference

(r)

Functions

FLA_Error FLA_Obj_create_ext_check (FLA_Datatype datatype, FLA_Elemtype elemtype, dim_t m, dim_t n, dim_t m_inner, dim_t n_inner, dim_t rs, dim_t cs, FLA_Obj *obj)
 

Function Documentation

◆ FLA_Obj_create_ext_check()

FLA_Error FLA_Obj_create_ext_check ( FLA_Datatype  datatype,
FLA_Elemtype  elemtype,
dim_t  m,
dim_t  n,
dim_t  m_inner,
dim_t  n_inner,
dim_t  rs,
dim_t  cs,
FLA_Obj obj 
)

References FLA_Check_matrix_strides(), FLA_Check_null_pointer(), FLA_Check_valid_datatype(), and FLA_Check_valid_elemtype().

Referenced by FLA_Obj_create_ext().

14 {
15  FLA_Error e_val;
16 
17  e_val = FLA_Check_valid_elemtype( elemtype );
18  FLA_Check_error_code( e_val );
19 
20  e_val = FLA_Check_valid_datatype( datatype );
21  FLA_Check_error_code( e_val );
22 
23  // If both m and n are zero, we do not need to check cs/rs.
24  if ( m > 0 && n > 0 )
25  {
26  e_val = FLA_Check_matrix_strides( m, n, rs, cs );
27  FLA_Check_error_code( e_val );
28  }
29 
30  e_val = FLA_Check_null_pointer( obj );
31  FLA_Check_error_code( e_val );
32 
33  return FLA_SUCCESS;
34 }
FLA_Error FLA_Check_valid_datatype(FLA_Datatype datatype)
Definition: FLA_Check.c:156
int FLA_Error
Definition: FLA_type_defs.h:47
FLA_Error FLA_Check_matrix_strides(dim_t m, dim_t n, dim_t rs, dim_t cs)
Definition: FLA_Check.c:1146
FLA_Error FLA_Check_valid_elemtype(FLA_Elemtype elemtype)
Definition: FLA_Check.c:813
FLA_Error FLA_Check_null_pointer(void *ptr)
Definition: FLA_Check.c:518