Skip to content

tableng

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 of the tableng opcode.
<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

See also

Table Control:Table Queries

Credits

Author: Robin Whittle
Australia
May 1997