gumbo

#set libdir “/Users/bks/bb/psiexp/libpsiexp/”

#libPsiexpDir folder

adds folder to the head of the include search list

#set silentInclude 1

when nonzero, don not print the “Including ” message in the Console
used by psiexp.h to avoid clutter in Console
setRef(args)

set symbol to a reference to the argument

createLabel(args)

return a label UIE embedded in another UIE

getprop(args)

return string describing type of atom

getAix(args)

return atom index of something

aixElement(args)

return some property or field of an atom

sizeofUie(args)

return number of elements in an array

isUie(args)

return nonzero if arg is a UIE

isType(args)

return nonzero if arg is a certain type

exit(args)

exit psiexp

resize(args)

change size of an array

newObject(arg)

Create a new object (a.k.a. associative array). Normally, objects are created automatically, for instance:

myObject.type = "some type";

which creates the object myObject and sets its attribute type to the string some type. But sometimes it is convenient to create it explicitly. In this example, we are creating an array of new objects:

myObj = newObject(someArray[index++]); // set variable to new object
myObj.val = 3.14;            // set first field
myObj.otherval = 79;         // set other fields
myObj.this = "some string";

which is equivalent to the more obscure:

someArray[index].val = 3.14;  // create object, set first field
myObj = someArray[index++];  // set variable to this object
myObj.otherval = 79;             // set other fields
myObj.this = "some string";

arg should be a new variable or an empty object (in the example, someArray[index] does not exist yet), otherwise results are unpredictable (and you will get a warning).

copy(args)

copy by value, not by reference

owner(args)

if this atom is owned by an array, return that array

addUie(args)

add a UIE to a display element

unlinkUie(args)

unlink UIE and subviews from NS view hierarchy

//.. function:: setFrame1(args)

set the frame of a UIE

plot(args)

deprecated. Use draw

timeEpoch(args)
time(args)

time in seconds since program start

fileTimeNumber(args)

file modification/creation/access time as a coded floating-point number

dump(args)
error(args)
pause(args)
qtview(args)

special quick time player view

//.. function:: mpview(args)

// special movie player view

selectPane(args)
pushPane(args)
popPane(args)
container(args)
button(args)
buttonList(args)
slider(args)
sliderList(args)
number(args)
numberList(args)
text(args)
scrollText(args)
scrollTextInput(args)
scrollWindow(args)
textList(args)
label(args)
sliderJitter(args)
inverseSliderJitter(args)
print(args)
debug(args)
protocol(args)
debugProtocol(args)
setProtocol(args)

//.. function:: jmaxConnect(args)

connect(args)

//BUILTINEVALASSIGN(“jmaxDest”, evalJmaxDest, assignJmaxDest, NULLPARSEROUTINE, //.. function:: jmaxSource(args)

//.. function:: jmaxDisconnect(args)

//.. function:: metro(args)

//.. function:: port(args)

//.. function:: readPipe(args)

// open a pipe

//.. function:: pread(args)

// request a read from a pipe

//.. function:: readPipe(args)

writePipe(args)

//.. function:: closePipe(args)

printf(args)
sprintf(args)
fprintf(args)
fopen(args)

open an output stream

fclose(args)

close an output stream

fflush(args)

flush an output stream

wavInit(args)

(re)-initialize a scrolling waveform display in a button

wavAddSample(args)

add a sample to scrolling waveform display

control(args)

multipurpose control function

iran(args)
fran(args)
ranSeed(args)
play(args)
dateString(args)

return a string with the date

timeStampString(args)

return a concise timeStamp string

getDateTime(name)
makeFilename(args)
getIPAddress(args)

get the IP address of a given device (e.g. en0)

getBroadcastIP(args)

get the broadcast IP address of a given device (e.g. en0)

//.. function:: string(args)

floor(args)
ceil(args)
fabs(args)
rint(args)
fmod(args)
exp(args)
log(args)
log10(args)
pow(args)
sqrt(args)
sin(args)
cos(args)
atan(args)
atan2(args)
erf(args)
erfc(args)