tableng

tableng — Interrogates a function table for length.

Description

Interrogates a function table for length.

Syntax

ires tableng ifn
kres tableng kfn

Initialization

ifn -- Table number to be interrogated

Performance

kfn -- Table number to be interrogated

tableng returns the length of the specified table. This will be a power of two number in most circumstances. It will not show whether a table has a guardpoint or not. It seems this information is not available in the table's data structure. If the specified table is not found, then 0 will be returned.

Likely to be useful for setting up code for table manipulation operations, such as tablemix and tablecopy.

Examples

Here is an example of the tableng opcode. It uses the file tableng.csd.

Example 1064. Example of the tableng opcode.

See the sections Real-time Audio and Command Line Flags for more information on using command line flags.

<CsoundSynthesizer>
<CsOptions>
; Select audio/midi flags here according to platform
-odac    ;;;realtime audio out
;-iadc    ;;;uncomment -iadc if realtime audio input is needed too
; For Non-realtime ouput leave only the line below:
; -o tableng.wav -W ;;; for file output any platform
</CsOptions>
<CsInstruments>

sr = 44100
ksmps = 32
nchnls = 2
0dbfs  = 1

gifn1 ftgen 1, 0, 0, 1, "flute.aiff", 0, 0, 0	;deferred-size table

instr 1 

isize tableng 1
print isize
andx  phasor 1 / (isize / sr)			;play at correct pitch
asig  tab andx, 1, 1
      outs asig, asig

endin 
</CsInstruments> 
<CsScore> 

i 1 0 2.3	
e
</CsScore> 
</CsoundSynthesizer>


Its output should include a line like this:

instr 1:  isize = 115506.000
      

Credits

Author: Robin Whittle
Australia
May 1997