ftslice
Précédent | Opcodes et opérateurs de l'orchestre | Suivant

## ftslice

ftslice — Copie un bout d'une ftable dans une autre pendant l'exécution.

## Description

Opcode du greffon emugens.

L'opcode ftslice prend une ftable et en copie un bout dans une seconde ftable (comme tab2array, mais entre tables de fonction). Cette action a lieu durant l'exécution (à chaque cycle), afin qu'on puisse la placer dans une clause if / boucle / etc, de taux-k. Pour une version uniquement au taux-i, voir ftslicei

## Syntaxe

    ftslice ifnsource, ifndest [, kstart, kend, kstep ]

    ftslice kfnsource, kfndest [, kstart, kend, kstep ]

## Initialisation

ifnsource -- Le numéro de la table source.

ifndest -- Le numéro de la table destination.

## Exécution

kstart -- La position à partir de laquelle copier. 0 par défaut.

kend -- La position à partir de laquelle la copie est stoppée. Elle n'est PAS inclusive. 0 indique de copier jusqu'à la fin de la table. Par défaut = la fin de la table.

kstep -- Le nombre d'éléments à ignorer. 1 par défaut.

## Exemples

Voici une exemple de l'opcode ftslice. Il utilise le fichier ftslice.csd.

Exemple 397. Exemple de l'opcode ftslice.

    <CsoundSynthesizer>
    <CsOptions>
    </CsOptions>
    <CsInstruments>

    ; Example file ftslice

    /*

    ftslice:

    Copy slice from source table to destination table

    Syntax:

    ftslice ifnsource, ifndest, kstart=0, kend=0, kstep=1

    ifnsource: source table
    ifndest: destination table
    kstart: the index to start copying from
    kend: the end index to stop copying. This is NOT inclusive. 0=end of table
    kstep: how many elements to skip

    See also: tablecopy, tableicopy, tab2array
    */

    instr 1
      ifn   ftgentmp 0, 0, -13, -2,  0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12
      idest ftgentmp 0, 0, -11, -2,  0   ; empty table of size 11

      ; copy only even elements
      ftslice ifn, idest, 0, 0, 2
      ftprint idest

      ; copy too many elements - only the elements which fit in the dest table
      ; are copyed

      ftslice ifn, idest
      ftprint idest

      turnoff
    endin

    </CsInstruments>
    <CsScore>
    i 1 0   0.1

    </CsScore>
    </CsoundSynthesizer>

## Voir aussi

ftslicei, ftset, slicearray, copyf2array, tab2array, tablecopy, tableicopy, ftprint

## Crédits

Auteur : Eduardo Moguillansky 2018

Nouveau greffon dans la version 6.12

Précédent | Niveau supérieur | Suivant
ftset | Sommaire | ftslicei