Program Listing for File complex/array/base.h#

Return to documentation for file (oti/complex/array/base.h)

#ifndef OTI_COMPLEX_BASE_H
#define OTI_COMPLEX_BASE_H


/**************************************************************************************************/
void carr_set_all(   ccoeff_t num, carr_t* arr);
void carr_set_all_r( ccoeff_t num, carr_t* arr);
// ----------------------------------------------------------------------------------------------------

/**************************************************************************************************/
ccoeff_t carr_get_item_i(  carr_t* arr, uint64_t i             );
ccoeff_t carr_get_item_ij( carr_t* arr, uint64_t i, uint64_t j );

void carr_get_item_ij_to( carr_t* arr, uint64_t i, uint64_t j, ccoeff_t* res );
void carr_get_item_i_to(  carr_t* arr, uint64_t i,             ccoeff_t* res );
// ----------------------------------------------------------------------------------------------------

/**************************************************************************************************/
carr_t carr_get_slice(    carr_t* arr,
                          int64_t starti, int64_t stopi, int64_t stepi,
                          int64_t startj, int64_t stopj, int64_t stepj  );
void   carr_get_slice_to( carr_t* arr,
                          int64_t starti, int64_t stopi, int64_t stepi,
                          int64_t startj, int64_t stopj, int64_t stepj,
                          carr_t* res);
// ----------------------------------------------------------------------------------------------------



/**************************************************************************************************/
void carr_set_item_i(    ccoeff_t num, uint64_t i,             carr_t* arr );
void carr_set_item_i_r(  ccoeff_t num, uint64_t i,             carr_t* arr );
void carr_set_item_ij(   ccoeff_t num, uint64_t i, uint64_t j, carr_t* arr );
void carr_set_item_ij_r( ccoeff_t num, uint64_t i, uint64_t j, carr_t* arr );
// ----------------------------------------------------------------------------------------------------

/**************************************************************************************************/
carr_t carr_copy(    carr_t* arr              );
void   carr_copy_to( carr_t* src, carr_t* dst );
// ----------------------------------------------------------------------------------------------------

/**************************************************************************************************/
uint64_t carr_getSize(carr_t* arr);
// ----------------------------------------------------------------------------------------------------

/**************************************************************************************************/
carr_t carr_ones( uint64_t nrows, uint64_t ncols);
// ----------------------------------------------------------------------------------------------------

/**************************************************************************************************/
carr_t carr_zeros( uint64_t nrows, uint64_t ncols);
// ----------------------------------------------------------------------------------------------------

/**************************************************************************************************/
carr_t carr_eye( uint64_t size);
// ----------------------------------------------------------------------------------------------------

/**************************************************************************************************/
void carr_free(carr_t* arr);
// ----------------------------------------------------------------------------------------------------

/**************************************************************************************************/
carr_t carr_createEmpty( uint64_t nrows, uint64_t ncols);
// ----------------------------------------------------------------------------------------------------

/**************************************************************************************************/
carr_t carr_init( void );
// ----------------------------------------------------------------------------------------------------



#endif