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 .. function:: setRef(args) set symbol to a reference to the argument .. function:: createLabel(args) return a label UIE embedded in another UIE .. function:: getprop(args) return string describing type of atom .. function:: getAix(args) return atom index of something .. function:: aixElement(args) return some property or field of an atom .. function:: sizeofUie(args) return number of elements in an array .. function:: isUie(args) return nonzero if arg is a UIE .. function:: isType(args) return nonzero if arg is a certain type .. function:: exit(args) exit psiexp .. function:: resize(args) change size of an array .. function:: 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). .. function:: copy(args) copy by value, not by reference .. function:: owner(args) if this atom is owned by an array, return that array .. function:: addUie(args) add a UIE to a display element .. function:: unlinkUie(args) unlink UIE and subviews from NS view hierarchy //.. function:: setFrame1(args) set the frame of a UIE .. function:: plot(args) deprecated. Use draw .. function:: timeEpoch(args) .. function:: time(args) time in seconds since program start .. function:: fileTimeNumber(args) file modification/creation/access time as a coded floating-point number .. function:: dump(args) .. function:: error(args) .. function:: pause(args) .. function:: qtview(args) special quick time player view //.. function:: mpview(args) // special movie player view .. sidebar:: Sidebar Title :subtitle: Optional Sidebar Subtitle Subsequent indented lines comprise the body of the sidebar, and are interpreted as body elements. :optional title: Window title :optional text: Additional message :title: Window title :text: Additional message .. function:: selectPane(args) .. function:: pushPane(args) .. function:: popPane(args) .. function:: container(args) .. function:: button(args) .. function:: buttonList(args) .. function:: slider(args) .. function:: sliderList(args) .. function:: number(args) .. function:: numberList(args) .. function:: text(args) .. function:: scrollText(args) .. function:: scrollTextInput(args) .. function:: scrollWindow(args) .. function:: textList(args) .. function:: label(args) .. function:: sliderJitter(args) .. function:: inverseSliderJitter(args) .. function:: print(args) .. function:: debug(args) .. function:: protocol(args) .. function:: debugProtocol(args) .. function:: setProtocol(args) //.. function:: jmaxConnect(args) .. function:: 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) .. function:: writePipe(args) //.. function:: closePipe(args) .. function:: printf(args) .. function:: sprintf(args) .. function:: fprintf(args) .. function:: fopen(args) open an output stream .. function:: fclose(args) close an output stream .. function:: fflush(args) flush an output stream .. function:: wavInit(args) (re)-initialize a scrolling waveform display in a button .. function:: wavAddSample(args) add a sample to scrolling waveform display .. function:: control(args) multipurpose control function .. function:: iran(args) .. function:: fran(args) .. function:: ranSeed(args) .. function:: play(args) .. function:: dateString(args) return a string with the date .. function:: timeStampString(args) return a concise timeStamp string .. function:: getDateTime(name) | set assoc variable *name* with date and time | https://en.wikipedia.org/wiki/Year_2038_problem | https://en.wikipedia.org/wiki/Unix_time .. function:: makeFilename(args) .. function:: getIPAddress(args) get the IP address of a given device (e.g. en0) .. function:: getBroadcastIP(args) get the broadcast IP address of a given device (e.g. en0) //.. function:: string(args) .. function:: floor(args) .. function:: ceil(args) .. function:: fabs(args) .. function:: rint(args) .. function:: fmod(args) .. function:: exp(args) .. function:: log(args) .. function:: log10(args) .. function:: pow(args) .. function:: sqrt(args) .. function:: sin(args) .. function:: cos(args) .. function:: atan(args) .. function:: atan2(args) .. function:: erf(args) .. function:: erfc(args)