schedule.h

Go to the documentation of this file.
00001 /*
00002     schedule.h:
00003 
00004     Copyright (C) 1999, 2002 rasmus ekman, Istvan Varga, John ffitch,
00005                              Gabriel Maldonado, matt ingalls
00006 
00007     This file is part of Csound.
00008 
00009     The Csound Library is free software; you can redistribute it
00010     and/or modify it under the terms of the GNU Lesser General Public
00011     License as published by the Free Software Foundation; either
00012     version 2.1 of the License, or (at your option) any later version.
00013 
00014     Csound is distributed in the hope that it will be useful,
00015     but WITHOUT ANY WARRANTY; without even the implied warranty of
00016     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00017     GNU Lesser General Public License for more details.
00018 
00019     You should have received a copy of the GNU Lesser General Public
00020     License along with Csound; if not, write to the Free Software
00021     Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
00022     02111-1307 USA
00023 */
00024 
00025 typedef struct {
00026         OPDS   h;
00027         MYFLT  *which, *when, *dur;
00028         MYFLT  *argums[VARGMAX-3];
00029         int    midi;
00030         INSDS  *kicked;
00031 } SCHED;
00032 
00033 typedef struct {
00034         OPDS   h;
00035         MYFLT  *trigger;
00036         MYFLT  *which, *when, *dur;
00037         MYFLT  *argums[VARGMAX-3];
00038         int    todo;
00039         MYFLT  abs_when;
00040         int    midi;
00041         INSDS  *kicked;
00042 } WSCHED;
00043 
00044 typedef struct {
00045         OPDS    h;
00046         MYFLT   *res;
00047         MYFLT   *kamp, *xcps, *type;
00048         AUXCH   auxd;
00049         MYFLT   *sine;
00050         int     lasttype;
00051         long    phs;
00052 } LFO;
00053 
00054 /*****************************************************************/
00055 /* triginstr - Start instrument events at k-rate from orchestra. */
00056 /* August 1999 by rasmus ekman.                                  */
00057 /*****************************************************************/
00058 
00059 typedef struct {
00060         OPDS   h;
00061         MYFLT  *trigger, *mintime, *maxinst;
00062         MYFLT  *args[PMAX+1];
00063         MYFLT  prvmintim;
00064         long   timrem, prvktim, kadjust;
00065 } TRIGINSTR;
00066 
00067 /*****************************************************************/
00068 /* trigseq, seqtime -                                            */
00069 /* May 2000 by Gabriel Maldonado                                 */
00070 /*****************************************************************/
00071 
00072 typedef struct {
00073   OPDS  h;
00074   MYFLT *ktrig, *kstart, *kloop, *initndx, *kfn, *outargs[VARGMAX];
00075   long  ndx;
00076   int   nargs, done;
00077   long  pfn;
00078   MYFLT *table;
00079 } TRIGSEQ;
00080 
00081 typedef struct {
00082   OPDS  h;
00083   MYFLT *ktrig, *unit_time, *kstart, *kloop, *initndx, *kfn;
00084   long  ndx;
00085   int   done;
00086   double start, newtime;
00087   long  pfn;
00088   MYFLT *table;
00089 } SEQTIM;
00090 

Generated on Sun Nov 9 00:04:52 2008 for Csound and CsoundAC by  doxygen 1.5.6