VF_rotate_buf | VD_rotate_buf | VE_rotate_buf |
VCF_rotate_buf | VCD_rotate_buf | VCE_rotate_buf |
VPF_rotate_buf | VPD_rotate_buf | VPE_rotate_buf |
VI_rotate_buf | VBI_rotate_buf | VSI_rotate_buf | VLI_rotate_buf | VQI_rotate_buf | |
VU_rotate_buf | VUB_rotate_buf | VUS_rotate_buf | VUL_rotate_buf | VUQ_rotate_buf | VUI_rotate_buf |
|
Function | Rotate the ordering of the elements of a vector |
|
Syntax C/C++ | #include <VFstd.h>
void VF_rotate_buf( fVector Y, fVector X, ui size, int pos, fVector Buf ); |
C++ VecObj | #include <OptiVec.h>
void vector<T>::rotate( const vector<T> X, int pos, const vector<T> Buf ); |
Pascal/Delphi | uses VFstd;
procedure VF_rotate_buf( Y, X:fVector; size:UIntSize; pos:Integer; Buf:fVector ); |
|
CUDA function C/C++ | #include <cudaVFstd.h>
int cudaVF_rotate_buf( fVector d_Y, fVector d_X, ui size, int pos, fVector d_Buf );
void VFcu_rotate_buf( fVector h_Y, fVector h_X, ui size, int pos, fVector h_Buf );
|
CUDA function Pascal/Delphi | uses VFstd;
function cudaVF_rotate_buf( d_Y, d_X:fVector; size:UIntSize; pos:Integer; d_Buf:fVector ): IntBool;
procedure VFcu_rotate_buf( h_Y, h_X:fVector; size:UIntSize; pos:Integer; h_Buf:fVector );
|
|
Description | Yi = Xsize-pos+i, i=0,..,pos−1
Yi = Xi-pos, i=pos,..,size−1
This is a more efficient variant of VF_rotate. Instead of allocating buffer memory each time the function is called, it takes the necessary buffer as the argument Buf. Buf must be a vector generated by the OptiVec memory management function (VF_vector etc.). The size of Buf must be greater or equal to the shift, pos. |
|
|
|
|