/* overlaprsr Scicos right shift register with memo word block * Type 4 simulation function ver 1.0 - scilab-2.6&2.7 * 24 Décembre 2004 Author : - IRCOM GROUP - A.Layec */ /* REVISION HISTORY : * $Log$ */ #include "modnum_lib.h" #include "scicos_block.h" /* Cette fonction de simulation décale le vecteur reçu en entrée de nz * cases vers la droite et le recopie en sortie y. L'execendent du mot * décalé est stocké dans Z puis placé au début du vecteur suivant. * * Entrée réguliere : u[0..nu-1] vecteur d'entrée à décaler * Sortie reguliere : y[0..nu-1] vecteur de sortie décalé * * Entrée évènementielle : néant * Sortie évènementielle : néant * * Paramètres entier : insz[0] : taille du vecteur en entrée * nz : longueur du mot mémoire */ /*prototype*/ void overlaprsr(scicos_block *block,int flag) { /*Déclaration des variables*/ double *y; double *u; double *z; int nu,l; /*Récupération des adresses des ports réguliers*/ y=(double *)block->outptr[0]; u=(double *)block->inptr[0]; z=block->z; /*Récupération de la taille du port d'entrée*/ nu=block->insz[0]; /*Récupération de la longueur du mot mémoire*/ l=block->nz; /* Le flag1 décale à droite le vecteur d'entrée nz fois * puis le place dans y et mémorise l'excedent du mot vecteur * d'entrée dans z */ if(flag==1) { /*Appel overlaprsr_c*/ overlaprsr_c(&nu,&l,&u[0],&y[0],&z[0]); } }