libflame  revision_anchor
Functions
FLA_Repart_2x1_to_3x1_check.c File Reference

(r)

Functions

FLA_Error FLA_Repart_2x1_to_3x1_check (FLA_Obj AT, FLA_Obj *A0, FLA_Obj *A1, FLA_Obj AB, FLA_Obj *A2, dim_t mb, FLA_Side side)
 

Function Documentation

◆ FLA_Repart_2x1_to_3x1_check()

FLA_Error FLA_Repart_2x1_to_3x1_check ( FLA_Obj  AT,
FLA_Obj A0,
FLA_Obj A1,
FLA_Obj  AB,
FLA_Obj A2,
dim_t  mb,
FLA_Side  side 
)

References FLA_Check_attempted_repart_2x1(), FLA_Check_null_pointer(), FLA_Check_valid_object_datatype(), and FLA_Check_valid_topbottom_side().

Referenced by FLA_Repart_2x1_to_3x1().

17 {
18  FLA_Error e_val;
19 
20  e_val = FLA_Check_valid_object_datatype( AT );
21  FLA_Check_error_code( e_val );
22 
23  e_val = FLA_Check_valid_object_datatype( AB );
24  FLA_Check_error_code( e_val );
25 
26  e_val = FLA_Check_null_pointer( A0 );
27  FLA_Check_error_code( e_val );
28 
29  e_val = FLA_Check_null_pointer( A1 );
30  FLA_Check_error_code( e_val );
31 
32  e_val = FLA_Check_null_pointer( A2 );
33  FLA_Check_error_code( e_val );
34 
35  e_val = FLA_Check_valid_topbottom_side( side );
36  FLA_Check_error_code( e_val );
37 
38  if ( side == FLA_TOP )
39  {
40  e_val = FLA_Check_attempted_repart_2x1( AT, mb );
41  FLA_Check_error_code( e_val );
42  }
43  else if ( side == FLA_BOTTOM )
44  {
45  e_val = FLA_Check_attempted_repart_2x1( AB, mb );
46  FLA_Check_error_code( e_val );
47  }
48 
49  // Needed: check for adjacency, similar to those in FLA_Merge_*().
50 
51  return FLA_SUCCESS;
52 }
FLA_Error FLA_Check_attempted_repart_2x1(FLA_Obj A_side, dim_t b_m)
Definition: FLA_Check.c:1104
int FLA_Error
Definition: FLA_type_defs.h:47
FLA_Error FLA_Check_valid_topbottom_side(FLA_Side side)
Definition: FLA_Check.c:1135
FLA_Error FLA_Check_valid_object_datatype(FLA_Obj A)
Definition: FLA_Check.c:171
FLA_Error FLA_Check_null_pointer(void *ptr)
Definition: FLA_Check.c:518