<effect>
  <name>FOFFF</name>
  <enabled>true</enabled>
  <numIns>2</numIns>
  <numOuts>2</numOuts>
  <code>if (&lt;FOFFFON&gt; == 1) then

    aL1 fofilter ain1, &lt;FOFFF_frequency 1&gt;, &lt;FOFFF_attack&gt;, &lt;FOFFF_decay&gt;
    aR1 fofilter ain2, &lt;FOFFF_frequency 1&gt;, &lt;FOFFF_attack&gt;, &lt;FOFFF_decay&gt;

    aL2 fofilter ain1, &lt;FOFFF_frequency 2&gt;, &lt;FOFFF_attack&gt;, &lt;FOFFF_decay&gt;
    aR2 fofilter ain2, &lt;FOFFF_frequency 2&gt;, &lt;FOFFF_attack&gt;, &lt;FOFFF_decay&gt;

    aL3 fofilter ain1, &lt;FOFFF_frequency 3&gt;, &lt;FOFFF_attack&gt;, &lt;FOFFF_decay&gt;
    aR3 fofilter ain2, &lt;FOFFF_frequency 3&gt;, &lt;FOFFF_attack&gt;, &lt;FOFFF_decay&gt;

    aout1 ntrpol ain1, (aL1 + aL2 + aL3)*.3, &lt;FOFFF_mix&gt;
    aout2 ntrpol ain2, (aR1 + aR2 + aR3)*.3, &lt;FOFFF_mix&gt;
else
    aout1   =   ain1
    aout2   =   ain2
endif</code>
  <comments>
DESCRIPTION:

3 fofilters parallel, as tp provide the instrument a body.
Based on the fofilter opcode. Fofilter generates a stream of overlapping sinewave grains, when fed with a pulse train.


CONTROLLERS:

ON/OFF          -       bypass
frequency 1,2,3 -       filter centre frequency
attack/decay    -       impulse response attack and decay time in secsonds
mix             -       mix direct signal with effect

---

version 1.02, July 2020
- added BSB information comments

version 1.01, May 2020
- added comments on controllers

version 1, July 2019
- initial version by Menno Knevel
</comments>
  <opcodeList/>
  <graphicInterface editEnabled='false'>
    <gridSettings>
      <width>5</width>
      <height>5</height>
      <gridStyle>LINE</gridStyle>
      <snapGridEnabled>true</snapGridEnabled>
    </gridSettings>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBGroup'>
      <objectName></objectName>
      <x>0</x>
      <y>0</y>
      <groupName>Group</groupName>
      <backgroundColor>0x00000033</backgroundColor>
      <borderColor>0x000000ff</borderColor>
      <labelTextColor>0xffffffff</labelTextColor>
      <titleEnabled>true</titleEnabled>
      <width>20</width>
      <height>20</height>
      <bsbObject type='blue.orchestra.blueSynthBuilder.BSBGroup'>
        <objectName></objectName>
        <x>10</x>
        <y>10</y>
        <groupName>Group</groupName>
        <backgroundColor>0x4d8080ff</backgroundColor>
        <borderColor>0x000000ff</borderColor>
        <labelTextColor>0xffffffff</labelTextColor>
        <titleEnabled>false</titleEnabled>
        <width>20</width>
        <height>20</height>
        <bsbObject type='blue.orchestra.blueSynthBuilder.BSBVSlider' version='2'>
          <objectName>FOFFF_mix</objectName>
          <x>220</x>
          <y>40</y>
          <comment>mix direct signal with effect</comment>
          <automationAllowed>true</automationAllowed>
          <minimum>0.0</minimum>
          <maximum>1.0</maximum>
          <bdresolution>0.01</bdresolution>
          <value>0.4</value>
          <sliderHeight>120</sliderHeight>
          <randomizable>true</randomizable>
          <valueDisplayEnabled>false</valueDisplayEnabled>
        </bsbObject>
        <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
          <objectName></objectName>
          <x>65</x>
          <y>130</y>
          <label>decay</label>
          <font>
            <name>System Regular</name>
            <size>12.0</size>
          </font>
        </bsbObject>
        <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
          <objectName></objectName>
          <x>170</x>
          <y>5</y>
          <label>3</label>
          <font>
            <name>System Bold</name>
            <size>20.0</size>
          </font>
        </bsbObject>
        <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
          <objectName></objectName>
          <x>65</x>
          <y>100</y>
          <label>attack</label>
          <font>
            <name>System Regular</name>
            <size>12.0</size>
          </font>
        </bsbObject>
        <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
          <objectName></objectName>
          <x>30</x>
          <y>5</y>
          <label>1</label>
          <font>
            <name>System Bold</name>
            <size>20.0</size>
          </font>
        </bsbObject>
        <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
          <objectName></objectName>
          <x>100</x>
          <y>5</y>
          <label>2</label>
          <font>
            <name>System Bold</name>
            <size>20.0</size>
          </font>
        </bsbObject>
        <bsbObject type='blue.orchestra.blueSynthBuilder.BSBHSlider' version='2'>
          <objectName>FOFFF_decay</objectName>
          <x>5</x>
          <y>130</y>
          <comment>impulse response decay time in secsonds</comment>
          <automationAllowed>true</automationAllowed>
          <minimum>0.0015</minimum>
          <maximum>0.04</maximum>
          <bdresolution>0.001</bdresolution>
          <value>0.018500000000000003</value>
          <sliderWidth>150</sliderWidth>
          <randomizable>true</randomizable>
          <valueDisplayEnabled>true</valueDisplayEnabled>
        </bsbObject>
        <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
          <objectName></objectName>
          <x>228</x>
          <y>24</y>
          <label>mix</label>
          <font>
            <name>System Regular</name>
            <size>12.0</size>
          </font>
        </bsbObject>
        <bsbObject type='blue.orchestra.blueSynthBuilder.BSBKnob' version='2'>
          <objectName>FOFFF_frequency 1</objectName>
          <x>10</x>
          <y>25</y>
          <comment>filter centre frequency 1</comment>
          <automationAllowed>true</automationAllowed>
          <minimum>50.0</minimum>
          <maximum>16000.0</maximum>
          <value>1171.8522</value>
          <knobWidth>40</knobWidth>
          <randomizable>true</randomizable>
          <valueDisplayEnabled>true</valueDisplayEnabled>
          <label>frequency</label>
          <labelEnabled>true</labelEnabled>
          <font>
            <name>System Regular</name>
            <size>12.0</size>
          </font>
        </bsbObject>
        <bsbObject type='blue.orchestra.blueSynthBuilder.BSBKnob' version='2'>
          <objectName>FOFFF_frequency 2</objectName>
          <x>80</x>
          <y>25</y>
          <comment>filter centre frequency 2</comment>
          <automationAllowed>true</automationAllowed>
          <minimum>50.0</minimum>
          <maximum>16000.0</maximum>
          <value>1809.8522</value>
          <knobWidth>40</knobWidth>
          <randomizable>true</randomizable>
          <valueDisplayEnabled>true</valueDisplayEnabled>
          <label>frequency</label>
          <labelEnabled>true</labelEnabled>
          <font>
            <name>System Regular</name>
            <size>12.0</size>
          </font>
        </bsbObject>
        <bsbObject type='blue.orchestra.blueSynthBuilder.BSBHSlider' version='2'>
          <objectName>FOFFF_attack</objectName>
          <x>5</x>
          <y>100</y>
          <comment>impulse response attack time in secsonds</comment>
          <automationAllowed>true</automationAllowed>
          <minimum>0.0015</minimum>
          <maximum>0.04</maximum>
          <bdresolution>0.001</bdresolution>
          <value>0.0055</value>
          <sliderWidth>150</sliderWidth>
          <randomizable>true</randomizable>
          <valueDisplayEnabled>true</valueDisplayEnabled>
        </bsbObject>
        <bsbObject type='blue.orchestra.blueSynthBuilder.BSBKnob' version='2'>
          <objectName>FOFFF_frequency 3</objectName>
          <x>150</x>
          <y>25</y>
          <comment>filter centre frequency 3</comment>
          <automationAllowed>true</automationAllowed>
          <minimum>50.0</minimum>
          <maximum>16000.0</maximum>
          <value>2447.8522000000003</value>
          <knobWidth>40</knobWidth>
          <randomizable>true</randomizable>
          <valueDisplayEnabled>true</valueDisplayEnabled>
          <label>frequency</label>
          <labelEnabled>true</labelEnabled>
          <font>
            <name>System Regular</name>
            <size>12.0</size>
          </font>
        </bsbObject>
      </bsbObject>
      <bsbObject type='blue.orchestra.blueSynthBuilder.BSBCheckBox'>
        <objectName>FOFFFON</objectName>
        <x>0</x>
        <y>0</y>
        <comment>bypass</comment>
        <automationAllowed>true</automationAllowed>
        <label/>
        <selected>true</selected>
        <randomizable>true</randomizable>
      </bsbObject>
    </bsbObject>
  </graphicInterface>
  <parameterList>
    <parameter uniqueId='-615681947' name='FOFFF_decay' label='' min='0.0015' max='0.04' bdresolution='0.001' automationEnabled='false' value='0.018500000000000003'>
      <line name='' version='2' max='0.04' min='0.0015' bdresolution='0.001' color='-8355712' rightBound='false' endPointsLinked='false'>
        <linePoint x='0.0' y='0.018500000000000003'/>
      </line>
    </parameter>
    <parameter uniqueId='-615681945' name='FOFFF_frequency 3' label='' min='50.0' max='16000.0' bdresolution='-1' automationEnabled='false' value='2447.8522000000003'>
      <line name='' version='2' max='16000.0' min='50.0' bdresolution='-1' color='-8355712' rightBound='false' endPointsLinked='false'>
        <linePoint x='0.0' y='2447.8522000000003'/>
      </line>
    </parameter>
    <parameter uniqueId='-615681943' name='FOFFF_attack' label='' min='0.0015' max='0.04' bdresolution='0.001' automationEnabled='false' value='0.0055'>
      <line name='' version='2' max='0.04' min='0.0015' bdresolution='0.001' color='-8355712' rightBound='false' endPointsLinked='false'>
        <linePoint x='0.0' y='0.0055'/>
      </line>
    </parameter>
    <parameter uniqueId='-615681941' name='FOFFF_frequency 1' label='' min='50.0' max='16000.0' bdresolution='-1' automationEnabled='false' value='1171.8522'>
      <line name='' version='2' max='16000.0' min='50.0' bdresolution='-1' color='-8355712' rightBound='false' endPointsLinked='false'>
        <linePoint x='0.0' y='1171.8522'/>
      </line>
    </parameter>
    <parameter uniqueId='-615681939' name='FOFFF_mix' label='' min='0.0' max='1.0' bdresolution='0.01' automationEnabled='false' value='0.4'>
      <line name='' version='2' max='1.0' min='0.0' bdresolution='0.01' color='-8355712' rightBound='false' endPointsLinked='false'>
        <linePoint x='0.0' y='0.4'/>
      </line>
    </parameter>
    <parameter uniqueId='-615681937' name='FOFFF_frequency 2' label='' min='50.0' max='16000.0' bdresolution='-1' automationEnabled='false' value='1809.8522'>
      <line name='' version='2' max='16000.0' min='50.0' bdresolution='-1' color='-8355712' rightBound='false' endPointsLinked='false'>
        <linePoint x='0.0' y='1809.8522'/>
      </line>
    </parameter>
    <parameter uniqueId='-615681935' name='FOFFFON' label='' min='0.0' max='1.0' bdresolution='1' automationEnabled='false' value='1.0'>
      <line name='' version='2' max='1.0' min='0.0' bdresolution='1' color='-8355712' rightBound='false' endPointsLinked='false'>
        <linePoint x='0.0' y='1.0'/>
      </line>
    </parameter>
  </parameterList>
</effect>