libflame  12600
Functions
FLA_Obj_create_ext_check.c File Reference

(r12600)

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_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().

{
  FLA_Error e_val;

  e_val = FLA_Check_valid_elemtype( elemtype );
  FLA_Check_error_code( e_val );

  e_val = FLA_Check_valid_datatype( datatype );
  FLA_Check_error_code( e_val );

  // If both m and n are zero, we do not need to check cs/rs.
  if ( m > 0 && n > 0 )
  {
    e_val = FLA_Check_matrix_strides( m, n, rs, cs );
    FLA_Check_error_code( e_val );
  }

  e_val = FLA_Check_null_pointer( obj );
  FLA_Check_error_code( e_val );

  return FLA_SUCCESS;
}