libflame revision_anchor
FLA_Repart_2x2_to_3x3_check.c File Reference

(r)

Functions

FLA_Error FLA_Repart_2x2_to_3x3_check (FLA_Obj ATL, FLA_Obj ATR, FLA_Obj *A00, FLA_Obj *A01, FLA_Obj *A02, FLA_Obj *A10, FLA_Obj *A11, FLA_Obj *A12, FLA_Obj ABL, FLA_Obj ABR, FLA_Obj *A20, FLA_Obj *A21, FLA_Obj *A22, dim_t mb, dim_t nb, FLA_Quadrant quadrant)
 

Function Documentation

◆ FLA_Repart_2x2_to_3x3_check()

FLA_Error FLA_Repart_2x2_to_3x3_check ( FLA_Obj ATL,
FLA_Obj ATR,
FLA_Obj * A00,
FLA_Obj * A01,
FLA_Obj * A02,
FLA_Obj * A10,
FLA_Obj * A11,
FLA_Obj * A12,
FLA_Obj ABL,
FLA_Obj ABR,
FLA_Obj * A20,
FLA_Obj * A21,
FLA_Obj * A22,
dim_t mb,
dim_t nb,
FLA_Quadrant quadrant )
17{
18 FLA_Error e_val;
19
21 FLA_Check_error_code( e_val );
22
24 FLA_Check_error_code( e_val );
25
27 FLA_Check_error_code( e_val );
28
30 FLA_Check_error_code( e_val );
31
32 e_val = FLA_Check_null_pointer( A00 );
33 FLA_Check_error_code( e_val );
34
35 e_val = FLA_Check_null_pointer( A10 );
36 FLA_Check_error_code( e_val );
37
38 e_val = FLA_Check_null_pointer( A20 );
39 FLA_Check_error_code( e_val );
40
41 e_val = FLA_Check_null_pointer( A01 );
42 FLA_Check_error_code( e_val );
43
44 e_val = FLA_Check_null_pointer( A11 );
45 FLA_Check_error_code( e_val );
46
47 e_val = FLA_Check_null_pointer( A21 );
48 FLA_Check_error_code( e_val );
49
50 e_val = FLA_Check_null_pointer( A02 );
51 FLA_Check_error_code( e_val );
52
53 e_val = FLA_Check_null_pointer( A12 );
54 FLA_Check_error_code( e_val );
55
56 e_val = FLA_Check_null_pointer( A22 );
57 FLA_Check_error_code( e_val );
58
59 e_val = FLA_Check_valid_quadrant( quadrant );
60 FLA_Check_error_code( e_val );
61
62 if ( quadrant == FLA_TL )
63 {
64 e_val = FLA_Check_attempted_repart_2x2( ATL, mb, nb );
65 FLA_Check_error_code( e_val );
66 }
67 else if ( quadrant == FLA_TR )
68 {
69 e_val = FLA_Check_attempted_repart_2x2( ATR, mb, nb );
70 FLA_Check_error_code( e_val );
71 }
72 else if ( quadrant == FLA_BL )
73 {
74 e_val = FLA_Check_attempted_repart_2x2( ABL, mb, nb );
75 FLA_Check_error_code( e_val );
76 }
77 else if ( quadrant == FLA_BR )
78 {
79 e_val = FLA_Check_attempted_repart_2x2( ABR, mb, nb );
80 FLA_Check_error_code( e_val );
81 }
82
83 // Needed: check for adjacency, similar to those in FLA_Merge_*().
84
85 return FLA_SUCCESS;
86}
FLA_Error FLA_Check_valid_quadrant(FLA_Quadrant quad)
Definition FLA_Check.c:727
FLA_Error FLA_Check_null_pointer(void *ptr)
Definition FLA_Check.c:518
FLA_Error FLA_Check_attempted_repart_2x2(FLA_Obj A_quad, dim_t b_m, dim_t b_n)
Definition FLA_Check.c:1091
FLA_Error FLA_Check_valid_object_datatype(FLA_Obj A)
Definition FLA_Check.c:171
int FLA_Error
Definition FLA_type_defs.h:47

References FLA_Check_attempted_repart_2x2(), FLA_Check_null_pointer(), FLA_Check_valid_object_datatype(), and FLA_Check_valid_quadrant().

Referenced by FLA_Repart_2x2_to_3x3().