summaryrefslogtreecommitdiff
path: root/orch/macros.xml
blob: 62915476680d65036879a5b308d1e6661e743ba5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<section id="OrchMacros">
  <title>Macros</title>

  <para>
    Orchestra macros work like C preprocessor macros, and replace the content of the macro in the orchestra before it is compiled. The opcodes one can use to create, call, or undefine orchestra macros are:
    <itemizedlist>
      <listitem><para><link linkend="define"><citetitle>&num;define</citetitle></link></para></listitem>
      <listitem><para><link linkend="dollar"><citetitle>&dollar;NAME</citetitle></link></para></listitem>
      <listitem><para><link linkend="ifdef"><citetitle>&num;ifdef</citetitle></link></para></listitem>
      <listitem><para><link linkend="ifndef"><citetitle>&num;ifndef</citetitle></link></para></listitem>
      <listitem><para><link linkend="ifdef"><citetitle>&num;end</citetitle></link></para></listitem>
      <listitem><para><link linkend="ifdef"><citetitle>&num;else</citetitle></link></para></listitem>
      <listitem><para><link linkend="include"><citetitle>&num;include</citetitle></link></para></listitem>
      <listitem><para><link linkend="include"><citetitle>&num;includestr</citetitle></link></para></listitem>
      <listitem><para><link linkend="undef"><citetitle>&num;undef</citetitle></link></para></listitem>
    </itemizedlist>
  </para>
  <para>
    Orchestra macros can also be defined using the command line flag <link linkend="FlagsCatMinusOmacro"><citetitle>--omacro:</citetitle></link>.
  </para>
  <para>
    More information and examples on the usage of orchestra macros can be found in the entry for <link linkend="define"><citetitle>&num;define</citetitle></link>.
  </para>
  <para>
    These opcodes refer to orchestra macros; for score macros, refer to <link linkend="ScoreMacros"><citetitle>Score Macros</citetitle></link>. 
  </para>

</section>