|
libflame
12600
|
Functions | |
| int | fla_scomp_f (const void *a, const void *b) |
| int | fla_scomp_b (const void *a, const void *b) |
| int | fla_dcomp_f (const void *a, const void *b) |
| int | fla_dcomp_b (const void *a, const void *b) |
| FLA_Error | FLA_Sort (FLA_Direct direct, FLA_Obj x) |
| FLA_Error | FLA_Sort_f_ops (int m_x, float *x, int inc_x) |
| FLA_Error | FLA_Sort_b_ops (int m_x, float *x, int inc_x) |
| FLA_Error | FLA_Sort_f_opd (int m_x, double *x, int inc_x) |
| FLA_Error | FLA_Sort_b_opd (int m_x, double *x, int inc_x) |
| int fla_dcomp_b | ( | const void * | a, |
| const void * | b | ||
| ) |
Referenced by FLA_Sort_b_opd().
{
double* da = ( double* ) a;
double* db = ( double* ) b;
int r_val;
if ( *da < *db ) r_val = 1;
else if ( *da > *db ) r_val = -1;
else r_val = 0;
return r_val;
}
| int fla_dcomp_f | ( | const void * | a, |
| const void * | b | ||
| ) |
Referenced by FLA_Sort_f_opd().
{
double* da = ( double* ) a;
double* db = ( double* ) b;
int r_val;
if ( *da < *db ) r_val = -1;
else if ( *da > *db ) r_val = 1;
else r_val = 0;
return r_val;
}
| int fla_scomp_b | ( | const void * | a, |
| const void * | b | ||
| ) |
Referenced by FLA_Sort_b_ops().
{
float* da = ( float* ) a;
float* db = ( float* ) b;
int r_val;
if ( *da < *db ) r_val = 1;
else if ( *da > *db ) r_val = -1;
else r_val = 0;
return r_val;
}
| int fla_scomp_f | ( | const void * | a, |
| const void * | b | ||
| ) |
Referenced by FLA_Sort_f_ops().
{
float* da = ( float* ) a;
float* db = ( float* ) b;
int r_val;
if ( *da < *db ) r_val = -1;
else if ( *da > *db ) r_val = 1;
else r_val = 0;
return r_val;
}
| FLA_Error FLA_Sort | ( | FLA_Direct | direct, |
| FLA_Obj | x | ||
| ) |
References FLA_Check_error_level(), FLA_Copy(), FLA_Obj_create_copy_of(), FLA_Obj_datatype(), FLA_Obj_free(), FLA_Obj_vector_dim(), FLA_Obj_vector_inc(), FLA_Sort_b_opd(), FLA_Sort_b_ops(), FLA_Sort_check(), FLA_Sort_f_opd(), and FLA_Sort_f_ops().
Referenced by FLA_Fill_with_cluster_dist(), and FLA_Sort_bsvd_ext().
{
FLA_Datatype datatype;
FLA_Obj x_use;
dim_t m_x;
dim_t inc_x;
if ( FLA_Check_error_level() >= FLA_MIN_ERROR_CHECKING )
FLA_Sort_check( direct, x );
datatype = FLA_Obj_datatype( x );
m_x = FLA_Obj_vector_dim( x );
inc_x = FLA_Obj_vector_inc( x );
// If the vector does not have unit stride, copy it to a temporary vector
// that does have unit stride.
if ( inc_x != 1 )
{
FLA_Obj_create_copy_of( FLA_NO_TRANSPOSE, x, &x_use );
inc_x = FLA_Obj_vector_inc( x_use );
}
else
{
x_use = x;
}
switch ( datatype )
{
case FLA_FLOAT:
{
float* x_p = ( float* ) FLA_FLOAT_PTR( x_use );
if ( direct == FLA_FORWARD )
FLA_Sort_f_ops( m_x,
x_p, inc_x );
else // if ( direct == FLA_BACKWARD )
FLA_Sort_b_ops( m_x,
x_p, inc_x );
break;
}
case FLA_DOUBLE:
{
double* x_p = ( double* ) FLA_DOUBLE_PTR( x_use );
if ( direct == FLA_FORWARD )
FLA_Sort_f_opd( m_x,
x_p, inc_x );
else // if ( direct == FLA_BACKWARD )
FLA_Sort_b_opd( m_x,
x_p, inc_x );
break;
}
}
if ( inc_x != 1 )
{
FLA_Copy( x_use, x );
FLA_Obj_free( &x_use );
}
return FLA_SUCCESS;
}
| FLA_Error FLA_Sort_b_opd | ( | int | m_x, |
| double * | x, | ||
| int | inc_x | ||
| ) |
References fla_dcomp_b().
Referenced by FLA_Sort().
{
qsort( x,
m_x,
sizeof( double ),
fla_dcomp_b );
return FLA_SUCCESS;
}
| FLA_Error FLA_Sort_b_ops | ( | int | m_x, |
| float * | x, | ||
| int | inc_x | ||
| ) |
References fla_scomp_b().
Referenced by FLA_Sort().
{
qsort( x,
m_x,
sizeof( float ),
fla_scomp_b );
return FLA_SUCCESS;
}
| FLA_Error FLA_Sort_f_opd | ( | int | m_x, |
| double * | x, | ||
| int | inc_x | ||
| ) |
References fla_dcomp_f().
Referenced by FLA_Sort().
{
qsort( x,
m_x,
sizeof( double ),
fla_dcomp_f );
return FLA_SUCCESS;
}
| FLA_Error FLA_Sort_f_ops | ( | int | m_x, |
| float * | x, | ||
| int | inc_x | ||
| ) |
References fla_scomp_f().
Referenced by FLA_Sort().
{
qsort( x,
m_x,
sizeof( float ),
fla_scomp_f );
return FLA_SUCCESS;
}
1.7.6.1