Adelsbach/VSIPL
Core Programming Reference Guide
DD-00016-015
Core

This manual is preliminary and incomplete.
While our Core implementation implements all functions given in the standard we are still working on completing this documentation.

Please refer to the VSIPL standard for a complete function reference of the Core profile until we have completed work on this documentation.

1.2.10 vsip_cblockrelease_p - Release a block (complex)

void vsip_cblockrelease_f(vsip_cblock_f *b, vsip_scalar_bl u, vsip_scalar_f **rr, vsip_scalar_f **ri);
Description

This function releases the complex block b and queries the user array(s). Depending on the data format, the function sets the pointers rr and ri accordingly:

The flag u determines whether the data must be maintained during the state change. The block must have been bound previously and must be in the released state before calling this function.

Parameters
Error Handling

On error, both rr and ri are set to NULL.

Example

vsip_cblock_f *block; 
vsip_scalar_bl maintain_data = VSIP_TRUE; 
vsip_scalar_f *real_part; 
vsip_scalar_f *imag_part; 
 
// Assuming block has been properly initialized and bound 
vsip_cblockrelease_f(block, maintain_data, &real_part, &imag_part); 
 
if (real_part == NULL) { 
    // Handle error 
}