flags.h 8.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292
  1. /*
  2. * Copyright (c) 1983-2013 Trevor Wishart and Composers Desktop Project Ltd
  3. * http://www.trevorwishart.co.uk
  4. * http://www.composersdesktop.com
  5. *
  6. This file is part of the CDP System.
  7. The CDP System is free software; you can redistribute it
  8. and/or modify it under the terms of the GNU Lesser General Public
  9. License as published by the Free Software Foundation; either
  10. version 2.1 of the License, or (at your option) any later version.
  11. The CDP System is distributed in the hope that it will be useful,
  12. but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  14. GNU Lesser General Public License for more details.
  15. You should have received a copy of the GNU Lesser General Public
  16. License along with the CDP System; if not, write to the Free Software
  17. Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
  18. 02111-1307 USA
  19. *
  20. */
  21. /**************************** INTERNAL VARIANT-FLAGS ******************************/
  22. #define ACCU_DECAY (0) /* accu */
  23. #define ACCU_GLIS (1) /* accu */
  24. #define ARPE_IS_NONLIN (0) /* arpe */
  25. #define ARPE_IS_SUST (1) /* arpe */
  26. #define ARPE_TRKFRQ (2) /* arpe */
  27. #define ARPE_KEEP_SUST (3) /* arpe */
  28. #define BARE_LESS_BODY (0) /* bare */
  29. #define CHORD_FTOP (0) /* chord */
  30. #define CHORD_FBOT (1) /* chord */
  31. #define CHORD_BODY (2) /* chord */
  32. #define CROSS_INTP (0) /* cross */
  33. #define DIFF_IS_CROSS (0) /* diff */
  34. #define DIFF_SUBZERO (1) /* diff */
  35. #define DRNK_NO_ZEROSTEPS (0) /* drunk */
  36. #define FMNT_VIEW (0) /* fmntsee */
  37. #define FOCUS_STABLE (0) /* focus */
  38. #define FOLD_WITH_BODY (0) /* fold */
  39. #define FSEE_DISPLAY (0) /* formsee */
  40. #define GLIS_FTOP (0) /* glis */
  41. #define GREQ_NOTCH (0) /* greq */
  42. #define MEAN_ZEROED (0) /* mean */
  43. #define PF_STARTCUT (0) /* pitchfix */
  44. #define PF_ENDCUT (1)
  45. #define PF_LOPASS (2)
  46. #define PF_HIPASS (3)
  47. #define PF_IS_SMOOTH (4)
  48. #define PF_IS_SMARK (5)
  49. #define PF_IS_EMARK (6)
  50. #define PF_TWOW (7)
  51. #define PF_INTERP (8)
  52. #define PI_IS_MEAN (0) /* p_invert */
  53. #define PI_IS_TOP (1)
  54. #define PI_IS_BOT (2)
  55. #define PQ_OCTDUPL (0) /* pquantise */
  56. #define PR_IS_SLEW (0) /* prandomise */
  57. #define PS_MEANP (0) /* psmooth */
  58. #define PS_HOLD (1) /* psmooth */
  59. #define PEAK_HEAR (0) /* peak */
  60. #define PICH_ALTERNATIVE_METHOD (0) /* pitch */
  61. #define KEEP_PITCH_ZEROS (1) /* pitch, track */
  62. #define SCAT_RANDCNT (0) /* scat */
  63. #define SCAT_NO_NORM (1) /* scat */
  64. #define SHIFT_LOG (0) /* shift */
  65. #define SHP_IS_DEPTH (0) /* shiftp */
  66. #define STR_IS_DEPTH (0) /* stretch */
  67. #define SUM_IS_CROSS (0) /* sum */
  68. #define TRACE_RETAIN (0) /*trace */
  69. #define TRNSF_FTOP (0) /* trnsf */
  70. #define TRNSF_FBOT (1) /* trnsf */
  71. #define TRNSF_BODY (2) /* trsnf */
  72. #define TRNSP_FTOP (0) /* trnsp */
  73. #define TRNSP_FBOT (1) /* trnsp */
  74. #define TRNSP_BODY (2) /* trnsp */
  75. #define TUNE_TRACE (0) /* tune */
  76. #define TUNE_FBOT (1) /* tune */
  77. #define IS_OCTVU_FUND (0) /* octvu */
  78. #define IS_BRG_START (0) /* bridge */
  79. #define IS_BRG_END (1) /* bridge */
  80. /* DISTORT_ENV */
  81. #define DISTORTE_IS_TROF (0)
  82. #define DISTORTE_IS_EXPON (1)
  83. /* DISTORT_MLT */
  84. #define DISTORTM_SMOOTH (0)
  85. /* DISTORT_DIV */
  86. #define DISTORTD_INTERP (0)
  87. /* DISTORT_HRM */
  88. /* DISTORT_FRC */
  89. #define IS_PRESCALED (0)
  90. /* DISTORT_AVG */
  91. /* DISTORT_SHUF */
  92. /* DISTORT_RPT */
  93. /* DISTORT_DEL */
  94. /* DISTORT_RPL */
  95. /* DISTORT_TEL */
  96. /* DISTORT_FLT */
  97. #define IS_DISTORT_SKIP (0)
  98. /* DISTORT_TEL */
  99. #define IS_DISTTEL_AVG (1)
  100. /* ZIGZAG */
  101. #define IS_ZIG_RSEED (0)
  102. /* LOOP */
  103. #define IS_KEEP_START (0)
  104. /* SCRAMBLE */
  105. #define IS_SCRAMBLE_RSEED (0)
  106. #define IS_SCR_KEEP_START (1)
  107. #define IS_SCR_KEEP_END (2)
  108. /* ITERATE */
  109. #define IS_ITER_DELAY (0)
  110. #define IS_ITER_RAND (1)
  111. #define IS_ITER_PSCAT (2)
  112. #define IS_ITER_ASCAT (3)
  113. #define IS_ITER_FADE (4)
  114. #define IS_ITER_GAIN (5)
  115. #define IS_ITER_RSEED (6)
  116. /* DRUNKWALK */
  117. #define IS_DRNK_CLOKRND (0)
  118. #define IS_DRNK_OVERLAP (1)
  119. #define IS_DRNK_RSEED (2)
  120. /* FILTERS */
  121. #define FLT_DBLFILT (0)
  122. #define DROP_OUT_AT_OVFLOW (1)
  123. /* FLTITER */
  124. #define FLT_PINTERP_OFF (1)
  125. #define FLT_EXPDEC (2)
  126. #define FLT_NONORM (3)
  127. /* ALLPASS */
  128. #define FLT_LINDELAY (0)
  129. /* GRAIN DUPL,REORODER,REPITCH,REMOTIF ONLY */
  130. #define GR_ENVTRACK (0)
  131. #define LOSE_LAST_GRAIN (1)
  132. /* MIX */
  133. #define ALTERNATIVE_MIX (0)
  134. /* MIXSHUFL */
  135. #define MSH_NOCHECK (0)
  136. /* SYNCATT */
  137. #define MSY_POWMETHOD (0)
  138. /* BRASSAGE */
  139. #define GRS_NO_DECCEL (0)
  140. #define GRS_EXPON (1)
  141. #define GRS_NO_INTERP (2)
  142. /* TEXTURE */
  143. #define IS_TEX_RSEED (0)
  144. /* FLAGS only used in certain texture processes */
  145. #define TEX_IGNORE_DUR (1)
  146. #define DONT_KEEP_MTFDUR (2) /* motif note durs same as firstnote, not as motif-durs */
  147. #define FIXED_STEP (2) /* dec & gp note event-spacing equal */
  148. #define INS_TO_SCATTER (3) /* flags instrument values are scattered: ORN & DEC only */
  149. #define FORCEHI (4) /* Force orns, decs to highest note of chord */
  150. #define WHICH_CHORDNOTE (4) /* A duplicate name for FORCEHI flag : see NOTE BELOW */
  151. #define FORCE_EVERY (5) /* Force orns onto ALL notes of chord */
  152. #define DISCARD_ORIGLINE (6) /* after decoration: discard orig line : DEC only */
  153. #define CYCLIC_TEXFLAG (2)
  154. #define PERM_TEXFLAG (3)
  155. #define TOTAL_POSSIBLE_USER_FLAGS (7) /* COUNT OF FLAGS ABOVE */
  156. /* MOD_PITCH */
  157. #define VTRANS_OUTTIMES (0)
  158. /* MOD_REVECHO */
  159. #define DELAY_INVERT_FLAG (0)
  160. /* EDIT_INSERT */
  161. #define INSERT_OVERWRITE (0)
  162. #define ACCEPT_SILENT_END (1)
  163. /* EDIT_SPLICE */
  164. #define SPLICE_START (0)
  165. #define SPLICE_END (1)
  166. /* RANDCHUNKS */
  167. #define LINEAR (0)
  168. #define FROMSTART (1)
  169. /* HOUSE_COPY */
  170. #define IGNORE_COPIES (0)
  171. /* HOUSE_DEL */
  172. #define ALL_COPIES (0)
  173. /* HOUSE_CHANS */
  174. #define CHAN_INVERT_PHASE (0)
  175. /* HOUSE_SORT */
  176. #define DONT_SHOW_DURS (0)
  177. /* HOUSE_EXTRACT */
  178. #define STOP_ON_SAMENAME (0)
  179. #define NO_STT_TRIM (0)
  180. #define NO_END_TRIM (1)
  181. #define STT_TRIM (0)
  182. #define END_TRIM (1)
  183. /* SNDINFO */
  184. /* samptotime & timetosamp */
  185. #define CHAN_GROUPED (0)
  186. /* sfdiff */
  187. #define IGNORE_LENDIFF (0)
  188. #define IGNORE_CHANDIFF (1)
  189. /* maxsamp */
  190. #define FORCE_SCAN (0)
  191. /* HOUSE RECOVER */
  192. #define SFREC_PHASESHIFT (0)
  193. /* SYNTH */
  194. #define SYNTH_FLOAT (0)
  195. /* HF_PERM1 */
  196. #define HP1_MINONLY (0)
  197. #define HP1_SPAN (1)
  198. #define HP1_DENS (2)
  199. #define HP1_ELIMOCTS (3)
  200. /* SYNTH_SPEC */
  201. #define SS_PICHSPRD (0)
  202. /* TWIXT */
  203. #define IS_NOTCYCL (0)
  204. /* DISTORT_PULSE */
  205. #define PULSE_KEEPSTART (0) /* keep start of input sound before start of impulse stream */
  206. #define PULSE_KEEPEND (1) /* keep tail of input sound on end of impulse stream */
  207. /* EDIT : SUPPRESS NOISE */
  208. #define GET_NOISE (0)
  209. /* STACK */
  210. #define STACK_SEE (0)
  211. /* SHUDDER */
  212. #define SHUD_BALANCE (0)
  213. #define SHUD_ATK (1)
  214. /* DOUBLETS */
  215. #define NO_TIME_EXPAND (0)
  216. /* SYLLABS */
  217. #define SYLLAB_PAIRS (0)