From 0b539d32183e21e0b41fed1c71d9bf91efb774f1 Mon Sep 17 00:00:00 2001 From: Tobias Doerffel Date: Sun, 15 Jun 2008 12:55:58 +0000 Subject: [PATCH] moved STK-voices plugins to lmms-extras git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1139 0778d3d1-df1d-0410-868b-ea421aaaa00d --- plugins/stk/voices/Makefile.am | 16 - plugins/stk/voices/b3/Makefile.am | 46 --- plugins/stk/voices/b3/artwork.png | Bin 63916 -> 0 bytes plugins/stk/voices/b3/b3_instrument.cpp | 103 ----- plugins/stk/voices/b3/b3_instrument.h | 46 --- plugins/stk/voices/b3/b3_instrument_view.cpp | 110 ------ plugins/stk/voices/b3/b3_instrument_view.h | 51 --- plugins/stk/voices/b3/b3_model.cpp | 88 ----- plugins/stk/voices/b3/b3_model.h | 86 ----- plugins/stk/voices/b3/b3_processor.cpp | 51 --- plugins/stk/voices/b3/b3_processor.h | 42 -- plugins/stk/voices/b3/logo.png | Bin 659 -> 0 bytes plugins/stk/voices/bandedwg/Makefile.am | 46 --- plugins/stk/voices/bandedwg/artwork.png | Bin 65590 -> 0 bytes .../voices/bandedwg/bandedwg_instrument.cpp | 105 ----- .../stk/voices/bandedwg/bandedwg_instrument.h | 46 --- .../bandedwg/bandedwg_instrument_view.cpp | 121 ------ .../bandedwg/bandedwg_instrument_view.h | 53 --- .../stk/voices/bandedwg/bandedwg_model.cpp | 98 ----- plugins/stk/voices/bandedwg/bandedwg_model.h | 100 ----- .../voices/bandedwg/bandedwg_processor.cpp | 53 --- .../stk/voices/bandedwg/bandedwg_processor.h | 42 -- plugins/stk/voices/bandedwg/logo.png | Bin 659 -> 0 bytes plugins/stk/voices/blow_bottle/Makefile.am | 46 --- plugins/stk/voices/blow_bottle/artwork.png | Bin 64915 -> 0 bytes .../blow_bottle/blow_bottle_instrument.cpp | 102 ----- .../blow_bottle/blow_bottle_instrument.h | 47 --- .../blow_bottle_instrument_view.cpp | 89 ----- .../blow_bottle/blow_bottle_instrument_view.h | 50 --- .../voices/blow_bottle/blow_bottle_model.cpp | 79 ---- .../voices/blow_bottle/blow_bottle_model.h | 63 --- .../blow_bottle/blow_bottle_processor.cpp | 53 --- .../blow_bottle/blow_bottle_processor.h | 43 --- plugins/stk/voices/blow_bottle/logo.png | Bin 659 -> 0 bytes plugins/stk/voices/blow_hole/Makefile.am | 46 --- plugins/stk/voices/blow_hole/artwork.png | Bin 64595 -> 0 bytes .../voices/blow_hole/blow_hole_instrument.cpp | 103 ----- .../voices/blow_hole/blow_hole_instrument.h | 46 --- .../blow_hole/blow_hole_instrument_view.cpp | 110 ------ .../blow_hole/blow_hole_instrument_view.h | 51 --- .../stk/voices/blow_hole/blow_hole_model.cpp | 88 ----- .../stk/voices/blow_hole/blow_hole_model.h | 67 ---- .../voices/blow_hole/blow_hole_processor.cpp | 51 --- .../voices/blow_hole/blow_hole_processor.h | 42 -- plugins/stk/voices/blow_hole/logo.png | Bin 659 -> 0 bytes plugins/stk/voices/bowed/Makefile.am | 46 --- plugins/stk/voices/bowed/artwork.png | Bin 64501 -> 0 bytes plugins/stk/voices/bowed/bowed_instrument.cpp | 102 ----- plugins/stk/voices/bowed/bowed_instrument.h | 46 --- .../voices/bowed/bowed_instrument_view.cpp | 100 ----- .../stk/voices/bowed/bowed_instrument_view.h | 50 --- plugins/stk/voices/bowed/bowed_model.cpp | 83 ---- plugins/stk/voices/bowed/bowed_model.h | 79 ---- plugins/stk/voices/bowed/bowed_processor.cpp | 50 --- plugins/stk/voices/bowed/bowed_processor.h | 42 -- plugins/stk/voices/bowed/logo.png | Bin 659 -> 0 bytes plugins/stk/voices/brass/Makefile.am | 46 --- plugins/stk/voices/brass/artwork.png | Bin 64414 -> 0 bytes plugins/stk/voices/brass/brass_instrument.cpp | 102 ----- plugins/stk/voices/brass/brass_instrument.h | 46 --- .../voices/brass/brass_instrument_view.cpp | 100 ----- .../stk/voices/brass/brass_instrument_view.h | 50 --- plugins/stk/voices/brass/brass_model.cpp | 83 ---- plugins/stk/voices/brass/brass_model.h | 79 ---- plugins/stk/voices/brass/brass_processor.cpp | 50 --- plugins/stk/voices/brass/brass_processor.h | 42 -- plugins/stk/voices/brass/logo.png | Bin 659 -> 0 bytes plugins/stk/voices/clarinet/Makefile.am | 46 --- plugins/stk/voices/clarinet/artwork.png | Bin 64618 -> 0 bytes .../voices/clarinet/clarinet_instrument.cpp | 103 ----- .../stk/voices/clarinet/clarinet_instrument.h | 46 --- .../clarinet/clarinet_instrument_view.cpp | 110 ------ .../clarinet/clarinet_instrument_view.h | 51 --- .../stk/voices/clarinet/clarinet_model.cpp | 88 ----- plugins/stk/voices/clarinet/clarinet_model.h | 86 ----- .../voices/clarinet/clarinet_processor.cpp | 51 --- .../stk/voices/clarinet/clarinet_processor.h | 42 -- plugins/stk/voices/clarinet/logo.png | Bin 659 -> 0 bytes plugins/stk/voices/flute/Makefile.am | 46 --- plugins/stk/voices/flute/artwork.png | Bin 64192 -> 0 bytes plugins/stk/voices/flute/flute_instrument.cpp | 103 ----- plugins/stk/voices/flute/flute_instrument.h | 46 --- .../voices/flute/flute_instrument_view.cpp | 110 ------ .../stk/voices/flute/flute_instrument_view.h | 51 --- plugins/stk/voices/flute/flute_model.cpp | 88 ----- plugins/stk/voices/flute/flute_model.h | 86 ----- plugins/stk/voices/flute/flute_processor.cpp | 51 --- plugins/stk/voices/flute/flute_processor.h | 42 -- plugins/stk/voices/flute/logo.png | Bin 659 -> 0 bytes plugins/stk/voices/fmvoices/Makefile.am | 46 --- plugins/stk/voices/fmvoices/artwork.png | Bin 64699 -> 0 bytes .../voices/fmvoices/fmvoices_instrument.cpp | 103 ----- .../stk/voices/fmvoices/fmvoices_instrument.h | 46 --- .../fmvoices/fmvoices_instrument_view.cpp | 110 ------ .../fmvoices/fmvoices_instrument_view.h | 51 --- .../stk/voices/fmvoices/fmvoices_model.cpp | 88 ----- plugins/stk/voices/fmvoices/fmvoices_model.h | 86 ----- .../voices/fmvoices/fmvoices_processor.cpp | 51 --- .../stk/voices/fmvoices/fmvoices_processor.h | 42 -- plugins/stk/voices/fmvoices/logo.png | Bin 659 -> 0 bytes plugins/stk/voices/include/stk_instrument.h | 168 -------- .../stk/voices/include/stk_instrument_view.h | 181 --------- plugins/stk/voices/include/stk_model.h | 184 --------- plugins/stk/voices/include/stk_processor.h | 363 ----------------- plugins/stk/voices/include/stk_voice.h | 364 ------------------ plugins/stk/voices/metal/Makefile.am | 46 --- plugins/stk/voices/metal/artwork.png | Bin 64403 -> 0 bytes plugins/stk/voices/metal/logo.png | Bin 659 -> 0 bytes plugins/stk/voices/metal/metal_instrument.cpp | 103 ----- plugins/stk/voices/metal/metal_instrument.h | 46 --- .../voices/metal/metal_instrument_view.cpp | 110 ------ .../stk/voices/metal/metal_instrument_view.h | 51 --- plugins/stk/voices/metal/metal_model.cpp | 88 ----- plugins/stk/voices/metal/metal_model.h | 86 ----- plugins/stk/voices/metal/metal_processor.cpp | 51 --- plugins/stk/voices/metal/metal_processor.h | 42 -- plugins/stk/voices/moog/Makefile.am | 46 --- plugins/stk/voices/moog/artwork.png | Bin 64499 -> 0 bytes plugins/stk/voices/moog/logo.png | Bin 659 -> 0 bytes plugins/stk/voices/moog/moog_instrument.cpp | 102 ----- plugins/stk/voices/moog/moog_instrument.h | 46 --- .../stk/voices/moog/moog_instrument_view.cpp | 100 ----- .../stk/voices/moog/moog_instrument_view.h | 50 --- plugins/stk/voices/moog/moog_model.cpp | 83 ---- plugins/stk/voices/moog/moog_model.h | 79 ---- plugins/stk/voices/moog/moog_processor.cpp | 50 --- plugins/stk/voices/moog/moog_processor.h | 42 -- plugins/stk/voices/percflute/Makefile.am | 46 --- plugins/stk/voices/percflute/artwork.png | Bin 64581 -> 0 bytes plugins/stk/voices/percflute/logo.png | Bin 659 -> 0 bytes .../voices/percflute/percflute_instrument.cpp | 103 ----- .../voices/percflute/percflute_instrument.h | 46 --- .../percflute/percflute_instrument_view.cpp | 110 ------ .../percflute/percflute_instrument_view.h | 51 --- .../stk/voices/percflute/percflute_model.cpp | 88 ----- .../stk/voices/percflute/percflute_model.h | 86 ----- .../voices/percflute/percflute_processor.cpp | 51 --- .../voices/percflute/percflute_processor.h | 42 -- plugins/stk/voices/resonate/Makefile.am | 46 --- plugins/stk/voices/resonate/artwork.png | Bin 64713 -> 0 bytes plugins/stk/voices/resonate/logo.png | Bin 659 -> 0 bytes .../voices/resonate/resonate_instrument.cpp | 102 ----- .../stk/voices/resonate/resonate_instrument.h | 46 --- .../resonate/resonate_instrument_view.cpp | 100 ----- .../resonate/resonate_instrument_view.h | 50 --- .../stk/voices/resonate/resonate_model.cpp | 83 ---- plugins/stk/voices/resonate/resonate_model.h | 79 ---- .../voices/resonate/resonate_processor.cpp | 50 --- .../stk/voices/resonate/resonate_processor.h | 42 -- plugins/stk/voices/rhodey/Makefile.am | 46 --- plugins/stk/voices/rhodey/artwork.png | Bin 64730 -> 0 bytes plugins/stk/voices/rhodey/logo.png | Bin 659 -> 0 bytes .../stk/voices/rhodey/rhodey_instrument.cpp | 103 ----- plugins/stk/voices/rhodey/rhodey_instrument.h | 46 --- .../voices/rhodey/rhodey_instrument_view.cpp | 110 ------ .../voices/rhodey/rhodey_instrument_view.h | 51 --- plugins/stk/voices/rhodey/rhodey_model.cpp | 88 ----- plugins/stk/voices/rhodey/rhodey_model.h | 86 ----- .../stk/voices/rhodey/rhodey_processor.cpp | 51 --- plugins/stk/voices/rhodey/rhodey_processor.h | 42 -- plugins/stk/voices/src/stk_model.cpp | 122 ------ plugins/stk/voices/tubebell/Makefile.am | 46 --- plugins/stk/voices/tubebell/artwork.png | Bin 64458 -> 0 bytes plugins/stk/voices/tubebell/logo.png | Bin 659 -> 0 bytes .../voices/tubebell/tubebell_instrument.cpp | 103 ----- .../stk/voices/tubebell/tubebell_instrument.h | 46 --- .../tubebell/tubebell_instrument_view.cpp | 110 ------ .../tubebell/tubebell_instrument_view.h | 51 --- .../stk/voices/tubebell/tubebell_model.cpp | 88 ----- plugins/stk/voices/tubebell/tubebell_model.h | 86 ----- .../voices/tubebell/tubebell_processor.cpp | 51 --- .../stk/voices/tubebell/tubebell_processor.h | 42 -- plugins/stk/voices/wurley/Makefile.am | 46 --- plugins/stk/voices/wurley/artwork.png | Bin 64596 -> 0 bytes plugins/stk/voices/wurley/logo.png | Bin 659 -> 0 bytes .../stk/voices/wurley/wurley_instrument.cpp | 103 ----- plugins/stk/voices/wurley/wurley_instrument.h | 46 --- .../voices/wurley/wurley_instrument_view.cpp | 110 ------ .../voices/wurley/wurley_instrument_view.h | 51 --- plugins/stk/voices/wurley/wurley_model.cpp | 88 ----- plugins/stk/voices/wurley/wurley_model.h | 86 ----- .../stk/voices/wurley/wurley_processor.cpp | 51 --- plugins/stk/voices/wurley/wurley_processor.h | 42 -- 183 files changed, 11237 deletions(-) delete mode 100644 plugins/stk/voices/Makefile.am delete mode 100644 plugins/stk/voices/b3/Makefile.am delete mode 100644 plugins/stk/voices/b3/artwork.png delete mode 100644 plugins/stk/voices/b3/b3_instrument.cpp delete mode 100644 plugins/stk/voices/b3/b3_instrument.h delete mode 100644 plugins/stk/voices/b3/b3_instrument_view.cpp delete mode 100644 plugins/stk/voices/b3/b3_instrument_view.h delete mode 100644 plugins/stk/voices/b3/b3_model.cpp delete mode 100644 plugins/stk/voices/b3/b3_model.h delete mode 100644 plugins/stk/voices/b3/b3_processor.cpp delete mode 100644 plugins/stk/voices/b3/b3_processor.h delete mode 100644 plugins/stk/voices/b3/logo.png delete mode 100644 plugins/stk/voices/bandedwg/Makefile.am delete mode 100644 plugins/stk/voices/bandedwg/artwork.png delete mode 100644 plugins/stk/voices/bandedwg/bandedwg_instrument.cpp delete mode 100644 plugins/stk/voices/bandedwg/bandedwg_instrument.h delete mode 100644 plugins/stk/voices/bandedwg/bandedwg_instrument_view.cpp delete mode 100644 plugins/stk/voices/bandedwg/bandedwg_instrument_view.h delete mode 100644 plugins/stk/voices/bandedwg/bandedwg_model.cpp delete mode 100644 plugins/stk/voices/bandedwg/bandedwg_model.h delete mode 100644 plugins/stk/voices/bandedwg/bandedwg_processor.cpp delete mode 100644 plugins/stk/voices/bandedwg/bandedwg_processor.h delete mode 100644 plugins/stk/voices/bandedwg/logo.png delete mode 100644 plugins/stk/voices/blow_bottle/Makefile.am delete mode 100644 plugins/stk/voices/blow_bottle/artwork.png delete mode 100644 plugins/stk/voices/blow_bottle/blow_bottle_instrument.cpp delete mode 100644 plugins/stk/voices/blow_bottle/blow_bottle_instrument.h delete mode 100644 plugins/stk/voices/blow_bottle/blow_bottle_instrument_view.cpp delete mode 100644 plugins/stk/voices/blow_bottle/blow_bottle_instrument_view.h delete mode 100644 plugins/stk/voices/blow_bottle/blow_bottle_model.cpp delete mode 100644 plugins/stk/voices/blow_bottle/blow_bottle_model.h delete mode 100644 plugins/stk/voices/blow_bottle/blow_bottle_processor.cpp delete mode 100644 plugins/stk/voices/blow_bottle/blow_bottle_processor.h delete mode 100644 plugins/stk/voices/blow_bottle/logo.png delete mode 100644 plugins/stk/voices/blow_hole/Makefile.am delete mode 100644 plugins/stk/voices/blow_hole/artwork.png delete mode 100644 plugins/stk/voices/blow_hole/blow_hole_instrument.cpp delete mode 100644 plugins/stk/voices/blow_hole/blow_hole_instrument.h delete mode 100644 plugins/stk/voices/blow_hole/blow_hole_instrument_view.cpp delete mode 100644 plugins/stk/voices/blow_hole/blow_hole_instrument_view.h delete mode 100644 plugins/stk/voices/blow_hole/blow_hole_model.cpp delete mode 100644 plugins/stk/voices/blow_hole/blow_hole_model.h delete mode 100644 plugins/stk/voices/blow_hole/blow_hole_processor.cpp delete mode 100644 plugins/stk/voices/blow_hole/blow_hole_processor.h delete mode 100644 plugins/stk/voices/blow_hole/logo.png delete mode 100644 plugins/stk/voices/bowed/Makefile.am delete mode 100644 plugins/stk/voices/bowed/artwork.png delete mode 100644 plugins/stk/voices/bowed/bowed_instrument.cpp delete mode 100644 plugins/stk/voices/bowed/bowed_instrument.h delete mode 100644 plugins/stk/voices/bowed/bowed_instrument_view.cpp delete mode 100644 plugins/stk/voices/bowed/bowed_instrument_view.h delete mode 100644 plugins/stk/voices/bowed/bowed_model.cpp delete mode 100644 plugins/stk/voices/bowed/bowed_model.h delete mode 100644 plugins/stk/voices/bowed/bowed_processor.cpp delete mode 100644 plugins/stk/voices/bowed/bowed_processor.h delete mode 100644 plugins/stk/voices/bowed/logo.png delete mode 100644 plugins/stk/voices/brass/Makefile.am delete mode 100644 plugins/stk/voices/brass/artwork.png delete mode 100644 plugins/stk/voices/brass/brass_instrument.cpp delete mode 100644 plugins/stk/voices/brass/brass_instrument.h delete mode 100644 plugins/stk/voices/brass/brass_instrument_view.cpp delete mode 100644 plugins/stk/voices/brass/brass_instrument_view.h delete mode 100644 plugins/stk/voices/brass/brass_model.cpp delete mode 100644 plugins/stk/voices/brass/brass_model.h delete mode 100644 plugins/stk/voices/brass/brass_processor.cpp delete mode 100644 plugins/stk/voices/brass/brass_processor.h delete mode 100644 plugins/stk/voices/brass/logo.png delete mode 100644 plugins/stk/voices/clarinet/Makefile.am delete mode 100644 plugins/stk/voices/clarinet/artwork.png delete mode 100644 plugins/stk/voices/clarinet/clarinet_instrument.cpp delete mode 100644 plugins/stk/voices/clarinet/clarinet_instrument.h delete mode 100644 plugins/stk/voices/clarinet/clarinet_instrument_view.cpp delete mode 100644 plugins/stk/voices/clarinet/clarinet_instrument_view.h delete mode 100644 plugins/stk/voices/clarinet/clarinet_model.cpp delete mode 100644 plugins/stk/voices/clarinet/clarinet_model.h delete mode 100644 plugins/stk/voices/clarinet/clarinet_processor.cpp delete mode 100644 plugins/stk/voices/clarinet/clarinet_processor.h delete mode 100644 plugins/stk/voices/clarinet/logo.png delete mode 100644 plugins/stk/voices/flute/Makefile.am delete mode 100644 plugins/stk/voices/flute/artwork.png delete mode 100644 plugins/stk/voices/flute/flute_instrument.cpp delete mode 100644 plugins/stk/voices/flute/flute_instrument.h delete mode 100644 plugins/stk/voices/flute/flute_instrument_view.cpp delete mode 100644 plugins/stk/voices/flute/flute_instrument_view.h delete mode 100644 plugins/stk/voices/flute/flute_model.cpp delete mode 100644 plugins/stk/voices/flute/flute_model.h delete mode 100644 plugins/stk/voices/flute/flute_processor.cpp delete mode 100644 plugins/stk/voices/flute/flute_processor.h delete mode 100644 plugins/stk/voices/flute/logo.png delete mode 100644 plugins/stk/voices/fmvoices/Makefile.am delete mode 100644 plugins/stk/voices/fmvoices/artwork.png delete mode 100644 plugins/stk/voices/fmvoices/fmvoices_instrument.cpp delete mode 100644 plugins/stk/voices/fmvoices/fmvoices_instrument.h delete mode 100644 plugins/stk/voices/fmvoices/fmvoices_instrument_view.cpp delete mode 100644 plugins/stk/voices/fmvoices/fmvoices_instrument_view.h delete mode 100644 plugins/stk/voices/fmvoices/fmvoices_model.cpp delete mode 100644 plugins/stk/voices/fmvoices/fmvoices_model.h delete mode 100644 plugins/stk/voices/fmvoices/fmvoices_processor.cpp delete mode 100644 plugins/stk/voices/fmvoices/fmvoices_processor.h delete mode 100644 plugins/stk/voices/fmvoices/logo.png delete mode 100644 plugins/stk/voices/include/stk_instrument.h delete mode 100644 plugins/stk/voices/include/stk_instrument_view.h delete mode 100644 plugins/stk/voices/include/stk_model.h delete mode 100644 plugins/stk/voices/include/stk_processor.h delete mode 100644 plugins/stk/voices/include/stk_voice.h delete mode 100644 plugins/stk/voices/metal/Makefile.am delete mode 100644 plugins/stk/voices/metal/artwork.png delete mode 100644 plugins/stk/voices/metal/logo.png delete mode 100644 plugins/stk/voices/metal/metal_instrument.cpp delete mode 100644 plugins/stk/voices/metal/metal_instrument.h delete mode 100644 plugins/stk/voices/metal/metal_instrument_view.cpp delete mode 100644 plugins/stk/voices/metal/metal_instrument_view.h delete mode 100644 plugins/stk/voices/metal/metal_model.cpp delete mode 100644 plugins/stk/voices/metal/metal_model.h delete mode 100644 plugins/stk/voices/metal/metal_processor.cpp delete mode 100644 plugins/stk/voices/metal/metal_processor.h delete mode 100644 plugins/stk/voices/moog/Makefile.am delete mode 100644 plugins/stk/voices/moog/artwork.png delete mode 100644 plugins/stk/voices/moog/logo.png delete mode 100644 plugins/stk/voices/moog/moog_instrument.cpp delete mode 100644 plugins/stk/voices/moog/moog_instrument.h delete mode 100644 plugins/stk/voices/moog/moog_instrument_view.cpp delete mode 100644 plugins/stk/voices/moog/moog_instrument_view.h delete mode 100644 plugins/stk/voices/moog/moog_model.cpp delete mode 100644 plugins/stk/voices/moog/moog_model.h delete mode 100644 plugins/stk/voices/moog/moog_processor.cpp delete mode 100644 plugins/stk/voices/moog/moog_processor.h delete mode 100644 plugins/stk/voices/percflute/Makefile.am delete mode 100644 plugins/stk/voices/percflute/artwork.png delete mode 100644 plugins/stk/voices/percflute/logo.png delete mode 100644 plugins/stk/voices/percflute/percflute_instrument.cpp delete mode 100644 plugins/stk/voices/percflute/percflute_instrument.h delete mode 100644 plugins/stk/voices/percflute/percflute_instrument_view.cpp delete mode 100644 plugins/stk/voices/percflute/percflute_instrument_view.h delete mode 100644 plugins/stk/voices/percflute/percflute_model.cpp delete mode 100644 plugins/stk/voices/percflute/percflute_model.h delete mode 100644 plugins/stk/voices/percflute/percflute_processor.cpp delete mode 100644 plugins/stk/voices/percflute/percflute_processor.h delete mode 100644 plugins/stk/voices/resonate/Makefile.am delete mode 100644 plugins/stk/voices/resonate/artwork.png delete mode 100644 plugins/stk/voices/resonate/logo.png delete mode 100644 plugins/stk/voices/resonate/resonate_instrument.cpp delete mode 100644 plugins/stk/voices/resonate/resonate_instrument.h delete mode 100644 plugins/stk/voices/resonate/resonate_instrument_view.cpp delete mode 100644 plugins/stk/voices/resonate/resonate_instrument_view.h delete mode 100644 plugins/stk/voices/resonate/resonate_model.cpp delete mode 100644 plugins/stk/voices/resonate/resonate_model.h delete mode 100644 plugins/stk/voices/resonate/resonate_processor.cpp delete mode 100644 plugins/stk/voices/resonate/resonate_processor.h delete mode 100644 plugins/stk/voices/rhodey/Makefile.am delete mode 100644 plugins/stk/voices/rhodey/artwork.png delete mode 100644 plugins/stk/voices/rhodey/logo.png delete mode 100644 plugins/stk/voices/rhodey/rhodey_instrument.cpp delete mode 100644 plugins/stk/voices/rhodey/rhodey_instrument.h delete mode 100644 plugins/stk/voices/rhodey/rhodey_instrument_view.cpp delete mode 100644 plugins/stk/voices/rhodey/rhodey_instrument_view.h delete mode 100644 plugins/stk/voices/rhodey/rhodey_model.cpp delete mode 100644 plugins/stk/voices/rhodey/rhodey_model.h delete mode 100644 plugins/stk/voices/rhodey/rhodey_processor.cpp delete mode 100644 plugins/stk/voices/rhodey/rhodey_processor.h delete mode 100644 plugins/stk/voices/src/stk_model.cpp delete mode 100644 plugins/stk/voices/tubebell/Makefile.am delete mode 100644 plugins/stk/voices/tubebell/artwork.png delete mode 100644 plugins/stk/voices/tubebell/logo.png delete mode 100644 plugins/stk/voices/tubebell/tubebell_instrument.cpp delete mode 100644 plugins/stk/voices/tubebell/tubebell_instrument.h delete mode 100644 plugins/stk/voices/tubebell/tubebell_instrument_view.cpp delete mode 100644 plugins/stk/voices/tubebell/tubebell_instrument_view.h delete mode 100644 plugins/stk/voices/tubebell/tubebell_model.cpp delete mode 100644 plugins/stk/voices/tubebell/tubebell_model.h delete mode 100644 plugins/stk/voices/tubebell/tubebell_processor.cpp delete mode 100644 plugins/stk/voices/tubebell/tubebell_processor.h delete mode 100644 plugins/stk/voices/wurley/Makefile.am delete mode 100644 plugins/stk/voices/wurley/artwork.png delete mode 100644 plugins/stk/voices/wurley/logo.png delete mode 100644 plugins/stk/voices/wurley/wurley_instrument.cpp delete mode 100644 plugins/stk/voices/wurley/wurley_instrument.h delete mode 100644 plugins/stk/voices/wurley/wurley_instrument_view.cpp delete mode 100644 plugins/stk/voices/wurley/wurley_instrument_view.h delete mode 100644 plugins/stk/voices/wurley/wurley_model.cpp delete mode 100644 plugins/stk/voices/wurley/wurley_model.h delete mode 100644 plugins/stk/voices/wurley/wurley_processor.cpp delete mode 100644 plugins/stk/voices/wurley/wurley_processor.h diff --git a/plugins/stk/voices/Makefile.am b/plugins/stk/voices/Makefile.am deleted file mode 100644 index 1e547a463..000000000 --- a/plugins/stk/voices/Makefile.am +++ /dev/null @@ -1,16 +0,0 @@ -SUBDIRS = b3 \ - bandedwg \ - blow_bottle \ - blow_hole \ - bowed \ - brass \ - clarinet \ - flute \ - fmvoices \ - metal \ - moog \ - percflute \ - resonate \ - rhodey \ - tubebell \ - wurley diff --git a/plugins/stk/voices/b3/Makefile.am b/plugins/stk/voices/b3/Makefile.am deleted file mode 100644 index 14cf364ed..000000000 --- a/plugins/stk/voices/b3/Makefile.am +++ /dev/null @@ -1,46 +0,0 @@ -AUTOMAKE_OPTIONS = foreign 1.4 - - -INCLUDES = -I@stk_includes@ -I$(top_srcdir)/include -I$(top_srcdir)/src/lib -I. -I$(top_srcdir)/plugins/stk/voices/include - - -AM_CXXFLAGS := $(AM_CXXFLAGS) $(QT_CXXFLAGS) -DPLUGIN_NAME="b3" - - -%.moc: ./%.h - $(MOC) -o $@ $< - - -MOC_FILES = ./b3_model.moc - -BUILT_SOURCES = $(MOC_FILES) ./embedded_resources.h -EMBEDDED_RESOURCES = $(wildcard *png) - -./embedded_resources.h: $(EMBEDDED_RESOURCES) - $(BIN2RES) $(EMBEDDED_RESOURCES) > $@ - -EXTRA_DIST = $(EMBEDDED_RESOURCES) - - -CLEANFILES = $(MOC_FILES) ./embedded_resources.h - - - -pkglib_LTLIBRARIES = libb3.la - -libb3_la_SOURCES = b3_model.cpp \ - b3_model.h \ - b3_processor.cpp \ - b3_processor.h \ - b3_instrument.cpp \ - b3_instrument.h \ - b3_instrument_view.cpp \ - b3_instrument_view.h \ - $(top_srcdir)/plugins/stk/voices/src/stk_model.cpp \ - stk_model.h - - - -libb3_la_LDFLAGS = -L@stk_lib@ -lstk -Wl,-export-dynamic - -$(libb3_la_SOURCES): ./embedded_resources.h diff --git a/plugins/stk/voices/b3/artwork.png b/plugins/stk/voices/b3/artwork.png deleted file mode 100644 index 712b2c14e4b5c4cb931daa454b0dbbad24bc5aae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 63916 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 diff --git a/plugins/stk/voices/b3/b3_instrument.cpp b/plugins/stk/voices/b3/b3_instrument.cpp deleted file mode 100644 index 762ee87ac..000000000 --- a/plugins/stk/voices/b3/b3_instrument.cpp +++ /dev/null @@ -1,103 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "engine.h" -#include "note_play_handle.h" - -#include "b3_instrument.h" -#include "b3_instrument_view.h" -#include "b3_processor.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embedded_resources.h" - - -extern "C" -{ - -plugin::descriptor b3_plugin_descriptor = -{ - STRINGIFY_PLUGIN_NAME( PLUGIN_NAME ), - "B3", - QT_TRANSLATE_NOOP( "pluginBrowser", - "Organ noises" ), - "Danny McRae ", - 0x0100, - plugin::Instrument, - new pluginPixmapLoader( "logo" ), - NULL -} ; - -} - - -b3Instrument::b3Instrument( instrumentTrack * _channel_track ): - stkInstrument( _channel_track, &b3_plugin_descriptor ) -{ - model()->operator4()->setTrack( _channel_track ); - model()->operator3()->setTrack( _channel_track ); - model()->lfoSpeed()->setTrack( _channel_track ); - model()->lfoDepth()->setTrack( _channel_track ); - model()->adsrTarget()->setTrack( _channel_track ); -} - - - - -b3Instrument::~b3Instrument() -{ -} - - - - -QString b3Instrument::nodeName( void ) const -{ - return( b3_plugin_descriptor.name ); -} - - - - -pluginView * b3Instrument::instantiateView( QWidget * _parent ) -{ - return( new b3InstrumentView( this, _parent ) ); -} - - - - -extern "C" -{ - -// neccessary for getting instance out of shared lib -plugin * lmms_plugin_main( model * _model, void * _data ) -{ - return( new b3Instrument( static_cast( _data ) ) ); -} - - -} - - diff --git a/plugins/stk/voices/b3/b3_instrument.h b/plugins/stk/voices/b3/b3_instrument.h deleted file mode 100644 index 405f699e4..000000000 --- a/plugins/stk/voices/b3/b3_instrument.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _B3_INSTRUMENT_H -#define _B3_INSTRUMENT_H - -#include "stk_instrument.h" - -#include "b3_processor.h" -#include "b3_model.h" - - -class b3Instrument : public stkInstrument -{ -public: - b3Instrument( instrumentTrack * _channel_track ); - virtual ~b3Instrument( void ); - - QString nodeName( void ) const; - - pluginView * instantiateView( QWidget * _parent ); -}; - -#endif diff --git a/plugins/stk/voices/b3/b3_instrument_view.cpp b/plugins/stk/voices/b3/b3_instrument_view.cpp deleted file mode 100644 index 459bafab4..000000000 --- a/plugins/stk/voices/b3/b3_instrument_view.cpp +++ /dev/null @@ -1,110 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include -#include -#include - -#include "b3_instrument_view.h" - -#include -#include - -#include "engine.h" -#include "gui_templates.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embed.cpp" - - -b3InstrumentView::b3InstrumentView( b3Instrument * _instrument, QWidget * _parent ) : - stkInstrumentView( _instrument, _parent ) -{ - QVBoxLayout * vl = new QVBoxLayout( m_topView ); - QHBoxLayout * h1 = new QHBoxLayout(); - QHBoxLayout * h2 = new QHBoxLayout(); - QHBoxLayout * h3 = new QHBoxLayout(); - - - m_operator4 = new knob( knobSmall_17, m_topView, tr( "Operator 4" ) ); - m_operator4->setLabel( tr( "Operator 4" ) ); - m_operator4->setHintText( tr( "Operator 4:" ) + " ", "" ); - - m_operator3 = new knob( knobSmall_17, m_topView, tr( "Operator 3" ) ); - m_operator3->setLabel( tr( "Operator 3" ) ); - m_operator3->setHintText( tr( "Operator 3:" ) + " ", "" ); - - m_lfoSpeed = new knob( knobSmall_17, m_topView, tr( "LFO Speed" ) ); - m_lfoSpeed->setLabel( tr( "LFO Speed" ) ); - m_lfoSpeed->setHintText( tr( "LFO Speed:" ) + " ", "" ); - - m_lfoDepth = new knob( knobSmall_17, m_topView, tr( "LFO Depth" ) ); - m_lfoDepth->setLabel( tr( "LFO Depth" ) ); - m_lfoDepth->setHintText( tr( "LFO Depth:" ) + " ", "" ); - - m_adsrTarget = new knob( knobSmall_17, m_topView, tr( "ADSR Target" ) ); - m_adsrTarget->setLabel( tr( "ADSR Target" ) ); - m_adsrTarget->setHintText( tr( "ADSR Target:" ) + " ", "" ); - - h1->addWidget( m_operator4 ); - h1->addWidget( m_operator3 ); - - h2->addWidget( m_lfoSpeed ); - h2->addWidget( m_lfoDepth ); - - h3->addWidget( m_adsrTarget ); - - vl->addLayout( h1 ); - vl->addLayout( h2 ); - vl->addLayout( h3 ); - - setAutoFillBackground( TRUE ); - QPalette pal; - pal.setBrush( backgroundRole(), PLUGIN_NAME::getIconPixmap( "artwork" ) ); - setPalette( pal ); -} - - - - -b3InstrumentView::~b3InstrumentView() -{ -} - - - - -void b3InstrumentView::modelChanged( void ) -{ - stkInstrumentView::modelChanged(); - - b3Instrument * inst = castModel(); - m_operator4->setModel( inst->model()->operator4() ); - m_operator3->setModel( inst->model()->operator3() ); - m_lfoSpeed->setModel( inst->model()->lfoSpeed() ); - m_lfoDepth->setModel( inst->model()->lfoDepth() ); - m_adsrTarget->setModel( inst->model()->adsrTarget() ); -} - - - diff --git a/plugins/stk/voices/b3/b3_instrument_view.h b/plugins/stk/voices/b3/b3_instrument_view.h deleted file mode 100644 index 4757163bc..000000000 --- a/plugins/stk/voices/b3/b3_instrument_view.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _B3_INSTRUMENT_VIEW_H -#define _B3_INSTRUMENT_VIEW_H - -#include "knob.h" - -#include "stk_instrument_view.h" -#include "b3_instrument.h" - - -class b3InstrumentView: public stkInstrumentView -{ -public: - b3InstrumentView( b3Instrument * _instrument, QWidget * _parent ); - virtual ~b3InstrumentView( void ); - -private: - virtual void modelChanged( void ); - - knob * m_operator4; - knob * m_operator3; - knob * m_lfoSpeed; - knob * m_lfoDepth; - knob * m_adsrTarget; -}; - -#endif diff --git a/plugins/stk/voices/b3/b3_model.cpp b/plugins/stk/voices/b3/b3_model.cpp deleted file mode 100644 index 416d8e03e..000000000 --- a/plugins/stk/voices/b3/b3_model.cpp +++ /dev/null @@ -1,88 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "b3_model.h" - - -b3Model::b3Model( bool _monophonic, - StkFloat _portamento, - StkFloat _bend, - StkFloat _bend_range, - bool _velocity_sensitive_lpf, - StkFloat _velocity_sensitive_q, - StkFloat _volume, - StkFloat _pan, - StkFloat _spread, - StkFloat _operator4, - StkFloat _operator3, - StkFloat _lfo_speed, - StkFloat _lfo_depth, - StkFloat _adsr_target ): - stkModel( _monophonic, _portamento, _bend, _bend_range, _velocity_sensitive_lpf, _velocity_sensitive_q, _volume, _pan, _spread ), - m_operator4( new floatModel( _operator4, 0.0f, 128.0f, 0.1f, this ) ), - m_operator3( new floatModel( _operator3, 0.0f, 128.0f, 0.1f, this ) ), - m_lfoSpeed( new floatModel( _lfo_speed, 0.0f, 128.0f, 0.1f, this ) ), - m_lfoDepth( new floatModel( _lfo_depth, 0.0f, 128.0f, 0.1f, this ) ), - m_adsrTarget( new floatModel( _adsr_target, 0.0f, 128.0f, 0.1f, this ) ) -{ -} - - - - -b3Model::~b3Model() -{ - delete m_operator4; - delete m_operator3; - delete m_lfoSpeed; - delete m_lfoDepth; - delete m_adsrTarget; -} - - - - -void b3Model::saveSettings( QDomDocument & _doc, QDomElement & _parent ) -{ - stkModel::saveSettings( _doc, _parent ); - m_operator4->saveSettings( _doc, _parent, "operator4" ); - m_operator3->saveSettings( _doc, _parent, "operator3" ); - m_lfoSpeed->saveSettings( _doc, _parent, "lfospeed" ); - m_lfoDepth->saveSettings( _doc, _parent, "lfodepth" ); - m_adsrTarget->saveSettings( _doc, _parent, "adsrtarget" ); -} - - - - -void b3Model::loadSettings( const QDomElement & _this ) -{ - stkModel::loadSettings( _this ); - m_operator4->loadSettings( _this, "operator4" ); - m_operator3->loadSettings( _this, "operator3" ); - m_lfoSpeed->loadSettings( _this, "lfospeed" ); - m_lfoDepth->loadSettings( _this, "lfodepth" ); - m_adsrTarget->loadSettings( _this, "adsrtarget" ); -} - diff --git a/plugins/stk/voices/b3/b3_model.h b/plugins/stk/voices/b3/b3_model.h deleted file mode 100644 index 5dcad0e5a..000000000 --- a/plugins/stk/voices/b3/b3_model.h +++ /dev/null @@ -1,86 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _B3_MODEL_H -#define _B3_MODEL_H - -#include "stk_model.h" - - -class b3Model: public stkModel -{ -public: - b3Model( bool _monophonic = FALSE, - StkFloat _portamento = 0.0f, - StkFloat _bend = 0.0f, - StkFloat _bend_range = 2.0f, - bool _velocity_sensitive_lpf = TRUE, - StkFloat _velocity_sensitive_q = 0.5f, - StkFloat _volume = 1.0f, - StkFloat _pan = 0.0f, - StkFloat _spread = 0.0f, - StkFloat _operator4 = 64.0f, - StkFloat _operator3 = 64.0f, - StkFloat _lfo_speed = 64.0f, - StkFloat _lfo_depth = 64.0f, - StkFloat _adsr_target = 64.0f ); - ~b3Model(); - - inline floatModel * operator4( void ) const - { - return( m_operator4 ); - } - - inline floatModel * operator3( void ) const - { - return( m_operator3 ); - } - - inline floatModel * lfoSpeed( void ) - { - return( m_lfoSpeed ); - } - - inline floatModel * lfoDepth( void ) const - { - return( m_lfoDepth ); - } - - inline floatModel * adsrTarget( void ) const - { - return( m_adsrTarget ); - } - - virtual void saveSettings( QDomDocument & _doc, QDomElement & _parent ); - - virtual void loadSettings( const QDomElement & _this ); - -private: - floatModel * m_operator4; - floatModel * m_operator3; - floatModel * m_lfoSpeed; - floatModel * m_lfoDepth; - floatModel * m_adsrTarget; -}; - -#endif diff --git a/plugins/stk/voices/b3/b3_processor.cpp b/plugins/stk/voices/b3/b3_processor.cpp deleted file mode 100644 index e05ff7eb7..000000000 --- a/plugins/stk/voices/b3/b3_processor.cpp +++ /dev/null @@ -1,51 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include "b3_processor.h" -#include "config_mgr.h" - - -b3Processor::b3Processor( sample_rate_t _sample_rate ): - stkProcessor( _sample_rate ) -{ -} - - - - -b3Processor::~b3Processor() -{ -} - - - - -void b3Processor::setControls( b3Model * _model ) -{ - voice()->controlChange( 2, _model->operator4()->value() ); - voice()->controlChange( 4, _model->operator3()->value() ); - voice()->controlChange( 11, _model->lfoSpeed()->value() ); - voice()->controlChange( 1, _model->lfoDepth()->value() ); - voice()->controlChange( 128, _model->adsrTarget()->value() ); - m_delayRead = m_delayWrite - static_cast( _model->spread()->value() ); -} diff --git a/plugins/stk/voices/b3/b3_processor.h b/plugins/stk/voices/b3/b3_processor.h deleted file mode 100644 index df225bc7f..000000000 --- a/plugins/stk/voices/b3/b3_processor.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _B3_PROCESSOR_H -#define _B3_PROCESSOR_H - -#include "BeeThree.h" - -#include "stk_processor.h" - -#include "b3_model.h" - -class b3Processor: public stkProcessor -{ -public: - b3Processor( sample_rate_t _sample_rate ); - ~b3Processor( void ); - - void setControls( b3Model * _model ); -}; - -#endif diff --git a/plugins/stk/voices/b3/logo.png b/plugins/stk/voices/b3/logo.png deleted file mode 100644 index 93fcd1746131e93516a5c85394decef1d7df2561..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 659 zcmV;E0&M+>P)BB%v^%K{!OpGvZ5fKp)5fL#?O|eA$Le0=`hnTRw z&NAP2XGBCqM8p+UMnyzKL_|cyXEn``*j+PR>3}$HZJnjhUh$2`EjM4U%iQEaZ~461 zxJr!GENm6e*Pq$3&r@7UEwPH`r!hUf_O>>uVvDczH&-Y?!b>wOBYBlI{ z+N8^CiYH8nclFf;eisX>Bkzfas=+Gpb(LP*#H44doe}Y|>#GCbikqv!M)9TryTnQB z>SET5h(lg>pJg>GmpbD&bF0BlvB|JFYGuvFo%Wa%5i#Nwi|Zn85r=CQM#QK%=IZ)u z78$bHN5(`Px4PPROuSPKmWVMcoe~dJXL_wMEcR6!+r`FeFeG+Wc~tyrMg1L?i<8yH z0dadZ*eaf@Dc%;}8K}><6$h(@LGe>H=yTc`12xSx z#>7+A%4YXe8w(v4PgV=}iw~>8D)Cj#aJNYlZmSC%5MO%4b>`?dXoH`{uzA(OOX7uU zuu;5GEo>5_7T0;kMMOkI#6e4|ja}m2YOqs0TrIF$>@%m%af1zZ7&d0Y2}itdolEK> tj*4rm!H5{FHWvCpY^$!WuCD)&KLEu%@0qNKIFkSX002ovPDHLkV1i3NG93T_ diff --git a/plugins/stk/voices/bandedwg/Makefile.am b/plugins/stk/voices/bandedwg/Makefile.am deleted file mode 100644 index cb8c8e10a..000000000 --- a/plugins/stk/voices/bandedwg/Makefile.am +++ /dev/null @@ -1,46 +0,0 @@ -AUTOMAKE_OPTIONS = foreign 1.4 - - -INCLUDES = -I@stk_includes@ -I$(top_srcdir)/include -I$(top_srcdir)/src/lib -I. -I$(top_srcdir)/plugins/stk/voices/include - - -AM_CXXFLAGS := $(AM_CXXFLAGS) $(QT_CXXFLAGS) -DPLUGIN_NAME="bandedwg" - - -%.moc: ./%.h - $(MOC) -o $@ $< - - -MOC_FILES = ./bandedwg_model.moc - -BUILT_SOURCES = $(MOC_FILES) ./embedded_resources.h -EMBEDDED_RESOURCES = $(wildcard *png) - -./embedded_resources.h: $(EMBEDDED_RESOURCES) - $(BIN2RES) $(EMBEDDED_RESOURCES) > $@ - -EXTRA_DIST = $(EMBEDDED_RESOURCES) - - -CLEANFILES = $(MOC_FILES) ./embedded_resources.h - - - -pkglib_LTLIBRARIES = libbandedwg.la - -libbandedwg_la_SOURCES = bandedwg_model.cpp \ - bandedwg_model.h \ - bandedwg_processor.cpp \ - bandedwg_processor.h \ - bandedwg_instrument.cpp \ - bandedwg_instrument.h \ - bandedwg_instrument_view.cpp \ - bandedwg_instrument_view.h \ - $(top_srcdir)/plugins/stk/voices/src/stk_model.cpp \ - stk_model.h - - - -libbandedwg_la_LDFLAGS = -L@stk_lib@ -lstk -Wl,-export-dynamic - -$(libbandedwg_la_SOURCES): ./embedded_resources.h diff --git a/plugins/stk/voices/bandedwg/artwork.png b/plugins/stk/voices/bandedwg/artwork.png deleted file mode 100644 index c3c3fa78a5910267bcab9ca8bd27ab4df7a04305..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65590 zcmWh!1yCDX6oulnxVyW%yL)kmmg4U24#6E-+@ZL8ad)@i?he6z{${c}lSwkO$$R%6 zyHVejWsnf@5g{NTkmO_~)xcNK|4;ZY;4@s@q&4^gYoZ_{3Gw;=Bd@D883N+-Oiofv z!*i{(E8@4|VCv=OBQGTK$`EA~WwIEx1vKp!a)iXfFJon?i>H5F;!d^FzC(~DO2T3& zDsvOZ^gm3zA5OhdZFMZwSU*69TnXN7l(ro7U-~_+YIayJMqlY^E`Sdp5V*LwxVgDG zKR>^|PC(NRoSU0Fkm(=+RWvne(h$AOAhpkJY-}tom8`o~`|t}0JftdvKp*1pY4q~Yu8); zaT;_QFYE<~^}jX>dEuXqGQL54lW!@PGMD^SkiVXUBCYv!90Worg2~rIfrHHuHc~=a z&Tc0rnh`i1mGVx|+d&WMHoL>N5fIU!D3h^_(aZYnW{-4#e>y;7Zx{1CUdG^E0DtBr zf=tLuy5@aaUW!aC_`DxP!xembc`4N4ao$+2*?%uRt%hN3sPdg<5tSv+VewZ}0YDhB zpOCxh-EV_C0nXKOZzht2-vZl>AfSSb;JD5@(rfO!?W4r>j@bjA1j!X~r9!;g);%p3 z+}6*vAGF;A?I3okhKXlF^al@j_t!7SPc?azo=O46JyRWTPlAZb&}0=TppAC3Gi4D{ z@5#g|k~@i_8ka6)8x(m|V;fuBzcn?>rL;x?rw#e}y~&b>6qK9 zIXY&^er8|q6MX?ZvC-Wt$^3qfG*YTrT`s-TGOm6k|6t~iDlQ25;8^G!NvqO7Hu8yh zkU3&}AlHf!ZV`BqKs|-Dktdv+l4&~3CE7IH%qk``zBkMsS`b(h;3SM;EZjOW zw7}=@xSx-Ejz++?QCzhTNKbusNaI-NB@@;Q`OtJHDnb!h6JSbew zg_QtoW0cnSG!DJ|8~ZWn)#Y0B3=GTFh8^aUS(=qvRXTOMvj_3cjNr8&MFPNK((ClR znJZSnVK!*}(fdW151U!`= zH1}Ecz?;UHug#!U@tZ-b+8|S)&2y(9%scYkbSHQafOAri^LIUZF@|RV%kPxC%Un}4 z6;_6$I`!`=U2yrCOT&DBZNtk>Y`;VZ^9B_&9IT&)Pw+gPjj3r9XCi5xxFV$)-oRbr zt$yr6GilY2ZA6l!YXA8}`wPCb6%=biGZmDPExX3qzpqpeD^70Ksk=r$LhVKHaLhzX z!4n;ps-!?})*PMRNYHrKSFb2K0Q+1}&q}_1Lup7G$PKnfon$ORz0AO4z!(49$k+&U`uesO#!Fw{FEqf8hLY~hk-QJi+e77SM)BIIXb$yjAi2I4vJ7JIz^RL|( zlF|^kVA1?zD$(;&|k8JgPEo7Ask%V z>O!P`iaBTJ=wVhjBqN)8C7THQ-*Vd*9q0AqEIn`RBCgIS#p$Q}V+=K& zZ?_C@F87sy_tyO+g|>*jBn9TSXOegTbNj&mr(=^(BP7EVly|S4Fr3pducPeY(zqxL znxP}9kGs}fnewW)^LwUT93#h_m!n+cXWtIboiI+e;W#zygRWkkk+ivR5|Aw8`g&)qzR8`^B5skEYsmX;>24ulXD z(uuE|;Z(%txoANgvKU`W<&^G11AwUaa5$g2Tt!avEzkO{tvCEJ6-h!UqaYkK0G^GGp208=^ZX)` zy0$|iu_enrVwCD}=!shcfeL(oS*e_6*Ub=titvjm8qYi>Gi{R?e+*~lZ-@4iDS@kn z6a|O0aEdC=&33o5<(hQ*9{USDrX=vOSgCb3<5GmEVC6p9fqS9ba>79O;l9abb#Fxk zDk(Dc)790rvMMK5(^c(lql{@RkB&y9o8jW(YHDf%g90dwSkH^|Cug9W%t5 zu5^GF2o=O|9Of&`jgUpoYm=4vPof#BTOXG6rMAc^5~Y6qN`9qSzt#@_wEySEY9wOo zS|y<&EJ!fvUxvZn+EySO87%dazq}ko?9~8H?bb)VP zD|IKpC&B1yQ-6CxPc!<9n-dys&Pz}m-{Mc`?(YBas5{ABd*7~+^|Dh?EtPHY^_Xjb zgEKgZXr>amYyYBUs~Yfm%knw5kCC^Gsy$bj=MF2yVxVqE(VG`K6!ZA!e(GG*tXK*T zH%#BYO{z+^ZzwBNC-K#Cnigs&4IhtK4qwkhMcZN-49FfrE34a2b9wfKmyCSpJ{!Wr zZ-4T%`faVx6HK4D6y`?s!?3dT-%o_c#;h=nknD&5r9Dwj>dFw+Q(hM|*akZ8J>h#< zm6c|@XK`wGo&1a-av!5BHSl{_+&%b;&4~KCfO%@Q>sZryJ9bvn^RZ@AbF!a60^aSn zSN=~OEkN(HNuI5R2OglO1WgU-W_{~JE8tX}r}H<8|Es=$(H;%|dHk}`e4!C|{~qNA zOKzUiZS~f~$QgNdRazg2eB+HzL;`bRt9IcMt9)XZt7t&;3{LGi{f%E!L6l z#(oD_Tvd1J;7`W?53&|sEOPy{_`%@7{>*>|bUM=zVRR$$)bntt@6hwGL{QVy?XV?` z@B`^@c*;Xw;sPz+AUY9iT$2;Uhu?hdU_?ES1o{j3P8NBspT95p2_adR7f_PAJiLlm z*O*<88-J)tQb%iJkkc71_*$;o+>GR<{Yh1(laMb!M5Y<^7)>hPm20o&6L|gGpsT|_V0MPJm^)b&j# zo2>LZ06bHkx*>lmT>dnE(=)(Vgw>UF2=CoaaHXfX3=$Jpm^;ljUO~6Ev%=z<&S2Za z>3N31Kb(~zVe)$d_wFR(f}CT70xZ?L+|Re8Pf*P#X!`SQI^eS<;B^?w4=Pwo0x7nL~iD?_5NYfY0ol}qi zFhWK6J%uZ8%L?*X`>OjjPGm2{V=F-0@A)`6{$8iO2t!DH>vS5t+~&cH=VNS~#m1aV z_x0&YTVh)1mGG-Rx~5`2yaz!ypD!aT0WaRJM0=>T%gJ0Z)D)%^XO_q+Vms}F5brLJ zwZI%XXW`&DKo_duwq`R=GsxRxUWv!=f&uLw+$b=z8TH#0hXVN>pLZfYe_?P~Okw6n zKBMw(Jwr2P)X%ZwqpNDAXh&ivw$W;|PIL&025xOWWM58AY$rl+hTfLA{5c5oCthju z@u3v*mZ}Nms&%@dFTmeHDbCS+)-d8H1;kBV;tqnQ`uXGd!v{KYx z-p9QW*F0w};3m7_bJayNhgKEIE2&5x2i{eN=cvkW!6XHIHyVCa!5CpD`z<|wo6lzq zCkcwIC9f5RGn3wbajST%r*{6O+clbW{y@(RkT6Di3j@NWf%-{POzO2Nd zEHb#Mn9}!QCE83{a($erfSyWwp7WDc{2-4dTTXsYe_p@f1iXp&iHW>l_s83Xbvulo zO!5FRb!`$A0+PE~oR`OL?S-q50U?6V+aXdj?ayn{rOxJ3!RYCKtgeNG*iU;BQ{n|K zdFv|sNX_8A(P9v|C49_bitKp-jlso(uH) z`GVclRX>ju?@Wqwsa`m|5?VZBVqsC-Q%6H_A;!Z(+DF*jnF9np%ur$;eFb0`FW~GKQ}c19AJ?W3V1);`gl9)dAo4< zJR4{EEVv7JUk-4if4P2Gj^&i1nrWdFJ?3NSx=&jAmkjRZp(HAxI*%)(Jk+`JB2+*) zm&o6E?z7!>#ay=O_+Ip-TM4k?)kuiBrjN&YARkYl9XeXU&?mf zjWXFk>~r1@&+*;<2RT{q(HQH%u+BK`9)G+jUbNy zl$LXZ*Z<=#7r-l7Xemq%Ux=P7o7l?yac&_p|3Z~+P~dXHx59wC#)v*yJO#eTIft`w zt(3^yipuJRwi4f#LZ`&s5!}IHS=|guWy`AK}dg_2r-v4Q5yfy?g6FlcY1$$ zmKojy%NAXd1X3efC&1C6Thvj<$C5J)WO}jkItYV2GPc~fuiq)3H`-jfW3kP)Px){= z)JqiEnkg?2E|EK#=V}+PDB=axj?^$2Tgy&1Y?Wi+NIVk=?zQx|x0XUv9=d_TOa$2q zCbETtZdCw}EkB+(qA&b(75wbMPUuJ{$$Ygh>q+EL_$C=$C5jDPg0|aCLdl*9KOqtE z#rfFmfcZpf(Y4_Z388&ApIM5IjL6i^LF!-QC3)WWt%TPk9O>L9ssMJbYAu3qGZMqZ zK8);Ir+*al%;C6BxY=xPMC$H(-XCg8zWKh@@m5a=Fe!9pVR$-L#ubGydTTeBOa|HtpB&5zA_o!z=y?e!HGW4Sm+QRhmTNGMxewV~{ z=_bx!L-!S+#D;utsnPj0&kWUMuZ@YLBKTy0$NIGClS@oh65=8)-amQ***`JBX#*MC zN`S+JvD*!93fH!__^XYRH-4uD)e@H-8-wA24#{AJym3f|B$v8zHie_M1eaqE?)+@5>_oe z7qr-R^5B`~MMU=jKT7CU!zpX^28P8aEBex3-Krfd<8*QwiqmR=D@LPkgXvj^V)Hzx z5$|Mnin;WZt*hqip%yiE;pi@5gokc-*>XQ=FJ=%L>&LMzDpZWfu6@$`vn(2NIP17a){N-EBTNHR zPuP$Q1`RCzA?>CAmC)1ik+(uR>m!ESRmpF2Y%5j!YY7`|mOQH9LQ*`VuC8ZkN}{A5 zuRHSxti|0Jjw#U}V%CF$gNKk8r}T7k#8^b$F7NW$Gi|1^a@IJ(dcQWnz0qKl+_Qm_ zUA~RDm}?A!QjQb!x2#;fw8Bm3JEx3>)EXap6wQY3-6XzJ;$f%P-Tj)N7JoYxcTCuGckH)c#S9#` zK;&G{n)tSt#>*&Np7^wh^eYv3 z`N$lcUXJiK^h>Li*rf>nJ`^t8Ud1*k-J(xI4<(5rhlE`Ik8 zQ|R4zl5-*k4S@buSET8c9aMRwgP4CC`7LEnlknfakbGRX^kfQwR%voaq!$#gfbSXb z;wt_hUU&62kR#D4-0>KOJlj|C@b=NYeAO9{R$Pvyil54xwGLO^=|-L>P0Rj(r}rl9 z$;vV;sc9$^`)G(fQRBJz3vb(q%Hxx0x`PfK)oV8*kUTVfJ10)ZdM`+Qtuv<_xv{0` z*G5PC%BAy^G(i!Wuxso^MJmHI-w`33{A%>6UD=1;v^UFFjvadYdnlp$+3j(qRvf86 z#xCQLi8gsGV8J2!Hae7Rr+HBbNhLXw@@oi~>`XyCU#Z`!G z8G91u#*8-x=4TL>GDg8eXh$u7b>6A$#U(a=OeI`GS8&5jUuXbsQH3^}6y(LAjT0AS z2cKgAg3WDm=c9jEz5mw0_9Gw9r)yEPLmEo0*YOr}@cAQqEIfdD!Rco4P-GL}>oKfS z)$!ilw8-aEz^6xI2cw45(^l8}Blr~-fG#KH?#KI8z~`z(?#|~B6vY%xmlnqHTT{r2 zMQGR0Mp+*>i5fa2oq_k=uPnzA?2{e@&y%RM()I697s`BYC7{Kh@9Up-wn}{GPBk_> zx{}>RoR$djoPvx5dS4gGp+1j3M}Xh8x4e#s%1v2%?vw5v(1hd-2YN6NQ{&uyki#iN z!Sbi)P^LxX*A1}#leBSK3hE5_#J~@NCa>Khm_M2PQcUn$ui`C|KqskQpuV%==`Niz zR^lB#{|_dUjei38Fr!wJ!}?*a;;&XFlpP&e2st zxE>pb|BPX7Z;Nk2-xlN>j7jb>EELepmqMEZJJNSj2>CUrmLFwdAyh5YF7Iff{em0s zQijMa#TMPl43%l$e>-3ac-ekO;T$fIVjCBEKg<1}f|&4-cn-*n(S3RHaSH@s8ebw`n1L|4VoPkmi z_Bw7mx;7NvX^fa0l}8=4HrF=4WM#saH|*g@D;l3rMMXa%b|QWyc7=mNx5-$kK_DzT1jZ<%G5i+3@ZnHO|DdWa%* z`F?59QWQ-NZHRnHqCW#Rvva`b`_q;?Z=kH{fRZBD-!qfbfVVdnv}B!b%WU4+&~mHNzY zzlprF(h|;*n21NI(7Mu4XK9(V6I;`=iOHpF{olP+^#Vvc2vN{8qcf&CQxyR>p*^YwTDqa(KW%4jC^~`PvVwzkFjC?! z`15QwvU+sSk{(31(yJVQ$|dL~2cuvFlLS}GTJpZ<=a`Oro9LT%TUXg`)n)H=y9u8d(;ZutwOzLhQVK_#l2K4Oj7Y?yVm0u5C&Ml7? ze~cEKn~kT9Nze81I3JTlM&>V-Vo$(bbv^CCk^E1j3&aiaYDeVa;qnCp49+l89ad_0 zb|Oe}L;{4}i=@$im2AP=V$3@yJr*Ypw7XRKLcin3z|w=_S1X5qa1bEK(qL>*4KOKzS1!6zsY@Bg$U# zJzOvSsrze)G@%iH$xrc$N~Y{t7@?eX__iZaX`XLb$+T3Y)DSA+wXm zcM-=pvXmQjuItMdJX3C+3?1&#O_%5)L=EAlqxpLm&eh%PSbhegYWES&8(9ym?DbJ1 zJMXYx#=rcuabL4Evwb9G7L=lN19}~e9`aqb?p5cqNo2+7Wcib)A%`kd406;9x7cGT zDZpU0okc$vw{|z`{FO8A3IVS;2KLW1CVgrc(J|3od)k67A(I4RD!;3Kuwb!yHSs8w zM>ems&YQ?-qL9w)cO3+0>Pj{Q6%A+ebZvsd2%&TAGA#%PIv5AniRb?KTtCpNBl*LV z9OJiQ+tD0i)dh;Xqwyt!dQ+z^i!6>P;a_&O747YMiLWQ6xy+ZsK99Dsd+Kl~(M>jr zx!$LFdcNC1uYdxJME8GRV_JCvO_AqL)Du`<$0veVZCA&NqNy5L*D8-13aB6Wae^|j zLXTUvp&p?h#ME+x@;D^jRr1g%E_#NS$$ljU3h@mReKK_GV1D~UKC<9B+U(JPF6kt|6?Ebj*!G>c$5*WuZvan2# zMG~2`n6#626`>!e?jhjbBe z09U7Sql^Ut!;b!+W)ypv@DwxIrx__cR&?YyLLE=%&3TW%zOhu47b-73`8Jkgu zv_SRjHP=&o>>d!uEaCiptbzk5>fL{RswFTmq!e?7-#hR88%#&hSHzV4 zw?-Jsq>$`zL#g4OE`|03Ik=Wj*iOFRs5@5m&Y-~KJfHhk+yoYCXXi}) z-_MKzlYms~lV}4Y{}(gWBF~Ov0u%&OrnDLdW9QH+jUw6RMysY4f|zf=h<1(B4c#+c zDeF`!6j+^Jb60wPbp%;S@$2xGV7Gte(v-M9P=YQjDgqlu%zTe4zXroQVmnHAxf5Fw zH#dyj^DFh8IyIHoHrN6Nb|~5*3vR6j)}R zn?0J&jiC9c?MGIK``I(Uln{}59a>xRkXZH5og(u`M|;e#8Rxh~mf%`Ze1qS~(4EHq zdx0OCM<|86sRD#GHcIzFnm+ZLcORMzp%{LB(WexS;r(_9%G(pcZr6vL1lZAm^P+Z+ zOGy6h;fKkE`Ux20(7%I}r^Mu2!je}`8I!eszlNVR*077slr~CcTJi^b&PHyFnqbc> zxsSBGa;m>Sr?xTM&|6lUS>O)LLr&Wp?GUc>9{L=yY`$G*=1>onM@(mN0nk->Qz-Eo zqX+hKeI9jVV}>lRa=Nte#sCt!V)-;E=S^?#L}@gua|QWn%uZW=PnrFoy3M)42P?Am z3xNTanY6;jxCN&6BDAFqNFE5CpgxQr&_w70>=FTw4Y`vUY=zC$)g?>pWo0H`@MRbj zhWd3aa;Q#d$QN8$!@Xs?A}`r|pKAf%Y8u&agX|d*Y|#X{@hw@Ih`Bg_8E~sZpqF>_ ziG{jN{oxyhIZ?pSn%$i>6I`0iK{jW@Q~}67nz%Gv5;*fz2=Fs*SbkZ6gNY_X4)l^y z%_$?IazaVjCW!y^m)Q7J!T(Z0CyjpVjf&YQv!E&k5>f`r=%RbL=AF3nQrJ2PlcOQv z;w}q3`eD+O?*f2yOU%_?V2!tO*5|TKCb~xFuk>D%w$Ytr4o|?-lD--O`TH_Op3mqk z-p%EXzY>}{V&}u}4^pzf*v0;ToX6pVTIhBY!^!VS98Zbnk+==VR{IALq z(_|D>Wm>)zqg+sLq7!ImUyZLz@L63^Q#0?9ciUHQ8b-EHJ4vG?Z6ec7XfujA0u*+H z9zDdvU3eC1x5aCJ1q0Zc*_EzwLAavjW3mztO1ks2oO&I@OZ*=u2D6O;|EefW!hLH? zRC3L?fp^pC)P)#I)cz)Ff9%^&sJR}wWI-(cHvq72{Y8`;Pr9I|7J30c;fZ5f5JP++ zX@(zLp)eyVbcm?o>ihDV^E;JoutnKs#rDRUWU?0s$h*6R5zPN!Rtia$-HT5VrHp}+80F~pTPH4~%SeX?bK-d@2DK|bEpLiSl#%(PC9PW@FX`LUk#Ca-?sI|+hrq@XO^G?rbzEoxT z1q@*tLP}$gRI)hbZdKK*4=By4U#Nb=*x>hI3>AIA3kdU!q^4FwERLAbRB9M1sxSD` z(jN@-Rdy3!N&Xs2pY}ws`W*74q(5;|R1ST%oi~@0O}ETiyicZ)mP#zNxOYJa4w*1v ziCO)2#w9}XOb5rWy7-^4s)ZCJI=q_xL)qM%+9Zr6)ogiMEYL8VrBd60Y*j}~Oa2r# zlC(-twe3)ug*L4`A|*8~3kNyFPyxVSPAwV7D%{m{xlm)!Pgb;o^`J~HZ^zx0&Z-u` zY2$JC3l7g)9!xkfFMS&_(JLMn#VOg?mX0V$ckW?B`BhTGw8d?6a$fcR8sWW$w zbEo3n>oiRC^x#fF;8ic%Ci0VMP3ve^IiY{VZq`oiXo%T~+V1?+svRJU&|+E=N~IH7B*zlk?*Vi>2}l33B8sM#mtO+F zgVQZ^aUZu}f&6i;Qbpu_q1sU320M?$!}K$cIl2iTNp0-0*=RLS2{l-xu%s_nSgep{ zNl0mX(}suBdQ6TNMx^DnOc)$)Wn(81k0a6Lw{%gjS>5%hSM?V56-T}#3RMb*Aj7u#NhmLag{T~!cWSOKJC|?IGmW_&jH}j@r*qytOPOWP857gHS=KF49u*FH| zgnX!3DRYtdBYM`QqJckA;4~CEbL~S0h7_3&0X;ycu^@w5r6-~z^5F~98x0Vvic=xf z>AivjircmCPZZlOqxP@~_Pl|SZ{71{C<4X^PCl6}oi2PkE%xrz9`)p(1$s9%<5`SE zLrzorZ9|Xz)N-==;%=tmguu8kVA7^JzDWm-ge<`7c0-4Of4e=7Z;PH`kWMf~yUu*_ zRNyir7MV^-LOSu7QGQMM{a&m-XA3OBfP)b~x4MNEn5FGehq%SAwtet!!1;>Gr3UCO zY0+uS&-o0v*fIVj7=!koQ05-+#YQZT7YP2Ff|3g2=jsKXZ>>&x5%{@zQgln+kt6*a z21>*5zK{v`i4gGUg(IdF+D4t0iJ0^!F!-9f!t5)iQX~Hud|PS1?=R0J%#DrEr;#NZ zyb@g~O)7~F+`FsI54L)|1hMEm*?8$ke+1H?ZhsrPA(s;qPrui8P8jW;-(!`2P}n_+ zI%6@8`&3OS@*qW%D=d70;;lx0H{X>s>^wO9J$fjqi`g=t#mz75Pnd`k3zJgO0ui&F zx$sCb5rau^i|eB@W_&JDI+qjz(2=%+-G~-CW+?9j5uM4W!6Id1&(2Fs4}NjGbFRrD z9Tk;mqp_P!7{W(SN6rf;FJ^^f(EBNv=AEoyp{r3`#q{!15LYHn9P<;Ym$&bCEEd{PmNj^rS{-S^T1jkOw`6hz1B3&*WK~%V-}Il!@QaoGS-kIN?C@$wgv8XDaO=YaL-_;>hh;v+-*;S^B89 zIUhOECv#UzB7%o4=dTPp_~IQrOuPTSQqIy5i3Z3M%&@D^)5MUdK#-?WxrBOV3vd=Y z{3|x!bSD@qb}Db?_ER#0ewV+BTz3UET7j2~$K;k9AKX};Z)_~SQ?^1xKG{T}mA?r4 zQ@YW=5z|?_mXnX;iky<48lT#{&ysI7JOn8A%uh5qaPVv@i|#0{s+**Us3Vanh?E@C zgkssBO%`>SI4q^2i|Q&u54~_CZ@uwg#bwvSp@(UZh*jKp>QbWn!OWG-x`Nh!wl54l z|1<|yJv=$aN-jX|n=1FzpUIqrOZ#E6KsLK>gM7%zk|EPxiujSkWG#xM8Gr(}yi0;J zip{S&GLq}A_Ql_%hC0=B{X@EQMfQ~d)L@R*HDX6~qs%$8L1d`~^39gjhty=VPnfyVi|pkw~tFZ!({2=gK%MS}P27<;S!R`~CBK49Ux( zO{|?=#>z<}Gd6@`X7Umf=h;Vh-7k`Hmm}Nr;k`1ew>#rjKm&@4kGfZks9l16l<;Sv>@{*}_~t#5xd%VT*ozhR(bUa>Gh zObwB!tQv%AjALcs;?c{-H{oJ&XGZK-tvbAFd%cY4`X0gg`fo-zl7S%(-GdkoFLIZ1 zJdH`n8h!3%aW|Y+ch~Cu!`t-xIKMkjV<(SM;#cmC5BwLwgTKzsnm- zE}Y%YEJ^Ru*oEWVc=K{%tUZGP>7;k}XQEo!9hlK4bVSxn|5OQ7F04d9)1wS*aZT`+ z*$nFYX2zbr8MY~&sN_nF2}_7JmjzC+sv)H;;NDRpf0K<(tpE5wYys|uly{)f^JF=* z9B*%z)Ol#$WBlZ(rA=8Bm@wZFCDX%GYo+NMyq|YGfL?Hz z8^3$QR|Y^kj|R30{Fsu3Gen$83fL^+l$0n`Y7nWB_EA?w7i5CbGS_5bKknSADNQUY z>z5mTg2KCGnl|CSo#fsD{r#dM%c(-3$z^)FW?^O~GKT}yw|NhB0^WHlqJtLSX ztZr4Qpl0vCI1n1gollDt4VaqS`cv5&DTCX+TQ}@(UF=O}z-o^meRLJ#g7}aXs@lm} zatrdhb#GhdE(o+N_PfmD%2NXl!2_f6Od}B#AH6bP*lb2tN_GETs19+@k$|ffkc!ITqDx)qv1*u9g^cOIfe%Vh}0R~(Nu{}#f zAYZI@{pMF9UQ(jfC=f34xQfFFMOxZ^T0Or2e;evut zG2lb_RGU~~|HvAxU0@7(fyGtESHqvs4iE4#-esj|ECQD+zo>GlXc_aD$W{decd3gj zBZs9BeqmoGKxsx*ip|3xXnbYP4CxBf^;HE{ZPj5TkaDr_Vqcp(V{(Iz`M>g@oy-m- z=6}QOI}8km6+9V7l;|kKyH^yKXNItngoJwU6SYxNdzaBmQ(igivmt(n)0Gfa|0kI2 z^<5|Wn;*U}{1~Z}8YI@4Dmo@+F9jz99T{TsiTEQ3%rWoUN#+o%^_-v_4c;`&X2{8`?!{c2 z<-dt}zX}oiB2P=tMSg|4xwZCC!YY+MWbt7dk_R%CFdtSFGq|rNd%=m!qNDd58D4W+ zHzfx#$0{?)TSnxo6t+xfHO*F{FdEcu%Yc*Xsh2YOt$Z7PV2LKnmHitUZ*fL-KIILNv$ za~8Q?hfb9zwmQa1aC1`@KptE{UXr*L(>PRNyCl1!1!epm-Xg?Ga`EZ-Xmb? zJ?w2jf_01GOH;csG!7mD+ieX)VYM}ou*x2pfJ5bp2 z9;b&7gjKNO@sfaaacXQH3|54ftTD?&Na|wvdYa>NnF$Wm9O{{ecW`Ab5?*4udMM=% za(cfSbfOGsm79;WL%7}-v{{xaXX6k45pzN_hfRbWx48?HaAB^)bQ5VJrXORlChQ4y zOjf+EQ8M8?c>8_zEQT>NF_Fm;MRN-Auad-MzvDrZ#{t+muPmUn&s?df-V8RI!P&7g zee5`+0dWar>oc(rY;ho=A6t@nVs?}>cXyQS(_xa#3eF;zT2&;mM{Q9IoHZ)6)Baj> zqVBArPDU}G#Y2+qY%U<$5yk~WFF)BZZkDER&YZ3JajMhDGUCpTu>xG{7+F1pe>?`+ zKM4hZgw8B5;7L&OOE(@H@p{WkcS+F|I=~|@1Gg35cGt-S&bpp}ui%vPV|ve9n5*AA zT~)SkbCpr-w->@!kqDS5(yAveNTSF)E5nm$iQYrG-81Mm3rB6ay`|=yVC$h!c+PLW z0L_0!(x-M_x^13qsyPCPcJ`CmCH51;xI1g3%IXo zWrIY~sF-}5JZdUdBNmIK&0^FVQ#9!>g@;iL6U!3IIezv*%Rwb}V5_7s{K{3jn6$g;jt~^VzWYma{(Rv)U5|s#B(uq=L{U-{g&ulx;+?i`aTRno}lP zm345hsZhy(2}|NX(LOD!$#mZ5k8*oDdT)olWe(6665#*4UuR`W+ixROu&{L?hr;bu zeV$dmM_nPj49+ms$8DxiHmUILgwm;(2!btxN^Lpg8tbPG@BrgmBomwK?U2J(ZD-M> zek5(%^TaxgKs*VvBkT`X>UeP+Gm3UqEuULT@&uu}S`Kj$pngYEs1EZMDm+Z|CACZ` z&7iwk5Ugb;_70AoxhyVNAUXd6Shb^tiLD0@mslOK2lLpjd`}b%I)tT!!#|3b`X-2c z@R6w{ujX#90qdS#ZDWbUsN)!}P2T#y72Z!M=y>hKAlH3`FfG`)FT_fKP6F^1GTi&gS}S?9O6BOI+bRviI|V4UP=XsuBDpEpG5lS9 zrJIgxT#Ox_r4`4QM>~zzDs;OjQ+kEbOo}QyQ0je>Y^4_7;X^aMGZidJW$F4+^dueVRZo60N<=2S{?1!q zVtUYW>@cc?iOe{^TDR{~5<#b^pMb1UWlrSsTe~l)Y76JWLP_3~4lmv-9gR@Yr!vnV z_*+eppPe;OFPJ-q+GF~c`_S*pM*qCL*>^-#Qu1pW*8^`jv|cIFa36y9o%frBZLBBP zD=lF2Ccv!3&aFYiDt{vuuw7>hAAou4@N11$Y@Lbo_5M5bv1*a?)1h|R*ze(A5R}O}QXHcN&(H&S_}9p+Lp)j_EiLV| z{ohj&YSiUBLE{S0kxsxC|_dw;UR zQjPIZ$N1Td$`YQ0GRiU;mblV!9gt_eC`n>Xw$1^q#^*UL{2uzTV)@rXtfgMAce)m~U!Li@L?(hSt_=uNa{ zTmoI@oNt^o93;2%baa^QcwU*T(T zG28?*>;^g-2CK8BAV~9}k3Z~Y*22qD-C25$iZ>xHLOb{o^#-LfMlMxTG%xvwmQQ;4 zx6-Aa`tv2q*=&C8{34Sm#9Tro?aZ0(dq_Mh0p=4KSp;+1JO%+>8W;Me&Op~>ztbKL zi__f8MeSW=&|)mlX}^DEfOjjt8jmUbJ2(X1@sOrJP|jqy3D6Y!c;1`qn&6l}{i8Bg zP$E-O>0g5LW1G4A*#r*~Un|>q=T}9DU$R?vSL&*ZZbbJS&2NeZk=vJ}?CHaiqxVA| z&?k6;Z(954HL>RJa}(l>U)g>J2gLa26zqW+ z#DY^_6wSUw#g|Va@OWtk7p1;>f0asNlV{8aORqe>D4GBDbw9GmY72PsFA~Q3{r8*P z@7$NPl=pWN61B_4b>oj+ocf`U!T1%&P2uk0Rlpn3%JfDOl%VnFwk&lZa%$Okx}!##iz%x{$? zL*%uesE4X&z6;o8M2AUvIUfT$*_xc_fQck_$Ko#NWjerrfQRV2^dH~;T;pPNNXnxH-gk&#BMqqmok0B^_sr=Ejnqh8B^Y~^n6?Z6|Eu;o3Ptx@BXXyE<*yh=JP zu-k4u29la3E}TJOSi36eDalaOa5SUWU`1-*zrUaN1CvR8_v<~Z3cq@OE(p>RdX}mh zf9I-b*zS7U8I~^C^|>GT_yW%Mz6^+XHBN$G1{!TFjz4(*Bz2!FY*1Nvl~msKIxi6D z3CtuFc)Y*u-Q#s!ZvY2fcbvQSj-%4y3$9}`TU=IHJ{kh|D}wgRy3~AD+qa(<16Ch| z_dlFmQ)IW!8@d#{a{PWIbnS!cRtYvNTsqmFt1fxGPjy_?&l{JsCAdak2oswBvPHu?>^J_b2yfN1NMhs)rj1rc_oc6RolA2LxQr^C?Q^0yY2H)ItWd7`mQn{~7a_ zD7vWI_kO*7h3Z=DH7@G?nYiU+r&kepRX|%n{#t-m{&b~z<6M#mi+t8cHutC|!flQ& z`rIr+?*A|hL|^q5H&#K2z(CzET8JWr2Qh$Uy4j?<#>vWnbva|g6pD!$v%h4Pi1~I^!JTVV8hXJ7X|~ZVP__>T;RzLI z2Jq)ZVO$e*>qk2jfk&A=hA7cP-4L zzALqX7=z|_Ja{Lt<>1sCd|z7AQqwd2JGCO{!rf8F5Y$)i zB={!jUFbB3YZEEjtEJU!#i6^Ndmwh!dETg(SVwh8?ZAa@4G6$c2$B{k z#g_@PD105|R{i_;0qX-}7>xq^P!4%ksqI>OMrn3XlJ|>~w-p=1I4BM!GhnHuawe^8 zvcALtoebNGx7DRO%2C6QYM7Ao$IT1`43wMmw5@9ZCGA%`89Ump%BoxLa}hGL z&h}=xWKF1J>M#MuDTI^8g8;;$+XKY%FwS!#O=3?~lfZd5t&s?&T-|#PpN7riiSPV+ ze?-hQYk-}kl%J-8L5J|Sk*)?X*j}k1TU)Exz7rUkZW#75GBxkMJ0rE40>7DEs?MU0 zuhe7{G39f+eFU`F>2mEFA@15Y7z=Do0Bf!Jj_)+9l+=ILgtvI05fjz!bZY|d3-{Lw zeey169^B@!_g^QP?n)6nyzaD#FL{s6&tl#Jw?5mH+K(3sz2${UdG3+U0;)EitWtqQ zKihrX=UJcBmqmw^Fj{_qz<+6-QZ%+~I+)k_MlAdsc2sWsb_mYE=?ppP(CZ4J;%d>n z+7Nno_~i@QIvSP3V`la>e+e&jwFqp6(^h6l$BVJ68BPtF zf2peci-W3T84SR=PHWC3YyE7QL?abw|MxigcDL0AR?F_hI=$XdO{n+QFxP^u9hCBT zm4)LtZs)|+c!i+_hnR^d)}!Di4hj$VoYOPmRO_beWHbW0aor-uZ+~jIQ7B6$G&vy! zV{_2ajuhHB)f>6v7n~Yc#PnUH)$PF9rY(S1F;ns%`jE zfm|J1$d1B7l>2LM*7YlGJ0fDD?-$8e4M2``qT7yz7f30ZzuTJ#NMXMnePQ&s$b5N` z9;E^TCWAWBd=3M&7UV$8dDvy4vkAUoy!-(Y)>L1Rr~LZxd3SGQMv8UCR}H~e+XSXb$v(kv1gBYz`mbldu`KfK#l5{d&Pfq# z-WW&7+9KOauSlx2?{j|m8s}t4^&kN&H&gCoIGUJNTElwOaIj^2*$_a zQ&EPrwgdHtZm7S~(k`^1C$$;YDIju|nv6M+aF4V|9Vo14OQp|Bm5qd~3YQsCtuU6rP+Sqlit*1U|*n^5=g^(s738*5h z8KzYu=!(UiN+R;b?=Cfo=D-BJhuUNaw17OVI)}cMmwBy94yUwaGL8rvq5ZV6)8|QB zVM)m?f&wZ$^2YbK8|m#}wA!sO(hvG+C%Pv+M5$*@o$ha`ZQ*b-kTx>w4O4PNxe1oH zx~W_i!82d>ov!9WRT|M{GQWcFNtCv3vi{u}3=*7&D{iMS$`m+0YSoQAJQIU14=Yr1F(dj&el zMgUj8s0KEhC>DjLc|wMSje9o$U8r=7M+lhd6Y6P;2lN^7p3`PC@zfjuqoVI$9gW>e zVzvBo39#sf6HpG*)rfr?4LH%l$Bhu`;o&Q?taWh@LTu^=xn*gLzKqA>;u}$DdX2nr z*;HfeOpZn{x01EB3YWb=bIDoPhckHYn4bG%4?wepxk9o#4CsbHV?|?Fy_5kYHI#t> zj_*0 z>>N&{+()}94|e(GT%=Bm~hymkOMhN(+WH_kc^uD6kB;uSfbq`=q$Nw)B3wkKHW zDFL_-#ab$naprwAiHAtq3|`C-ba8xZRn}U5EMdxnNpjTF0okx%q5^nb-!_p%{`Ey$ zw}F9G1q(R3@-qB1k}$N+TF!F{WmnnLI(zc!yu&y>M%Lz3&!d%`r3~ch919t?x@}(b zTH-BF#r*)etQNfn5k7DKy;0kWnH$jz-x8x0#*!y=l&jhrP_kUX*d7MhwwY1vaO?@M|kHuVgfw=s#Sx^oO!eogUFN24h^~p8{ zL<;f{SxM5ym#b#xeGa%#puV21%BE|~)NJ%7PKMsU&2K^ox@@(}H@U4SbH!y($℘ z|MfdB06k4F?`<@hHl6jhA*lQ~j`54UTV#d$f@#dSSJK9JZqXaBlHpLQ;^(?Akgn2o zR*y-=cqOL#R*g4XWl=^ls{%c^=-)yUSW@{b5a3S;C{ z9#r=CRD8Wwk=7?Qd|E+eK)f|?AlJ%vhD4RvkpAsrllvqG-9DMnw$#8Gs4(7FhIuG3 zb_$DLk&YGcj<$~4i4~{QjG$CKL*yI z6y6Wo!8U!r%K}6Edwl$mQV>f;`;E}9bg}(Q&DNjj#AYt$TEA0oc;J%skXogaFDlY#&$J@gw9dQ+9V<|WuJCmIjmGcl=3ck z4o1wt)=6Aor!{bP@yqn_c=($^>)qmV_-GHHmNw@K26VJ^x3OZY5F?)<$&5RWI($+f zrfC&HLA5D7eAUp64k9c!6oP~Vc6Z!AtRF>alg328*QUO{Zc zylTGdX&a<8K*q+J%1MwX^oD}&q{!QO)#iWRd@caPt8J{F!Z;p6MsOBOH#j%E%xs)0 zfgtvfMp7mxnq=NJuLtJTAW?~SgD1R){3k@6ZI<;E`UMLpaa{= z5n7bvuJ12@{e9$r!pO10&^<%f?(!6I>KHt|ol7LXw`#Dfa58-sApG&Rt|G_Xt|y4e z(x&>$bgS+>-~T8BxazZ-PTjGc&vlz&1S9TqQB9_7a0ch68}C(gn)PF2 zKHp@+;MIf}&Xfn!-f0x2u^l8gKJMN|V27!eIg zEwg@~%`^6X=y3h?Z2&BA%dO3`{^LbZ&$=~BXn zoZgGnSS89nl}4o~x3&6?cl(sHm-2Bm;^$g$5t2*PbTu(zApXahUy$PKzCQM)p!9Dx%Se7;|8w zVV{oa;pD8095xc~b~x9;Gq!Lv?r+Km#5OrS)v_^0ud<>QIB$>q~9;sLvLQ zzAk|EkiN$;%X_p{2Cai343Jq>VJF-ulj}Ht94bYqe=X?fuEl+a{TZh`88ZLeeUNqQ z9{gF()Lr-z4S?Q2J*2$K2?2~qP)*BvxAfSvVgWkb zo~RFTsJz0)1up72LIC`|Aog@oIA{qlqcF=f*-WXc#gtN1-=fts)REqc(k#gn3UA4> zYAZwdg2}#^ovRUrl^yNPcoS}@Ui5=3+Fb&}C1lg1zq-sTSU-9#k!9z+kT9-!d!L`0 zO3p)ys!12e&|Ns?vtz@g&;P|C8EZ*k8@CRr0SU32D*#yL1MF~JGSWsbW1qrx>k^dRHNr2uscYfpW2lR8Lijow9vTFl}sevoRW zLRN_Vw%caAxZYscWtcEUdONY_%62RphsT=hdpCxy!hdvC*JRS}R?=~6fCCjB>DZP% z@mvEUgYX`Ca!^!gS0O=lM4uelkwe>9Qg%3fdmc7*hWBOOlZJX;b zGecZ*o8+<_kLuhNR&Hi1pP|DK#(mzX!0it%i5xj}BjNXrohLYWy_Rg4-5Q_WPG>-d zzt=^tvoxI3f20?-h3*qzzSL*SI!pLCPol+vnsi{q6*)xvywgL`hD?1vN-q$p{BzTu zqF+aP+XJIBH-A`v8f{`F)sbDzmOuXyGsITk=QOZkxp4Q67wsr5znmfN0@&e2AkU0m zbl(Uw<`sba0uE|;8v{1XS`N4$5*IeNe>R@iI3)&Ddh}Ei%^g&aCzEBgQHi0p*z=43 z6=(Y?EaWt-3s3Qa(N3-u{rWe5ekrVLSUE)pu4G#9hvES08Q8z?#rKkD#+2xo#eAIw zH1{`SOH83sh)CQqaZ4ki@DTAzmZ9j3^Qq|}sno6XNbWs4xtdub8>J5Y8)_%>IukL& z#a9CZ94YnDRCXO-$)qKtoVz=W7Wp)~nDreHK@*Fj-xQVKNq#35aU!a`p2r2E3VAl; zYDF;~DvDkhU?l`f?2x1M!v*J*+6nX3SF166yZGK}L06alpm`F%q|=U+2zDdlM?|on znEYe92dBZ&SQbnW>l^6xh`l1*(`B zehrmQ%-bTARSuM~3Xe`Yk}ii?#+4DYK~*9TA^E_f8&FF|q14n|zaruu+xyPwZt zAcMO^G!hGB6_PQl5+N*Jt4@6B;r1)Od-#X<@h7-F95idg(|I)D;nQIeo0uS$ z!9E~4iNh%UxMiSt*&ivF)Op6d`FUL zf7gB!^cAC`W+zybklVlhuwtj(=rf6zr@g55!=;7^$##Mx9yswFseNVXh@R)+rj_%L zyNB6?43HTRlj*W$_cz>sTHkO8Fl>xoO%DNBE~y=AC@Id>l8!p=^!8;icd%<=>cAEe zXgNtEw2CodC?bsTB#Fi7FJJE-%3x3U(uS}eLlOjcu#{$=sF8v4X)DFc8u4oLHl|R-*N^GM=gU${KuV203*9BOI!~Qgai!c~Rqy zvEikBaP4k{jblCt*K(-HB!BYD`GvzrMhtJ3UFOX>z2g8<{I41iDfu76AEzOn^@g*_ zjetFhj9w@bf-4?mVKWvrdS)i2H8u56hVPifsdlZzLUgIgU6-(JX9gKzgK{RGBSiQk zVollK{AC|1Gi<)KGEk@ZjhLr26}MEhJDm7WEZo`qKpe{dxoKV!ckVr5eKxM1s4Q{Q zrC1{3s-JgUNPw#4s!jV{k9Y1!*i;na!Z>!Vm)onAJ?{k3kAOGt=|zG{2u)<&*2I@h*1t4CO~J@gESv?Mq_ zXhB58%`*;bK1ZdEdGScM;+5^gtgfVDLq_Q!{ztZwAZ&2`S91!bh|xg_N>P9su59hH zh6dWC>wJRPm3c&qja9|>&3>h_Mz+E4A0D?BXRw7W*1Em}HMGSgcC6RPR`)0Zi5}c# z7fb@yANc^x^(u)EI7wGI6VdH)$|uFEJYGuDDV#@VE0QsOZp9CMKUmvG_dU( z50z#M4s{Ol1#eSPE9Flc`ez}b_2%Cn`BQ1-ZPH)9QF%Q0by*c;Ji7(kDZ8K_E=v0~ zBw$VvoSpUeVOPY+-w?D#QjBRe?7B;(OvZ~Q^o&}^dqp+EM!9$v5Dy?wQzE(O^wvsJ zg{;e7#jq7}qCZHk55;vaCf4ZiBPnzs0T2hLvN z?WlGL9p&}}I~OPGJ9O_q=+I^ijru|+((-L7C&SU$I|Zhc=*kydgJ<6}{~9k?Z+V8pU+izv!R7_Y*QGOKslMR*d8nMCNC zOjli`P%u%~P=@)IXx8OLn7EP*RE+jdm#>aSK&kX7x-W@xyO?9Nsm~|*&U+;9n?c`x zdL||wrRjx}ce&zl)zzoHia=*=s2Eph`C03KPISJIC=pzjW-#H&)F<=3INjij*jhxQ4G5E8P~pr{M<^lG>F`Bo9vZ ziM7W_EOTGF!4<~_4)4q|Mjoe8_cvZc zpSaJFICmkH{Wuk`t3qDpg((f5{l#cLZJ5cwcywC)AZM@ETmW|MFG4B zu1YfC97Z1@aE=JHR~DIX_bRCp@Mu$`SN+HP1XV{6-s*?zi#d^xlxyc1ogji%b+Xs_#|$Hi3T=^Eyx>1tn5b7s<4kEGMh z9DVodsr6CmB^+NoDWI8-a9(imEF+d-A*9;CIz8Ef*mujM>FEIThTFHqDwOhaFYq;s zkx93iqqGO|?EV+biFa_^RPDNe_B4UXNipI?LViJE1MqC>$`Om0_5Ka@kaGq! zhlZD^X}!1IQ8Uwr%`u0TsGnwOXyBDHfK(Uzj?0v_wtZ|Ujwa9(2XcBt%UXRw z#%C4U>G|YIqm$2}yvf&)20?}n8jV#6pSOiKBy%U+zz?A?%`vWjm_Mr<>p{G?5sanh zMN3@%qiV&D{?;yDe*ZO7D5FOYwmH<-zyt0xZH7D7_V60sm9-x=3eE(FKgvE~>(8;v zOQaMZu!~~rZ;%uk#0+i|9uNe^aIkWB3lO_ac@$XT@`|~BcOuwjDtKfn(g1ky#fH>P z_ROl~APQR?roNjcOb?$HF;fz-LkY=HkXSI#E7#-(NWRb1<_lXcMOFdoqpwiv8W#z9 zlaY+bsr8bqBP^3WPm~GEBT+wfoNpxRtM=Ufyh!I76T*XixbE$%3jJ?dCXGD5OQQ=v zAI2VA)Ir}CLvVarD`pvJH+MLSQyeYAv6+>;pyUj38J`hkfU=-vRA0P8tSuwLMPyaX zEF-TbpV|FfcFP%Xr+MaqAenl!iiG&u;O!nmrUvqjCIfmZM>(m<;?pnUjO%-Qsa5hH=>2GaKtTRR#i$l2 zszzUOlvNOcnmiCYKFj985i@#ir1V2&oj}>{r7|BX4Z4d{GUa*H-jr?tI;GE*FTLjx z<>kqAvBg~ksBUW)L%%U}TMkg06IRvvKM_7BH!;5+L159a_oHA*gie!(dE5R7bjbtrl{9aeZI?AG!GGUbU`92VK@}|K5q<} zfODZn?9}DJx5Fifdv(KtyGc#LO!P%~^4$4rsjteN6SZ}mU*-qSBG)j}^jj>(bHVIu zJwxZ$@$uHmXwmE`cMyzo!v@mVJ20SEN)hm>C4e(0N!y7UvNmhl2dAg^G~rLA(Y#M# zr+{*Z=FO3<&?+t5$(aNwd32e|!#_#2)K-%9?&h(m^f@gSjEyOjMCGz@_MZpSXgJ@K zq>=FpJr;mqv+p8q`{lC6K4=P70882JOn(M%u8!Y&7c<0JGGB8g?ccMOX&7RmdWFfE z4!?hqAasq`mB=|N+Cs=%GeD{nw3&;9wiltA$!YfrOq)kRQfhkQv%$IG-%Zo&0ZYd( zs>n6oDF~^tw%x?to{}{i_4Q&(@;s}CmXaQ#Es{4Sa0g5bSk)_c&HAd;JQc#!H`o)E zw1fmLs%RxI=}QUpg7D&w9>>{iEe5|G=Qxl_C3+nth6iOOeQ3F=yI-X&D9A=}LCG z{&@}eIp~!Z<%lMT+*qbnq*KX{wzUCEsLjOJQrDUA#LU$+?^Rs%yc*%LUQNe_a$DJ4 zSC8jZCO(WlOBgNqdiM1O;5mh9azgp-{#6i)IK;z*MR}M4c?C{`L9-e}#KF9;i5_@{ z8H!zgcDYMFxOp2DtJ60NQQm1t*;n>F7|BqkFwN5=ql1qyU&KcH0uVNov?(k&wX+0mCLnv2fhLwO#1N;eXCE3Fu!RZ_ zf7jBN8(i(Y5(wXP2mmNXw2XZ&?EE-pu>6LAx@)0s4555)%es27-leBXXA_OT`6t-u zI<2OG$Da7dLs}}M#t(ICmXZMCKhYrN#yK_oqK7%xGZp1i-hVmZ?>hM!x3SR$8mW8 z7A+qK)k~A#TH;hA_BONO-uc*@YfOBHAzW}n%D$$F_{AK9Rk}8eSe7~O`%O@GEs8mn zAk{;s*z5S754ZxxJfG4|hes7rkMhZ&yPe(21AF2WVpTq;*9;B^)878ouMK&>`Ddbq zOsja?el2ClNY)KGIf^s&cPa6j%*30^xEU6?q41R%McR5$Y)}tF`()%SuWcx8F)}8^ ziB041a_FCQD%l&NWFb$PToENyOmA3tPJ;m&d@Kjg3!z?W-#<_JC=u{;--YYkDjGbE zh#)0wTO1*g8(wd_8I;b^emEQ_PKoIt8Ja|zMl>C!tm!|WyTM}(ka79X5!FIs*dRF* zA|v`k0C1rQDU1D{LocVNHSxuFb5DX0FVrPee~Fg2Ypaiss;S3hX|mA$S>ZH_>7eh* z{Y!b}g}zcA(mlNBD>F@UY}) zU!GGXfsYBeEe_|4c|Pkowg&!_6)d3Hq7oc-(>iy35yp3AQICS>a!*xXq&k82O7!CI7X#@kl$ves$G=;$fEfQ zl4Z@<%?#el*gGm@8+=ru78uTWq&18STMK2WIUA3=%A0A?;LYabu}Uwcm0`lXZD0i| z7C&|pIJw?@OBrNJ_v}y|*%%9J`?>>a1*xAHhhZ_C=ZKKzI*B{1hooO{&%{?H>Svjg z9+ea^5fYj(e80}*fcm)d{1VCx z>gW7?7zG;;;pL^rrE7ND(Wz0LXI`a#$9X3=qq&=K7udmQP*Ya2#U|}KF z9!v<;ZJN&&C^Asj)8&8J5EPBH!o(>w(nX>Z@k^qn$QX6%fK}inVuC`O;~t>;EU?YA z^}$y0XpIag@Zo#|yMLAEP(nD5;lat}FVd#0cysHI-_K?6 zLEEepE`{*AYZEeK2tl0)0ADKnX0?@2%%GabN7|R;9cm&|+K2)?aP>4wUz!QIY;aOo z2M<$ZQxE>s)@8C9A2UQS!6+-MWHd}$t*WU}QfpJpc)IFHK-QD&h2@7a#26Go!q%%C z=R&N@`x@T`v>o~cvI7CTi$Nh z;Bx!ATZQ-s*?ypO z(2XXhfHa7$5k}1zD$^iLm46DpocNN~q0zlb`jQtb7eXkZaJjitAJ6QzJnQAX$+5IQ zYE8beW+*q-O99o1Gug~DqOh&7gyc+U7^yj+ey0#y%Wyf;O-{`QIu>L6xcX(;=S>Di zAY&%U|6^vfKaC{^z!@XLfmtroJM$`taS~;ZrBt2h6lbcV=)3i;m8F4 z$IhK+m5p4yh)azcH!#NO+D*AqiIxu$3I?i(jz5-nx?P6F=(#jlQaWN-4V9X(e)}?v z1lvi_OWWAwGH27k8K6s}ib)m-x|F;}>4>sZ)X}J;;*40w8OngcpAV^>0+}i6&|*j~ z_faWhBSu;ZYLy{;t=xIKjt48V2BBLqF@`oBVtIqDN;Rl%^=TN<2$BuEvIIbvK)IX- zi(Jhs8Dpn13<2S7_;0r$E0EP>E7|J#;NU(u-W(r~;=0r8wRpGpG2?w7T>hWD#Os!A z61nI;I~PEgP8-b7v2V6@rT4QYV+Ogmd#`p#A?c&R;IuGqJVbMgeqBQ|>YTQ{Zw51t!((ogVd*X)G<2&BhQ`ciD+5h6aKA&)UwZdW^J)n+1V zv1T`oU&m>N`z_a_)n7$qGRI-oi+kqcn#m}^w2cUL_XcU6!H9XoqG@K@09EIsM_6M- zljUc)X@k7txFfA5lDKN!LY>N+972>P6xuw=yMZzh=DG<^2UT}A?#IlOL1}xkEb$UH z);A>{jNzP95Vv&?jiyRx(-~==M>E~BbDoEnkse(m{qf|-uMe+lKdtTa{dJQToPO{T z#vT(KL^!Nje`mKDEt0ch2`jep?Z8SF2yk|9w1s-ADVfjr~m%bguh%=Fr2MH#+v0;eO?w`4|k0OqRgeC)` znmV`Q;?H#c{*rVe9!Oi-CaU!YfX#Z77=ILB!Y#9Ai(=Q@Sc|Wgb|XvfmmTepDZWqs zjT%zz{fSD-RsUm`lAqyanswzQd}TlH>)|um)iQ9)_>bJ2*zr;LuaJtlvv!pmU}0|! zki26!A538)`ggTMwR>4gdPw)X-6vmf^JHZHlcfvX;r%0oJFiJh_2#h%j4Jg@#fc!2 z3*4_O6A?UfXl0bdzh36`Z>Yv#q{tsIxCQEBDUTlY@i2VlA+$0q7|`|H1}Azp6l{(% zhht=fN`{Wo)C3;>O0Xc%vQh0sn1oXJM3*fYlhTI}GAo@p0)pS^vcB$T)67VyNsB&{ ztE4h6r%C{Eu$YV#<-VhCS?gOo9=$knsg5(4T6>Q(xk1t{$V#Rr1B?H|6V<9yYBf@h z2Jcm*C@7o%<*}9F?N!&siBA&P2;#P-=YgscXmh}`LNHWeuZ})#iG|>i)@OLb$g^Q&e!wiJEdm{Fi)5I%0v*$cDiK!Z&qvSeBBx_R7eaU&5zRL?*;L9S!u_N+f5sY{=r^SWrt3PEkl?7D& z{uIj-(qn~syvo2E!<4~JcXu~I#d`FbPY_vNqz(kEPZ5mtTfrs2h-JIKIbnw?w?1#mq@rX0SnDH|E(OI z;!T(zZXtPWQ%jwQVa0%1C$AR%3 z+FaB>wY4;JfB5@?G^Nvi8y3!KFtU~VYNl=s>tRP5p!;YfI*`Az;cu&M8|-66MX`%p zy-qpZyq%aE7l}9o4SvY>M-?-^N2)vwKdpOe}QwaVX{!0x)s*L2$HA4 zYQ<00#W>R#rjpAMTVoQj(ysePid9RF^|JZqonfufR2mtlxEfmyTPT7{0_Dq3)+h6Ugu^}gkP=+YlAi> zX9K|nxO&cS+J2f;0aFG`uMNs>j2v~x>Z0sV!dOj*FA)?$e{XuMZ2J4uNcbimX@pF5 z?I1z;zA4{>f1!Rv!NCiCAqH)=5J*T^6I_%)`ax*9$l4L%jnfRj?jip8tMFzn2$gcr zN@Fb#7h~%$P#aZrJ#fOTF{vO}U zyV-bT>=y!j9xi!JRz!$Dm;RNa)I;!jes9$H^T(vUWX>a_LP1zl0Ae?EO&4*bn_9KQPf+3uL5mZh`nnbHEwm_AyqXF*Bi_${$f(*_wX zhu`gey8MjWn0<74PePz7=)Fw;=-gECK{3e61_Tpw#hzdmFYmnPtdKTJ*Kfo5gy`Zi3iI2%`grf1$;r{p7~r zy!i}V(RcQ#<@Wap?yaojCjOrGBexo3q1Eq__~`wu+ku6{8dR?wn$aGkMndZG{oiNN@$XpD*LJ}IF;H!!MHcvxSHN5 zV|+X+KCC&eRdqXmR%RMAxfF&OfqPW@AISK=tXb-v;e>4VZ=8GaOpEG=^55Y?HlXEklALheH zpZ8rp#j1|m^RJ)hi{P-U*R}(n_FC{X|CNhc%nukJ4}h^Ci94!0Tw zQ}8nGq&k4K*uL(UaypF27ofr2>enw$1X znLoHAE>_|LD2Xa1n6ap^Y=XC_zqUw9q3h4j=JP@U-EK!vCeGl}s+kZdz0(5z&z1~a zOMAMF%mVHsZDo2``1}>|)~Z2vF$g5TJLO~UiRQ~6_hk|g+RFy4;Vivl$Lc2c!{JC) z67Nslf>M;zB(NCtndZ*`CJzV(40 zHM{6P7-;w;Fy-UnU;-j*-ADu1IDM_Oj*`_QP7Ov+nUH0jN=18rj;L_dHpR72>f+zt zGCT|NkC5#SWpFrF=kYpnzNu`GKFw=~rN>cKYD@+iMg7Ce0>j>;#HVOi#&f16M_hWI8dzkpTOCpjpwsHqAkHI{AN=3l*~ z=@?no$AZ`XCZO&h+)f)x3ZnCeKM^O6Z($+CqNLg1`C(sSkZd9qcRsaKeO#0Hie{T8 z&XJ7Vq5V14@iVgV?qVz1RoA*KG=ShjF`_XwP!nU-9Z#zWH`M<|%oGae>l_hQgP>Z@ z*?8CCPf{A=O^Gm#M!haztFl))*4qAX8Mg3^jyJx}1behL&xW~&=n?tyGy2`XXohui zF3`AM+FuI}9$DyQ!mzCEUh7$y>AU{^{$E93O6MJha3y98qmj@A{-s^v<)0Q76Ki`+ zCcU_?s`ZZHbG!?5*uoS*or*SgfDGs8vSQe)Cl=%9Fyv zG{zK`2st|Ry1Y;#qAA|cgWJj&DZ0GQO4*yvD26Sz+Fp3q!|YX*{;s?`SG_TSv98k& z`GuI7&o{M@q2X8Zd$E*Vlw1;nmgTzIp%muvigMp8!uCA{!@T;Ml};d2*gUQ@`c(N) zVd?bsl!62xnO>~7TERxR^MYBU+?5hxfhUN#r9ufU_|kwUjiH!A^dENeXFOru$}$o% z@@bCxor12E^<}Jm_*MIRJ_8*FZAQQ^0I`K%t0SpAk(V;-Wx4A59Dsku=K{Ai_~!XS zSLIYy7T`xA<@du$nxxf?I6t;eydaiLk`?7N4b{PCJ9}t_SkY`0M#^;y#^7Fr8ZR-#!+n0 zz+ru{;BJaFn5eqQxc6cUGKJYd^9?&;Ypikf&OY&>8?z4d2)0{gvR(O=^^si5eaLL5 zi~gsrt!xzWGRujT0Be-JSXRZDE;=`Z$h1GYh+wb}%SimLh*hr`=I}U;epGUY(5`)8 z6)w%|OqlXdhu}>N8NOZkDpb^k&)*a&NxaKGmJ1O`SQp__nSNd>h@DK%X|>hp2hZ$y z8sMom>@m5onr`}8p-;)4jfA$siQioa8mPIaC+&Xo0DmGdxY?@lfgfJMC5JSPZ}in* zCgOR=ss`C!B&SQrpGk{1pAfZKmNQyg;uI2zl#(Kyl&?pw0Gqu^40+mnaTFiFbxB7>;teOi)eA&=wwc8B9h&i7u= zf9)Sk=ka|MMAdWI-|{&zM>KQuPRukIJu_r<*#%ng0*8E@UYxXjoM>kkQ)9~(>#Az_ z1rcqmar_dw&l>B731~n+bKS9jdnC^~t@`Xe;#@$g1||9$kPQ<~M*k)c$LztMiSM_G zLMP1yvq}G9f1S2k`*($aB$5QBJVU$$WiVUkWs@qKd9lZn%-U>Hj)bodi(wnj7 zxdReI<}7&wo3-z_ZEaQS1#63{f$pmVm~T3|sYP zNYaY1*p=25XjjVA30>qL3TsX%Hz=>AmrMjDIf|HUN6{XTe}}1F<(qX`mB{+aUVaRt zxAI!8A5jCs@4LC|Y_{963=OL4Y(fCCgKyzf6}Dr~t>st8h{s`b7#GwlME|`M_CM$p zsR#&(M#hG;0>Nbn!7^}!Oq+FRe#n-!R6-$RHTi9c*q$hmjMdx=`f~*@8^xM}bc$|w zM?+1E{IC2OnN$;;_Qq@tI^A5R-wnPJuM)B|Ed{G1#)9*_kVBHn@PDGbUOdv zQ2N8syZ!Df|65d#`Ja#f&JIhRx#3<^)^~_`jb7H(m}fPxils`Piks|F;h$H3(eP8Qe!T4s(lKx@S@+T=cXv z7FTF8y8ynS+y|*eh@OK0NO;!MkRC7OFI(NBkw^k#}d3JWOcXgw*x9*Y)8tb>`!xr?ojooAIcF$jpS`v^fPP~um&u$BV> zpRWnm8~3||f!AlsV80U^@Mii#6ff7cmhKbGHu6RGcN$E!qK_%cH^)EuWWp?ur!TH$ z9QgT28hTz;Wi}SPaGB&4{jwfGxFsZEk&$q472Um8%tUVCNejtw+t-63$^KINCwR4v zoRTS!j0$C|TJ}FVdsPw`=ILm9U-VFA5B*cF`2c^?<_6_;Dq!IkjJtjBLN(mQf`+w7 z!TXxcQVILU=ot79{#s$G~bCx4%SE~8Ts~Vl7gM-AYx`$iv zRTQX-H=CJH5{H~6oNW{ve4-VGdApU58o)VE}VG_Zn8Pv2o@`SUv^*=_)=GxX}b{&07N=HsDxg{&2w#YFBtpQ55 zb&9Z8BJLJL)oYBhajX>zzSXr2osEZI)^<>`(tf|>f8!Qt+101trb^(@Bg#+l<_##h zMIS*8-Xz=d2x|K#k14b@8R0rkhV1Z$_7#;P09Y7*f&B<<7YhgcR_N4Dny|i2Devs! zD4wb#X0UxUk4qbc=m;$W_@#3jP`)sItKvHpMf0<-nM_LU82wNXsZT+Gr;iYS@TZ)> zasTDNyF~&N*SLd4t7QHR6`NLGm3M%e~}?LV?R{~oTQht-n{yt_HBBJX~s z_;6H&nH6TG{HZEIO%P6^$AQV3Apq2-tr#F1N9RMRV5AX#T#kEgeP^)?2z_kW9~=n< z+acri3p%cYqtnfYDt z25Eb`8XkvXZeEz^xLyWA2}J#dKR_{(pJGsgwd)9-(o0%2IGnjUz2v#q z`bnZzD6=40klQH)1Ue19Zq>_jeL#~)0mSY^tr;$Swl#eA5g_Mc?Z z9(wdzkfirXYdGfigr2)c3-kveULI=^K!WAv<)BC$km(`Ug~A<6SrqA@PE8FB&QO%* zrN?3@Jfb&d4T*CH^E6_Ubg-Ta@9$b)zz}xut;pcy>P#X!X-M6t?l=W9WQXY*8VoBi zAWIAJT>?rIE%nm6-5LDFS1w(?as9fm$1a>b3r=nM?wUp6%t&{yuC7*Tp!{@R(d+_F zNh4wp5-^j70bHQFai3LOCodl}N%scT=~ZO4cYXSu1nQ8j9L^hsQ4D zhhVmBy=TZtA!*_)`=ScD>B>|iP>-z7p@G3}X8VMxK`&Zb8)Kn~*Ye?l+#bR8OcXv@ zb#gQGB=9`&3Z9Yx`G7kuBT`z9JTo(A&Rny4HO@uQ!91_87d!N%KW7HP)lH7r-lo)9 zGlaWSfDK&^YM`NUZtdo#2*pW1;v97(8LIm|T%NkU;a zeXqAj)DjrO8?%N25T{B61A;)Ss6};sDu0u?DQ(+hf6B@8`&{P4pWGp4Uxx$;C|VWYs2nI;hmNuq|QMcLWW znKZ*$jnNzu%c9DwU91AXNyKsRKa6oIz{!Z(sJUs+B$9_tohHV^NX*OY?e3Q7=-@hO z7jmz?f492}28ro2$i>jdD;^X})lX4GdU)8>_ofu$w(=QOMJD&Tv>-3w7yD_7CjmPp zdZjcD zw+uzP(Lf&Nh`eeTkvFbhy?E|IND&*d?LZaMQ)?vn;^sPZX?1p`{Foh`E*U%8+Wk@P7qjQLhK*m6+P07x9TUP6 z<=h|lOGj#JvWV8}1Noc|Pc_lX5z{&|8XN^M@K2lnZpe$T1$mW3Z1vQXuDCA+ms6ue zuvP3=R@qTyW(>aSY)_@i*_%dN+(R7x3UcylUM0kv;$tPg9mIWX8qy5`XMq##IaH}V zBlu*Ib$1+m3DQ=IP|ZaW8bHP5S~Aaksu({f1uu7UdE8hF)>s{|TcQ;Nj?#bbJUlYt@7 zx>imf3zYgJO24~omG%^}|Fly~q9)J_O2m*Ft@F*Xb$m7_;0_1+!ukyOej_m%lR2oN z%-(Umg}BlkqYVLigirQ0Z!_A{olK%sjwCIXc1ODMAbju$wKIL0jIfQ+Q32(Gaa`r! zr#!QX^7|y8{%>z6;a4!{Rd;mGMtEyU$goLj41p!9CA~BrYGhcJO+nbU$E?YgsD^pU zyIg`H>9slJKeh%pNgGS-yJT^7m^;#zXlnb*p&{e$n>SC8l6NdS`;(79e)rvXH!-T( zm4KTQBn$O3Zt&1&N5W(zm3!)#V7(HM4_*k<9W_Fodls$_YiocVY)j!vhy045m5NxE ziQp&$p4j7l7^*aVUOVEr5$doHw~{mz^B3ETNJDL64`E}Et}e%*bQ>$AtWjr8g>MBQ z(G`}iM3e8O;f|(Y8V(P6Z9i=o4Pdv28rrQhEuP#`OLd~Us#;o#v{l#cw&dy%2V8Oh3b9e3Bfp=4o$jccG zW5fXPPdkjV3J5NQ{UWs?QzXtvxE@8 zdgU@f!7maFBZcC7fe0D+_i5WNcfb&HV;%7s;pZA2ez+ppJ;JJO;jrPML7NBT=iUll zq7OAu1v5z2AmuZefW>*GWl z0A40Ao#k_nRYPH$UwS+Y=hKvskRvz}6RN|`Z3G~RciNxj?I=|w@GmK?%etE?%gl%-Mfd+yY>lk#DVh%Uwvhpx8kci zcd@*1@$T*0H#vNwW_;qYcnIz>0ZqKmGW_58wU%_qYKEZon0N_1!n$Sc~`Wef{9UH(!7K=)uE>#Co+y-o0lf=r?cT z6K&xh9Jr2q?DL`Bi7q~1)89OLr0clZ_yPNQTg&WAzTmy^g8Y?z;!uatH*^NQvi|)3 zJAVEi&sWFrH2e^s7&_laCCM+&a_>*8r@V0Csv$&NM$>2)zk2xKAs+SpclJQFX#ITn zPzRomdvvEh$E+cI;_y+`^l7VJ{1796Lr>77G;tVSqXbTe_%5j8`n7A<$f0nMvd^Do z;()4u1cQa^pyNw%8#Aj>vTZ*v$%}AFs6H1isU{VR0S~;yCGq$VKm7UUpTGO|TX0FN zA24wvcTZszqA|We&+zJ49H60Z@DBX^7W9VxfB7Y7>sylDPd_~V`H!H=pZ@sxF{l$) za0p@;g97$!pUkYk!mijTU%I3>G?Yq?9qzCP;@Ko1G>RwSz`2^k@hz|8pFcf*{D<$p z`L$!4$*fa5)IV1o%r>mwFd?-cT}unDVjv!H zrG9I3_6S-8en$THKx^Gs?T?Qi|Mky*{>z{L{O3RY=`Vl!)BpMFU;oeF{)YARr=Neu zKf&|x`SVXd@$<*;zxx)ydSsOJ=-Wq+v`zhY-+uEgdE~daN?wA;ii2WB-luR-H46R- zcB`U8{1aW0khyOI{iS~OkZfD@hi?4Y`tbPYA0Y_-@TZ@C`k4oM`*S=;KXK>x-+gDC z`2Kx;qDinXG%7wMQH~bz&-+F$*VPSt+PcO11v|NNS$qh`H8NK*)Ue$O@lP&uo!_Cf zK`S`?jqcwy0r-eRiqSxSFh0&5)vL@`*`G;rnDM{;^{@C^%f_h)nh%t^#`^lr8#hkyB0qv9GTRZ!TTp1kVo+t)axC-ycdeHvVRNOCKqn;yV zWKqlrH{X#UJ{xnmjZa5)IcRd+e8;3AdAY7g8C67054?QwGS4CJEYil!uWy)Wz6C|q zlzu6!H*AyaD_7Yu@7rj^n}<=Q5F>^{UqKY(fl_VF>bP;kRwETBd>Rv_I(LtQ^Cd?K z4SjVF4A_>g4heK^Sc|SI|0#lC4tp-4b|dm#1eHFek-_JfHKb*HnOn15#K3Zd@$Q$2 z6R44wQh|n~@#~-Hk3_^RDnh0jk)2TxnH0Kl?YhPg50S2NRymR+HsV=dR(hje$Ap-% zzgw~~Y)-FTGrLZv9VZk&fkr30d_7E6`Krsy%4msK1ti!Qri!UW!4cU;V~Bp0SgA$O zQ>8w7Qi`X(w8ibM>6>qAre8@xO?|o_(`zefWv2oPaT~WzrFMA5jl9L44U#$!>1)Ar zthA)yf{5iKj6JE4w9$QAO|frHG3DAbtLkd&nt5+aQ?tX0C=G#0g#nBb*OHsP;Gez^ zOz`2hws`rkXMo6^pGrWo&}^gEm@Av(SI|9<#W~0lTjec}Swq~h+MF+RthKwtJAn2O z;Zak-qs5EDl7Lz6l6L6Dkjoi?(29$TOG+#rqA-X@Pvt?pj1A5K=Kt>*nJd4q0SzHHfY{4HCi zf7-!6+=iQRtXZA5hJSd5PV6DLfrswI1HRzjvZYJ?fy;P;$Lezhui`)aYPI^U?k->M zona^KvhG=>f3Cnk`|lq( zaG5K0+27o+p-7I>i}CLz zcHkH7#&PpW{Po;T`t@I`p((usH{;lfzs+0lPkg(Rf4g?>+_QW4ULJTBgvEjM1BWs)G7cU*c;EmI zEE~JHe}DWo9S5$b^UD5x`}Xd^19syR=lk}?zdd{HD*kru+JVNlZPVx0EnD!Z{%mD8 ztS38mqlmwiUB&|#e5U;ZLE_E-znRh_d%JJHWI4!Wq@c5dHcH}lS&J8;FW zZ{KD^VWY8itF>ZZ?ZB~nS9rLFVr&}HbN2ek@8736)mJuDdpMqZ_ohc0(D3cz!1}P@ zPlKi=jKx#Ax^z}70G_>$ z0w0#`53(a%BW^f<_KbRa#g@U9=<33Xx@O^}TQ~1B40aR$#tU4sNSFfG!mA+hoW6L$ z#`h|pfQx$6ZCjH!h6e`fYHB*#+VF@!{q)mc|NNJ47=HSS!PKu9!NH(m(Oss?QUoVY z>p2GDF@{{dcKxE(e8_{i9QFr~p|R_Xj>*k;@qE}Z9DQTL#ZB`9TU=?38q!NCKn_wi z-#K3P{=Khk3#6~^^Yw9n9g2kyB~4==`9QRJ@};kv^v-BULhX#(E?NrMxOvN}9c~&6pevD?@aqG7FW2@_Htgdf8`4F%6{n3dV@WtJa_epR*Rc>VIC;6bYgVs5 znwbe^i97Kq^x+C~JjCH}*urKU+QPAPir+U!INi^Dsoy_(^evMP9>oyyLxy$nPkV(w z{_!si;o&WCZZT|L#3zm)W03NP@4f>ujafr-?R#hwC--jOu@>*x=L4~`FTVs8sv*&? zf}KXb7$Og$oC$l{pNZ(FU}5<78f7~M5L0u{=GUC)%964s;tMkJeOpOB_hMKOGj*b{ zaNXLq&}7{8IXEz2uu5CDOi_6()%`53S`6R^?j5NxVZ44=t|L$^@^(tNrF?Fk9dGg@hM|%%2y+YyL{33v{K5%sFaa*lMxDk7h7X|Yt7t)`xaBgw>>>Q z;0_ooDEHT{T*bqc2ZBeb79vSRUzJN+~L}FyK+T@evf<|EH{MoV`N&%UXJ&qguJuN z*fR-p?i?O_hpmv!-%>;pOvKo~J^8MZn$$g|W7&XTxdt5pG=K?}q6tk<1Hd$KPE;L}#4QWBld7(=gxen9*-wCB zD$fbqD4_KS0vw7AQUwr1+F+1F0hhQdVu#l^IFyYS&KewkLBS`VeDdbBX)t)SOXk_p z)7LIv!MRcbEkW--rs^S>FMt3Ov3qUiyoP%3mL{vhN^YI*_>Za0Qusb8q@l(})e{)%B&pDH z+}kZ#xtmmI*cFM&u7FKtwIC_@V@B^99MU?po=AUhYiU&x8hfiMq=u%3M!X34I+*wU zdv|!;18)bjQFW$fy0fEQHE9;2Q_*d#6mfD#yIEOTbLY-|fyS z`63HTqi3y5ecXT~#yD%WTdf#D085Fr{i=`{8W1nZSBpNp!%>!F0R-{n^#Q{ zQhAH81+}_rtE+9p7QONi?^G6Kn;CQ_9L%)_X1sKsR)iBal2)oTdFcUajFilf_NC8+9@y+A%@ zc7#$jJkSf%H0EQ_#6M70R7Aw6s)`D5nd-{Q%)^H;>${=R!Tz}P!_fFHkYS9NJ%S#o;*%*k zrP|NC0?V<=EMs)Ewz@{Uj8|9M3#g#jVQnPTn&S4To*Sbh;0!i}&6U9ZJ0df7uqO=) z`T#0~^6#E6sCwtQwH3$|0|8Qt`_xrA)*R`+Hi<;%)Q>mH$jEsA{r4d;w`|#r0Tsi; z`U&*W*x;yijxZ$#-xA?HTH;2bdRc!XuZ@&o^xbkC$i=0E$ig`yx}`17_10RYUURHs z+>=E`B`n4T#bEBh3ouElziwjP^cXbp4;M!@s=8vOa#=~~f%Np*vu978I(7TDZLUc| z??q2ccaPiJSFB&Z4%{8e%%0u5Au_C>5y}kVb$r#TkTJj~#Y)>GPMu>7M18kCZr0q% zg8$A|10NM4W)my*8}KQe#B?9NZA?dN4Y=u6PL)CNvDo3U;K>;mSGfJ7k;SFdc?*u7B&V={9|Q> z_8it4z(ugpg9i?X6G8B*UQzh$=tkPARTF}UX>62d#*~?T`>;SU=eCI%OEAH*#CKWM z4;EP4944$)DtH@dLYjssLn2164J84bySBQ<(=D;$Crp?iID@b=YZPIQI2E$q8X9qD zuwA0zXanT191+4vDqx)~o0hQY2uAbP^&8(ldPE=P*Rc8_;ItY=bB+iJP4UpdgGY`W z!4n)QQpSU!EC~Xw)l7E07nGSf@4x^0Yp-qFwk-r=7}4mCs2i+9Z*w@5Brt|al8SPv zr-3z=8Pf$(=Ar1088?3K8{SR^xhx_N_q7dR1%_04@8F-A?-3E`G19R^a}(}+MH zdvO0g)R>2iO+dpQpsDWoh8=Vep+6YMBZm(|;X9s_qpch;2;dXXKmR<0BiM#>J50vm zLx(>2-~-u1XV090HEBBm5u#04E&|(WCrVipSBSE#O9=0QL$CSbi!ZKPwW{dE37=Yg zDj8e)s8)s81QrKYg;p|t`~T#TuGi}47$W>iD~gle;QJvvT9%rq7ThPxv}I>cE~jQ2Ju`ho)B+7-?pCLzO>oiyxr4jE z`|i8@_wB=oV}XJQ1_%NpV-8eRZyI(b?Wa1iSBwx^JKB=QB1PFVzttaHJeHlkVZ(+^8#jXHK(dP#E?l}~39c_$vSjh1 zMbf!(Kb~+jGZRLR$Q_1nZ&%k4-vy7VV$%`v#^7!W3kpsY6c*&?gYn?J%)D`gwa~w4UOx1JCg$ zacl1Jqtjoemb>JS%e4f+__UwX}G?0>C)$( zd#*J=JsOD3m5UdlyWe0I$Eo2F%jDtUT7?HSF^LG{OjT9+d3j5|_yTtQuAMtUrZ2zz z@^R)Ef!|M>G)YSf*TIbU?%4yrfH#5$*ltS*RA$h}_$q)j6r_}HnV`Y^JsW);_LpjUN$^wC+&sIRxXafy0b>$D8L5HPHad(~;A)=L$_{>#g?%T2wlB23- zKrvurZ@xJVv!(vfxHL(MRn$dzy~W0IFO#6mzxVJR4nF=H{QS%EH>wn7~ZVR zOpqhK5|6}Jpk1^KB7@Qed4hFo8%Or^n3kwW8R3w2?b`L(XP>oG1$}ecG!Qhn61pTc zRkVdZzxUpIQs1E@h$Z7W&XRF1maHZ~GZcsuKckNofe0fXs zz3O^Lv=IJN;z-IKCJ~GVG8uyju03<+OmqN~*c(xIAS*DQwn=>46~t1+u)d+KVvNA< z&YwF+*aq9jw3P;RqqfGbsg;KzAUwrQAUuFV;%i*KY?-oZSFT)%q4^#EoRme)dXoS$ z$}8s0h^1NlXPvIg)u^8cUo!bXg_d*@Hc4#>ejB`kMQ!NMsjsbzE?#;w4bHbIC7@c{ zK=B}VEY$7Ww`20aGO;l5L+B^C*u|>CzMfv(49b8q19IQJd-r96s3^x16CB{P300@; zj7qA))v+v1+X|q!CyP#g_UWhKb5a5^P*802My8>amE)wWq!d=Z1`Py(RVT-ncqD#> zL4d-I6^j$`NcjNpRgeIkoubaxsPQ+@*$N~3t+(DXQ=#0}d~!SuevG0I!w5!@WJ6e5 zV9BP5MV2hB3nGUsXe65(2j^dXcpTu+Bch--jPUX+>ASjKP6AsOrdRFOA$5Yc1qf zt)>Tz0Zg~Js7M51T6nq5Iz&o&X(=Wf!coB>3|U4-h9UB`cbHB>?j9zIYK$cE5Z&q+ zCNvbhA2h{eID(o>Xd{*umw-J$?SqN}Du;@K_kzx_aN$C907`t?s#P}Vd?uzD?*b(a zoE5AKil*W7_x21DM4YyAEuHjiqKpum#l;dkJRl@1uAr0X!{Nh+GY%faiFl;ALojtnK(;n0UR*!K{dmoSf&!UgxEV_q z7sZAx?}H91QucoZEXo~KbI9raYRhK4v8bl1kX>Qi>4io9?r;sA`SKgHZN_w zpLw!ax*Sk1; zSRI9i5be&LIn%FwPqo1ikvO?4XIFpRL`8NF-U|yJG99`E#sy0mOAc}z{0Wp@#kX!E z*Fpa=VRG(bE(H~+@B+6gsg#f0v_TFTZ0TU z6bnXIOzYFOcx7dH$L#DZ?EwK!gz>>xE%{=JCISt8v3Rl0E8+w#q-g;mfN9Oi&IYIR zhA^s<9?+wfEn5~4{X>nv_6u(9ipEu|*Wgnefp^GuO3Df$+Jc`{(zgp)1lwZ{1K!Xq ztO#NBw6=j!noO`=Fq-CwBzFfT;g`eAB$3-hdsFT8J#aOpy|RCuyFI0tJz zzUcq-d)y-NxILXJH6G)@{h}DpQ;;{QDaQP2ql>15>bP`qIco4j@Jnz+eA*a+mDB52 zMjT-9b^P;0VIjVSWdq^{uL8M4?ZeIT@IY4vBgCDOwm8sKMoc0Au^OI#M0?Y6t*Z$p zsm4TVw@GS28*q7tedGiUpwtm%0SOi%R@b-2%mQ42VgrhIC!OsBqiD;&!y_xpgLhw} z8qR51Nn;GV%EXd>e5wi1P$|9Lc*2u6_k>NzQg5J9WZ?zAn!L%r#f@*_rqEtJpU@be zCUN9|sS2q|Vq?}o?z7)}4}2CpOL(BT6TAqswsrHC3BI!etp2I=%s?2S$+Kt9P@0%& zsOS;{BIW3;0_=jF@aVcWzLFPA8Y-hp9D>N_ni>^Lsy8GLTPKZBZ0srYD%x1c$yn(xeFc2Zgf`xsVo*3qLNYrAf*5H>EMC;1Q9mbcrA^%(q0 zLW;Yr5HnWrp^WSX=hQ08L`d$yt%z&2Hn74f(Y+Ru4h#NJ>GC8>+;H^Bk-7BDKvpZw z4)ZcHI0!w$fHyqg2kvggd(3x7lm9!oI}VUCR z;h^A9i}QK?0*M$$2g)t zu%GaDLQ{dZ4K+7AD+?D7Wn|!=@6Vns?Gt~{J~3^2o&OYfS3XZ`vv8N{L=*lZGEpq< z8#$B4N7z6fK5VAWL$6U?NL-20B~7q9f}ey(K5awg<@UZ$+?@8^HkTA%*^^1N{w;Uc z!VyJS1ICYvpih>XlOSv@@wD7s23wN5!xj}!L^mLs@FKV}p*m*vZrZfzRr=i_%E1V2 z3t313mcuAct7Lq`CT13Z!?brriKZsy7U*D%Nomarf-(=J(fb-VOsfu?p^#GXmWE_z zuOty{>&gj;xo=!rba7x6>9KV+VR8F-$t41E4*}Prlc4P7%a+ZXHxEmH#`NiLz4g`` zufGm8-3k507hhboXc1;5?w!`^R=*FJVx6iB zjFnPr$4FkhaGs?@R<(GCrD(!%g-}(P-Tl*Yo<2E`e9DHjJHwMVN8f9;XZYa+L~OVTPa+2wp!8^$wdM;-RS1hzvIn7|0Dq93E z0$m;Swhr9g*i|WBqHO)zwGika1;QJc6GuA_GWOn5OO>NBrsh~4Jdy5fpN2lm;~Qk^ zqGfDq$IbST-bmcGI+v9?i93JSdP1)P!Yy&D3C>f4Z=%x84R^Y^H-jgL%lG7t)Yj&Z zk0nl)su5vN@TkK40`PcHymWN`1I5prIdjXFEihX#1HK8S$kbISiR>D(J=m|#-94(R z)KT9d5tCQNu)Op!lYZ22WRHTaV(6}3zI>n6Zp2TxBHTvh;#&p?pP*GOuGZAh_~bnD zDH}37p}P9Xn^U5p(w@;MxZ#zH7g^+Km3u6kJUvRte9W2@As0cEKLHbuL9P~=?<$Sx z;f|&9u=OVPaS8i2YfmmZ*|hDFIMKSbYlRtz=i@n8LRQ}4+2NRPQ)b?MH{*bztAJNo zdQf9yQDNc1^z;Dk0Tp=TMhFEv*|cd3|7pk`n>TOYx-~$B5TazKjvYIA-EI(8jA4Up z+N9s&d?RyIU_%HqB!Js&-hyB0=Q|_XO#EuInlpeA_Q4*retmcXA8R-09^S8uc5K?T zIxTI{!iDqZ&V6^*EG%sNz5DLFAAR)E7him_e%(6!%3eV)!ne?&^{*F4TeuT;E#$+i zue^fZc~o_T-Y)5KQZa3X)RLof?WrP8DG!*i+c$1ltvZXTzkcxG&h4AGS=u`?Gz9q) z04P=ZNE@j^d+Mspg+7Aj2gyhY{cDBvT%tJ$eeEj$?KmYub;Q1dt z`ttt$>sPO0tU#kmkQU!m7FtkNX#_h5jLEj#oVmTDD{eAO?|U28WGMJxbq-jzDKjGX z*IwJZd-v&6qf#;l`ud>vt^s$~+NxEp>g36@X3k9Cw-3t~kB0mLt$;Eh^e6p$e+eY2 zBuJQ}KsmnG%fGzgKlqy>d@n(NMOZJ#lu99i#gioH)MSUAidbk9Bkb9)P|zF*Er}~O zIX3z$gtO3G0;>#S0bg$0vc;pSCN~?KlwYODm%NY;>ViSyfh})nFHznZUQca+k zZBs^rBtJ8}>*R(9#Y$x@X9!Y8Ep*X6yZ4A=3Yvjh!CWp#5%sqa5@18yB`}f<$Sih$fRGCKI6y;r=#`e^ZLec-N4JpUYb5t9M znXDCJ^)c=3w&fi$Hm+Z}a-JYZ9Sq7!=VlFq4a zeyf~p&@(MUQc!S`Nq90i&DUODARdlgy8nVJ3m zQRYS1d$zToWS=C^cM(bs;v1Mx_FornGL| zM(QE!*M&bQB)Ve9rj2MJ3Bk9Iz3pGDC7mY%|9zJvkit-z8 zyn*?yVD7_-!oq29yipU=;&DX{f&QMpp)xv5wWJ{(aXs0PP>DQiU%I<{kinaUvw{|{ z5nEjrq!ea6!Qu~O$yj5UBPbXc?fkqv&@^7Egef}Zbk$eVp9_PyhLzWKbjvs_lH3*O zs_F!aX;I)x=HVl%ng(n!2zV~$elnFAG>O9zw7M%=>UghTyQXv$9m8pll+kC}8XgeP~&R+*>GA6b|z3R>fizMF4Oc zm=rXWsZ*zdC1Ik$gD^5OtJbVuJ;C=xwwxK3cYv{Bso_@i`2JlX%-uA29d5v2;6qoh z-ed;(eeT3y_0HF>nZN1QErHP8Ft{S_$3$En+`~;5>%ISOq{lh6e`v2}IKu;rDG*V%$m4Ms3N2z6gcSP&e-0 z6`~zXx3D46L)(Y!D?(D;)%#t#WOzWtb-KarBCco`3a&2D5Xc@J5hK=6TdR#OdWo(G zHlY9$##D}NPZN+s7K1L(rE}Z{u!+=A5&f!_<|SiLhAa@1cPu-5$&w}W=FNjt!TFpy zbL1eOJ$p7tBqQVC6ej)S+g}x1JWWF)2_A~% zrI#RoJkxVA6LqjY<>IShI6^OSgh&Lhz4jVrM_xp%|KY&_oSWahAV0q_KffR^FKyK- zSYYqG^A4C6gy#7(XFxZXDV0E)7YRgqmNbNwV9{1?s+s2t2(6%*I-f=FI=Z;Y zDC>?H(KR4d!+f;*&QStw8b~LhQqObCHPZSS@oCWa+0%Az_Y4o~ha+ryKzqPLl_WTl z8A&ls4aSaA!3NCw=>|oKtg`a==Dd>iSU|W(yi;&&V$bfCwt?;U%_c6L&V>^Skw)Qc96@w->h$?a8 zPWH`Spa@D?x^(G`88a~1FhbvW{dH{){`%{$cXf0s>Hp-3BFwJWcBuaCDI1brBxMFF zhtxAPw|@P4aaoas17S+@uEd&6iu{7 zC$-Wx8{(i%n>H=;$PuhYXxb`a!wp!IAZs)#aiQ$J#`*@VVT-EHo;~%|S9k5&b&51I zG+-ri?X7KFHgBE);e}qJuYug(ej5@Ktg92|g*idZ&!D7SyRE1QC%Cz=paA!n>A-)g zEUl0$$G)}oldmgQv{q19R9INVSb9<637I36EMt+FBb1KGCW3VYEfD|7HCq!ryX8s) zmWSARRVB-3YdDBCLAq5b@@xe%Wo4@Pw3ssF0j;wc*v*=cEMka3`` zQksdH5lMh5PK~r0Gyx`rrdb=%rP@wKRFuV_c2$T3c8fv&{Iky>F}7~q+SC{#zDkXj z&j&q8z9VyTtG#qkqO3Yli}e!^JisIZC^J~MBSdi%MkF3(%8cd%Pd8X4>h8OD?*f^k zbGWXcV3o%y%gfP;p3Y7%!i(oksWpA~%$X5Ou<76^7*Uon@FtQ{Tt;GukxtNGC9hY@ z3ZZ>%p)MHa;vD$7?%~}AvV5# zsgmS0<{G7pg9oK}Y}~K`_b7U$S5TkpYHG0p!OK-iCz|#fbmB#o7;5k%+$`N4b2Jpw zA5V>(LO*Ty4$UG60_qne7nU069!v{!j0r2{%zqt>j8_*+xzug?37!CH2u=O; zh{2N&a<}D<);7fsO%$+PgKuOR8YL%-J)b_L-PYI3Asvv(2I&7o%3Rz=YXHj-=J4T#QsTetT=P z`N}XLm@}xCAPDd(G04{l3ZTGk&aq>jr2ebgj;Cx$#N>HUA}{Ffp1kf7zze1X{|4F8 z9-)yOC`x{n04Nf|5th%qb<39NY*dB(Uf$q;=ztYAy!M(`NU2dJCQ1${=B-YG;*H!j zHJdjJhZG_X^38xZ)~}xc(!~5>j#sW+31#N(x8KHnM-CmTDleCt6N>@NGAr{a7En7i za=G3*VmTw#wHlBY9)eW?p11+22!zwE)rruS|)~%R`Nn=W0u98tv^F(eu>HAhb8&f5z}=z4SP~0^UbeQ1itx0oqenqW zQ~=6?XP4Z%ghU^MAeEI-BQya*wO#^2asX=vR1O0LJ;7(*am&aBeV;phTKjiiyl??l z$bcnabjU=Oc)@RRKiXBwzkIB!ux@1hucf(3Gel0`pj=k*_$K0AhFSsobTt85kTPJ3 z$=$&Mp}2#E-~?8$wkADy_AE{`=*j@`gjI$f(Zf2qBk>S$O4tB+I5Ybi6enj9n#l?b z4@PozS{j;o?z!jY&6}5Cej;^y4JzuwW%>)ImVBN!1eRT*Vu5sfU(7M)*RP%D;JmJXA&9yz7h(iWala?&@Txd3HFmQ22wjh|Rv>hCIxyPX| z;Rb!;9%@05Jb8tAd0=A}4W_H4n?7cREwHA*s4)XtR7Z~h@I1q*r*-d#}Cot=F z+s?Dy>-k0cM9i!}PckwxZ2zNe+tT-^XJ==Fe%wUHi>Ifj!zz^!f8~`|pxRo2b0FC# zDz&aoUt1GA21fkVqJp)_((!l8_V zXjEz#mf701YjSgsOW-)TfP$$i3aN|vc_MK~hZMPcnxvH?l$9x}YGxHd^M(cn2m1O? zpBe?ZT9`@GTwP(?8BCr$dHVF}P^7RfC6Z)Z;z51%>(RH^fo4RCXdh@wLC-pBy(7+YI&vwVoKjL#684g<~Vfl|4U zjgiCHwVxM4dxQCb4oEGLKSy^~8V+lg4o^5){m#g6(Tod*U9r2o6* z?l^(O(_Ye7uUv+X1vRg=NuZ~eq-o`|P0jMss-RfO1!!^m)~(BzEnB%_1%~TDdOFzf z(IZC=0Vq7z!yHIozjp1MIdfFf|NL{$E&Tj*^i6i#lNVb&Wkce@GN@z%Vp8Oe!vn#L zZN&2Oc;Mg1<+G9vhM|Kc4Mwnpd*W`~xDmRaZ4q}U1H%Pl_x<@z$L zOshO4E`P9j)qmk~=hET$F?{RmZ5MSYTCHTDy1dg6=Lovr%Bqu;XiM(ZjT~ zv^%ivZVEfZE7Mn^(S^xBmxLxTeZ9bkZsOi^Z{rPW!e ztQZ5jV%ai`FT{%599T%OiwmfTqs1I^p5z2xo_ibvc_OlZ={7~teGlb6fc3VV9mqI%z;oF#*_fE<7&Y;N){o~LlWkB$SFA*Y7GZU) zqY19k8q?#eSb2bvPT#jr-Y&3t<)Wa6JZZNI4{Ahm%+*FGspJNxMFLNC!Wmv#avSi!GkEA=U|~!&03=Rq}M1--7l)0S6PZ zH!r$qo!l|DkSfp@=Fgu$_k#~We`*(EMA>!tgXa9%r=Maa;DG`slPy6-yiSW*zJvxw zpqfHXb*0GCtQ1(bRn_9QnlB8+zG$jKrWxQ0XQZ3eOqL>s#*A+jmtfgVe);8@GiUDJ zwF_4)OH;K7jg6Sg7J@&5$K#>+7H^Cnf@*PO9nH*!&^l@d)(Kt!V}~ZeVh!Twcuqc* zUC^AQfrP2BnaZP8Bo|FZbk4YoMj>S(l0vqiC!isHCAFkfs9jWw#C|Z)pDtK{sZ|G* z5CTR5YdagdPG+Y1dGv^#;EI+XG=5#jk&|uSOq}FKwF(dCqOw--6?6k}_nq6fL+tbr zv$wyuSK5E@uF~nQ$tb5IRc5g)6HwuS0|&5LAl4y#RXXT@7%R{R$OUtTUP;-*us?aR z#ZxwvAN9|?=+c#fr=}%}B><%Y$P`xm2%q@&@ZrNyjnJsF&mlvefBt!S(7{#TeDh5h z$7mN^U$gJBH|a@JHH>o*Me!775jcgMfmLy+4T)gyUIS;II(6NeHBBtn!m@#^!+@+< zzI;MyWI3zonR(~!w_(y^jBu+$Jk|8R<9)0vRaN2{;FK12;ebjF5Lw{*;lqbM{^%pT z;p)|Cc(+2jcc4r|zDP0HzI{6e9q$ia3QrIV2Z3TZz=T9tn>KDVBj&>o@fEHZxi>cp z6|q43oA6W-%xLr*Y#bNuGdZ z9659-ZRJW)Av%EPgX2t@G6katH3K~a3HsWWllKXWEuOL=c@#uRl5$$Kq_8r&(JC|x zo{S*ALnXwPBE}7z1y2UKLy~x?NaPN#s*T*t@U;b26r+>IL%CN+USV)v(_~^eC5KE2 z<`e!W8?TT&E(~&kIRF&rYrZ?KeS&=2R+0GVxLknWXzvq7UyInhXnQyD20+JL84^$m+N3BlW zV0F{`_JP^hn#s+@+Ss;jTaXVqIp!7R!jM-KS4^;EXX8W;9AnJc**VATWZ&LBSl_Qq znF4)At)ny08u3F68RRdzFL)Nb0=kVGpug>7>tb(HY3Sgtq@}mOD!^mWD44pL zszi5qnmQPKZrZQ`i+sWS`5(-gGkf-XSVfTjSgv1u@daq*$?IUotf40_xWS|F<{XS75e6>E%Nw{px{QITjEeBD{sJ?Ku(=Z zZ^6_I^!0)CVM`eE^CSXL07M(s2gqH5K&5dI)@~7(arMh_p%9GtG1*BzbOZDZYX*V> zf{e<{aomY#zWT~5Xb7u085Wkl9&$d*1SMyS=eg&eqaZ$J1ec#*!<2F3F|o*3;#FQ9 z=?Uf0S$kmr{#mnT;e`$0m`!~C*=L(JZZHSVi4%(!Eplu+S_mh^!o~GBMVk~)}Yu;Aw9_|M-~-k_0&+FIMukvUqIFJ8nnSya_EOAv=S zB4^ClwZpu4tpfBiuTu>acXd-Uf{eyE ztf4Za9=)KK*Un?p~%T4C)t9R!U66ME^?f$;Gdv!NlZLv zybk7{@NfD%??7=->OZVLC2X5###Ey0W0>q^OP0Qr@XT1H0yP;BeMM<0l!U_>85TGw zfKpMQ7^H|#tA%Pt&hFj2pdh~R{PT+9dh=LzkZvW#rrRAnaNxBRfS%c=$rGkk6bJ43 zqmM+3AX79AHR>cA)kEw@$=6; zhfhh8veFWrp#M0LUkF`A>v$1xbhKr*>GtiAPU>^!;lq%^;0st4mh$?~Q3vx37Tl=a z-8*;vw(=(P@R7_TM>@H=OJhSrUvF=niuYucz{W@0leug5PIC9=n3!Kf^AxJK9t5I~ zUW*(#^+K#MKM!=gWXTfM`M>wxd;6I;FJ+^cI*;kxRJijZYxw!csY3Ru35Ih*iawH#Q z;o-pCU|GT(ls~SRAw$?FSX!8SMO9%P{)q`XWFB)tGyF*1l<8* ze}WQAz}{dcxb6l4NY7T^B8`;Htwj5VYT#3P3egC#8d{B!VB z!{VAW391qJA}P|`2&NM=ht>!>^C;v=R_0OIiy-36BZqN-~o^<*e5RHQ?5W$ zCypJ<d#6@s@JZR?3nXvFA?iVarkaaW@I!TDF$mMKBwI@TiR)l_*4nqzdobFO) zc$CNvb}!z6^mMGE&p!PW2U^^+X_F8>gb;>>>KI8M&YK6-LQr8+X3&2Rk;;Uim(Y|M zd6wLlER#SwjD7MXm!DWO5CTbM2BY*(QU~)47Tn;5q11jyzo@){siuupgbJvA3(Zwn z5Pj#C5jk<<+qT`pR{S%m%!EAeoE#`KOTPGG?gt;toH66=x8IsJZ5qrqxpF;hv0(mu z5QOOFAEnGF@dg*M#+EHx_Th&qFtFDdAarL7%#Zn>d;%>$ESslLW@47|zpKoEyF(VW znN44>t>4>PTEiB&4B%^HK;dw7a<}AOLY241{g0YMwn>vPj8vs>yN$-LJcl-Hkxock z#UHehyl==jW(~E*Ef!ULWS@i>a5z2zTlmIFZE=%i+XNT)giXalxVkCs@MS=2af2G$ zwAr2+Hpx?4O1e~foEmD28FGex6{GuxGc#w-R65PL_O%qW(xB1$O6c1`s z-bJzlSbmEaEdpP+NQ4DPv;WJ=OeXtdJ^A;Q8EE!+et&PD?~Ur)J!p%YfPBrQNH4R{ z-acMS70wwguVdPi17A9{poC$03`i>{5AskonpFI*|<9G&1Iv*J`5Mfpi? znyl?1%pND>%#-hR0W3vHw8Nc+kWZA7a;{UZrA{tFx-BI=()g4Tn$5o7wxvytJ7B5A3oDou7p91fr3~=4%+5Iuzl#7eWmnDeX*2*tcG5h}=9ym+y^Mv7Nx;@u(Z5XZ_- ze!_+n=awrO>o!z=9k-N_|DYlBS;d9|A;!`i<#Ci+s#c-z#73?4WF*8=1!(16uz;(Q z@JdR;PAV+QQ6@;hM+hs8$tIMp_*AJ-%nxUFn)$wuQA$HuFvS71x_Q$kuw5|jO&c}{ zgp3;;b&|WUnxLhFW3A=8Pf}DBYXDsYM+9wwpp(&)RB$04ll-5_n1zP`6r@N7Ec8#0 zM6)^ze(n7~}Zu0~OT32hV=}7jDpbB0A%5^o#fMcd>ZOi*e%vi%pHxj90 z5ln@kVVP%Ym5@)^5DPtP1e@jMaAK=Z*pMeRsnSh}G>ZL+?nT)#&E}+PC-^`J>r_`%1W42wGxqJ-t2F?X|UU&i0Ow?nJg!%KIf9|<2zF4ec^KDzU=*h6Z{hm+w^oDKa>Olr4=V4j=9z)iik^+m@>n(?WzdW zBg}LaW&{TBpG-myDXvWHg=zq!?v*K1z=@O&tt?BlXyl%AEL*h;D_N`h&f9Nq-n0=` zqdXxH>x&mI{0x8ehv4}9v(FZO{y9!C8NBitu6(-SQ+jL`;wyaOfL?*YTD;gkA^Mjs zUAlbf(q%kWEMIO3x=WYhx(=N$<0tMnObh(6QM7^s=b!Um_z$zSV8H^+2TuH}&*IHE zw;Ooi-|DkErX$h4Mcz;74>-}`Z(-l_WMR0nC_IE;;T1O1H6#}nbcvRxMsQ2n<;q3V zj7nz>>53JhCNQN~OO0j@Rt-T^3iAtK8ez`zxGfnoAIl6UXy;A{UKkAJv2+@wfAGM8 zmze5t@mS35gkyA-zzzkq zS!U+6Y0zrY_w7?x&<{@&aIwNPl7h0t?kk?J>*+M5an}kZ3n*n$j7`aIUd^PRxbp;) zZ37e=Dz(i0lj?)~IdbW^yz`t@XPjh*1s;U59@52GSr!UG9M?)ZuBJ_bSW?(iapV^& zWXWu(|A>W7I@z;pw_(f@-+h#b_);N!D`R0S_C}abc{~K1E6hZe0)?%NwSO2$|Dz8- z{N&@0gQ7tDzpN>(W2NYo?#s(eyW558i_RSr%(KSCLrVAZ0Yuvc?zsH&n8H*1t| zqEbU8U2DHI&*39g6>H;2o0_6vk9v-~7PFLvI@a_waF2CqO{)Hp1PJ`zRG^~b=xfIO zNl-xf2u+ajiz-x+7>sPC|Pvkv^E!{8JRQL%@B?mEE(%_Ypz*wZ5;=j8*Y)7Kod z#8K%dCIUCdwC&Y9THA^2Zk6^O+>f)b3tx2Mum|?^4EFX7^Sw?FTV&+S$f#atsIPy} zjy}Bz&h@6FL&3p3Y!SgB9H3*2IJAz=4lCXh)PyEOv+h~4Dio{bhK4LH3zEY03i{KIb2LCX*4auLe)#8R>fRR&i?tf2tJ zQeE8?(eUcxmM{`})hW!qusy9_Tvhg^+{9Cr09f;ofwOEI;VCdxyV~2k38w>sL_?tP z3C~Xd7YUId4vKGarL8%{KKjXM(Zk+u3$+aP4=`X6 zS{Jb32(R#SAikHq+9^^zNMG_15>qHQ8dHP2;e43tQen6TA_Zc8)Tydp{I8~}GUbIN zqmp_f?i*f5$QA^#fzl!$0R(SD+-6?XBccTLKm(DHy?@_6QIF~O^XI?#;)^?pI2TCy zmknj`$@n{*ks+`4ueN&D6)7i&4;_X+;~R#?(z6p{(r&G4xz@zo@-l747HdHRbPtVP z_ivU*F5u-p9-velP+~;7fRw`^I#@}gm4n}cyT3nsHrDXw$ldEKgWYl*SFKz*0or}0 zZA6;^9UWTWv^S=$U%L(#35?hJni`M}j#icK*VUP0zp1H<2*|y*mCeu@=3@*n`C)iq zz^-#k599INXhByx`4Aml1TQdL*2Hbv_jF`nKw&n;hc7cYtWO*l&Yl%(SFqXw)Zpma z&H<~)n0I$?r?GGgr%`8UZ*9X#Yg3D@fffcDwFA2K#3C{R%;+QHJwElccCMM&Jrfu4 zX|3(eHUbT`bqCYaq45jM1f(hdV|B!YiaK7ZLPtdsnlMgtd2kXCEJV5-%fxcMI9=+K zLcGfC|Ibp7Hc3rV&l5HzTxn8Rg^+kfTaE%?8*GuGIO2o&y%j|ii$H^4ob?$w3Z5KS zp~5k%nZ$W0AIr{W{5#9cNOg&&m3grQRyCOCs)rJ-_&ib$u zSY>TOi>fxvhT;mDA3C%N?wYt6ef8v zq#4Tv9zreuN$LT)|B8B^upyf};uhA%id!9^W-q{vbS6}SYR!Ancop>8$q4wP2;GSY zt|+V2lfbn;eF0aN1?X1a#m!L`D+mr8YPV_o>QR=O&Qx=&t9<1Z$hy;~P7TqrIyE?q zWeMw)`?7OB*3l6Oy$9<97ePjt+D_&?aLeXWZ4OHNTGnczT&e|(R#?66u@Ib>1*uMe z6%}KAgYz|nT9fH3!A|EVL#F{~(q^S7$TB@m_O9;K%}NANO1ei$_<(yrJ0_i!bL8hCW#PpQZ^MnmmgI`lo3G|d7Di4+PA&nr* ze4W|M3ORlv7PiWr5PTBc&@+_1GZRVv5BFJ>#LYK@tK;NJA1EJ2cViUAbPxCK6y)VA z_T*_MXxh@5rca+TWeRMJutW*nfv>CpgJ4~@`tgs66DPj?)?1r5Zai}65Lz`Du#-jQ zCB>1XKulSpn4-k%DJBJD)NEF21ri7y1XVR~3%;%6w-gdL#)dBvYi`al5v%CcD)1Qg z$GIrGkQH|>lw;CznP#zu62oLmbPkl4l;WtAHzu5vx$mVYRMh96h;=GOmf(=5rDEAT znVCA*42ghr8xB=7&7M6QQS$$ST1^hBelr=BNlNFF(Q*ow7UFpMQu9UH_^xjh!l$Y_zik#aph0;`;` zbs2L>BFaMuIeA&LF`&F$$EQ#wkiOOUhb%otOhq0z(CwV86n8_nvyWPa2+W)Pd-twM zOM^W|iv^@2;n#VI%jKUV5A59U!6wMBI8K=+;uglh2yEgUJ;~Sea*m5V z7oQ0Jtm25`q=g=&M_yolArUg3K=Ls8f(P0cCpKZk~Zr3Ypd}1g@Dy|f#k_b5CXax@1V>Wb2 zsTRM8SlSV$(ie;p^)TOt(_^!irL%W*lCzupoGkRXDQ9aRNU0u;P4s#F<&MdbI|Msfaa< zw4ZR5!;KKPRZ{HP{+S;ToucRq>nh$L-A`ThM3JYYo+od}%n!6hQ1Y5eDD;(85y;kN z|3s0dOqg64cF#Fgi*}xwc_K?{(2itUX+rBQQ*79L zBRM%cwr@A?4suURtB;!|;MGI{1ySaLj>RJ?m4l_Ivwg*t5NxkJS8wu-`b`~D)LA;7 zz7i*Udg^(?hBV7sKYE}zh{!sr;_GJl_jE3NIL6NNl6nE=%okxOLpyRDHBUY3^sHJ4}P&|(FBJ^0`s3lQ&pwe zbP|`!Y}cDOtrSuH#WJuUQIAC{J6c;I&_mb3o0(89z6(ALzJfI;j6x|AL4}BG*Y!vY z5GU#Q@r0kmm$iOts%LJVFLYPvooQ)#;LfAWQ`g+cLw77XaHRH#8`(<8%5wEAJTn4l zVe;&Vj9>ZETdB;5yDPNR+SJt2*hs&7sf)p6`ko`RmPV(R`)5wX>=CIbQq2VlA}}9b zG_3unr=BNl2&D%pJGEf+2PyhJ+tA> zj;u;~k>RW82r`&Dl2dF&M|Li`do)XIc6MyrHgo38DO09w+_0gMeo~BobA3ICHf`lf zLn2U-+tMXVJl`Ep)P0SFnsKEqrYxH=2a|MUXy6p1OVEwz$;nHon3_T(#B8GSD%WZs zx70#Mz4&PLs#P)3C7;a3j4*e?L@>Qlu49w?oHkO437ivN8(t(xMCvfX8l%3HwCJ-T z3aD9`g^-?(b%;+Khp77F^H^k@Ni|VxAQXw`<$;xM-?~*mgsWDr)OI)0-HW3`=A`_v z5gAKIN!&HW-b-q?jNp?e|Nr)`v^k0++hQ9AF!*7E4R*xXGs8X}n@vbUV1&U2w6wO~ zyR~5u+K{@nOCW>5%gp@jckVeiZx@<*5e~n2iuYj@6|L&(s?4m+n>X)zG6e`dj-b{t z1G*Ut-AtVl0Dkqq`B2Zq&Hr3Le{I|c2ZtPV1TO{GOLM1wFw{E)O{ zH8Ki!(_dO+q3cJdnWxF*t65r#re=6$CK-#IyK`feBMcE!$|9s|e4@8)I|Hw>QZYzW zChvXQ-3|6U$J`K65(L>$x79ea5>VJMX>WE0uPWV9@`KJnJsJ-jy$>G>w-Jrd5~DGL z&UfIzfnvT8E3yK-aF|?+|MgLsR)l$^Y2bz(1#)C+Pz23wtaY&|lW z3_GY!FM>9saB0bw$25{J7mAglGsr3zamkJvc!Q1-;I*m$9a#O6k7f#OF0-SQ3u}o<`X%PP^E$jacJg#o>lT@=^UR~;$N z&)Pr1ZuEs>GKB-ua0$6|I>~{MR6+XFPo|`1xLJ=l&lqll<1|E0bZgZUIN94eBE2&t zD6Jk^E@VZ`j|>-0Pq2Q*7sw{37!i4=yW5fs8;!>N{MynIUirFNW@v_+HL&-a28sIV zr{KhRRqYP27=}o8WeXQ_Y_zdp`!Aa+@bszXdRFA93&4)VgwI@G-|5q*Km71Rh)mUr zvnX5_xig)wg7zuX0`o1#0Fz`_!2J_K_9%J1&o zo2A_#V!koMpYm(`;q9QQs~LCi+%X%7%{})saK#wMz@Se}m^peB%KkGlbxkUBZIaew zgu()tBrdb7WJLlAbs{E(H=-QOI&_P>5lkyE!?wlZka{dM;P+BbR1~=07U`8LVsMyM zq&Od0kPN_|NaC7cwtTS9qhw8HnYp6;(1uf>>v$lf2i|3NCn60NyJc)D8Cb#WcFi>P zn_G<^xd$pt{pR##dq7Nm<0`f{Q?D10Bm!WTAf#9)O!-ZruO=yOF^`(5t%70Ko3t!LN|# zM2ol?LI^H`qzWUZ=4$TIuv0`MZ!x0}CxjlThTYfHLEE>dc$Y{7XeY{9e72y?LK+K; z5i=ZKMlk{k3GOivf2vk|G9=-{`!7)`}!iF!0G4avTz2QNjS z*6)IP1lEp*>GdyPx}>CDQBRb1^X5%dBmJo)%41CVnQ}zn-Q(?$i>Dru6sp2)7aZc!CJi>N2qhy|zJiWlluyC`Xkl zbX%qU?aMFG%bGAU#~PKer*LBCO9I6VQZCOjZ z%#v-Cv?{SgvqJcRH*ee+O-zSz1mmbqC}O$|YZThq&BQBQ(P}2_*j~=V2{YH2c!nD$ zxnIjJC}W71o@tQM9u!7Do#gWHen?4^N>)$CWhv;iRuAD*Zk#)}Z-ZqkS9L`}_A@i< z%gZjzNOi;U6(b_i9hjF`5hgH9MruaoEV^8wP#7W&MAfX5)lw0uD+umco^ufgCZ%>n zd0*siAjUN%B}gl>7>q(59i-%IjD&0sq~;ME_zL1fIToZ*u0V|G@9pdB>6JjA8K=6~ z3=W;3WZMpHmVjq^v-LQ17OpF4*|PX_GlbbZ7O zK%+l)dlslw)B_PNFi1o_U|uIb`Q-TVQYJpj+*ttf!ylMN4QfMo2oF_W zRTP2+@jb#ep`#(4zngF#wat@6UdiQBTa7r#P@yG5rwj_f1eP!mV5m4QoIfw99I)hj z-+n9E{btuq?`3MVd9&`@8x1k1QE^CDu3S-ssi&wqIA7{(j*f?wY0He10!(=R~wbhJOP)#q3UQME_)wF$saKNF%nEXk8-*f-I`W7z*rUpq*(kTtN zRl;;ulCPjFB9S93RbAB7LWAW=v`@U$@UY|sj{xQ4GB{4s?Dm+9|0xYk$!J#g5V7~) z$C9EzSMGw=#K@TJ?m>UG8d&|IWSId^f>!4{MM6&<9Sb#CRyifhmGXI;h=YSw+p3%y znF{w!upzjD7lZhCgsJ;qeEvCZo}n4;DeY5l`L4&t193?)cVQP-qH&5(9OY4;Or)c* znMs9wjZY|iFB_eg)f$swQQ~-A>ovHAgf!_4+2}}HG^!rKCi(zv-J@mZ0|sU^7ZyDB zaArnJZB~AzZNTyg@BI+Ds)BPHi>9V^EWxOzjsvW8Oj&Ld)&5bIY`-8SL*5!jc(B+=boYYz7Oc#5GEj!=*fg#eyuAT3d}H7E9qu zEOQL%S);5!I~4F>7IQ`g040wYN?9RQDoek}!c)ShpG;YZCC@zzTVAuY+e|I_GUR4z zT5{@)uw166o@5Ma<3gSYccugzk2+?;8&;aNeAJ5V8_)(906z=tg)2z&WJ5j_j$;qxK!1bku2DOBqiLVAOfh==+ox2 z1*uASHS(T;;i18xxlDn+D1}U1fqFyg44Ku;3n>g;TC9v45u!Nd{^lndkuYTz^Z7li zh(rbkRIHWD;jFdlIBHs39=VTVj03Mvr#=^J&ah(@zj06=VV-aq|BxiZV+DKSSw}Bk%T6z1+HN2I(hOF zZT~cz_U>AIHuspsF|O)tUrU!#WJ;T~U|K2(@kV?peM%kFuOYupBu*T`uHo-XqFpT% zs=cWwl%g2HT8f$B*NTWQuu`}yTdZ;(FdUdDwsoK^dyKgd3yas$!s0V6x$Uz~Zj5`# z@fP}4H_ObYBzFa?3J_DN*|vF6XoQ!({@Ql$IB^2n2FjhCF{VDlkQH%@&?B*YxaXy= zX`LXee;8AhHwNzfrn37Z;0 zBgUA?rMR7Zy%ixN*F9H51<5E*CPzEhAWdBoZ^9Cn4Xdn5txWVW&V-UjG`2!o6YgfG zxtX3R0A}7*)rul>#7c*mVuJ-xTV+V-go-~rFjyG&KB*L25mci>jZ0LhP8h4V|{};Xr!vM(yEyS(GWc<=(Fx98ute^x+cFSttRbIo5HZlisY8-K+B6Zu2SyE{Hy1|!}j)ev&J zC-lWt?V8Q)NTsSyj44)RV%LLsDP}AMyyw9KX~Vq_w7U=#@}69u?b@UM>g(y%AQ}H2XyI9lYPB-T zf-9SDJ!ugVLUbjJp<@4L!zSIE#i^&qkYbJ8kAg?AqfEF&)zH|$?;+3|d~jzc7!1C4 zKt*b6gRo~iwYRmk^D8(FgiG9j+dA5>ckrps^ohsu6V7qqC%aChK`ZC#RTPDbRz7Rd z4SQA*&UKrLxLqk{(zqG8I5hZ3^XXc%{IYugvXgMtX4 z)!zH|ThN5%q|su4rSML7x3#0A10CAIuDQYP>*TBIN(bK)eWY_W8vPqjb#OfRVqLdV zi@R8e7tR}O81xAH4y`hLNsJ$Vy58mkqh9MuRHY;JV23{A9&abhkHcER$K%d;(66vV zZ>AB_z~ex#UH-!I+5)9pxpV^Xh#dm4^*Sh}iEAq!vX>qiQjbEeQxVY<{_*4mKcBbWe5&wIafA6&Z z-p%~!mUvdiB8-T%Z4;Te@M8Avlce9;HT&erdra@ZbudLd14+mMuLBr5u%Z7IC;IK5 z{>Q(}&YJozSZe=Fg|v16&Fs^8_}~7Ntv&M@+kYMo{Ojyn9L!*C$5RJe@3jjln{D

M#R+?>{$(*?)TP-~WAh>=?IxC_ucq(P29*T!eyt;Q|gpCEF*D%-1g++4#c6i|I~j z_BhU;JE!C9nKS3kp2a7Q>`%BD_oyNq!a&}$iX0U=1E*{U5u3kCpE~(l0*)4p^OqO@ zD$wSH9c@juhF$dY>?5rg$y{uKLSML;g@%szMZE%NzIXR7sM_!bo6Y9J;@a}E$IQgm zNLZu)>w^#Qp7=^&ow-MolaPR8#n)QzGF;lnLWl2fAqf&P2!uZ#*AmFJ;av0U)ytO+ z0{ik6eZ7A5S`sDOLwpRO!bPSeMNt0hjB{^Q=GT^dLP5xdmW~byB=I7ts2jYY{f4e| z?5+z}SiZffB;aTv9_jw(o5B8m$a{hM(A0)A^Ybf>#_H12=IZKdv$@2OYlh}6t~47f z&8Cn8@#~ANO<{HtJ9hJxVfXp*`qfK(-QoU9FKz#@t?lQ}@%82N=dXz9w#hw-*0g8A z$_h%@vx=UtuWu8uR#=EzL|DP+CQncTiZwV}+X!t%dnXAJd6S18!KdL7ZEvHNH?Lm( zO#I|u-xz3|VHIw_eEss3kl}>ExV2{6s-cR_)ivKWY;JCWz;!qlm^QvhM9xJ<>f_*k zw;StBt;APoWrh*ywv`-@XZ@(tYuaJKA zlkd}#4h;6%68EDbvMWJJS2wsrl|ccc2YH|iY^OMGaAooM1V|E=qLP|%r9q6v`MJ3n z#>xso2^U3J8|>vbOq|_jOLmB)XJC5xB<`uwY6*k7{al!-4fBI~2N4?1q4O3Ss!^!T zy1q(`aE+7RZjCRp!74ocl&p2~JC&0^D3A`iLP{ zzkdDCUw?hU{U*TBdmh~17pbMfV1b6Jju0T|4pBli!_w?G2A~T^4%pxWX4qjhgBgW!$&NjQgW3Z%d4cB zbq&oHad2Od%r-c|FpIEg{QP9mm7_B=C^K>g>S7B zP8y7V-CpK}?cceo+ibH!PG6iXE&4ukSZLIAZxT1!-ZYMa6Oh`kWH#bJAYZYZpUBk3v3?{zu(ma{_^qjF zq3BEy3Bw=^YPCs4$SCHHF*8_IASCE1>l5Q%i$X=#D;SD776$@VD`8AHE$-FhQn^VM zARyRn^0w_QJF%7X#g;G~^meO+jNRbszp-K*QS_uuAy)}nX5F%a8`ib9>{&%yhN!IV zT9-5~tII3v%PX;g>*~_7Zzu`Y-ms!jwatNz^=+<=o8)x(y0N;#(kOH#d|Zc^CQP($ z7P7gJ+P60RV(d^U`f*u~BqX7Z0L2X)&BX-D{WMx~?pHj>Q{+sib{#%QS zpl@GMS>eBw$4Q&{LI57i#24{|;XCy!6KuINS>NKPfj zh|}k?XBFYIXjCy&FfY=GxnJ-#xku#j80haCF&Frd{6XQ-3kSBYh_vE}m_Hn)GArWlzZ^ z*8A{b&w~f%$L{OHxm?-SF9}$X6_<>CCS;fZC7oyi1e7DGB7z9m5k)zSa&&x#w~xI{ zKU8x5>0*Q}gy*%A$vY{g3>tlEq~-UGK*E4wnoLo(O3YI#BR!Fhdn3RTyc(-8$C(OI zenz}bICryg%i)KPlzUC5$fTAFeLUkNc39Aq=PH->o>dg(C)kflfH23X`9+;)Sca-g zuuT&I5G1}Z_O?gTQ-$c2AFb9VI1r zntA&L6j - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "engine.h" -#include "note_play_handle.h" - -#include "bandedwg_instrument.h" -#include "bandedwg_instrument_view.h" -#include "bandedwg_processor.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embedded_resources.h" - - -extern "C" -{ - -plugin::descriptor bandedwg_plugin_descriptor = -{ - STRINGIFY_PLUGIN_NAME( PLUGIN_NAME ), - "Banded Wave Guide", - QT_TRANSLATE_NOOP( "pluginBrowser", - "Bowed or struck objects" ), - "Danny McRae ", - 0x0100, - plugin::Instrument, - new pluginPixmapLoader( "logo" ), - NULL -} ; - -} - - -bandedWGInstrument::bandedWGInstrument( instrumentTrack * _channel_track ): - stkInstrument( _channel_track, &bandedwg_plugin_descriptor ) -{ - model()->bowPressure()->setTrack( _channel_track ); - model()->bowPosition()->setTrack( _channel_track ); - model()->vibratoFrequency()->setTrack( _channel_track ); - model()->vibratoGain()->setTrack( _channel_track ); - model()->bowVelocity()->setTrack( _channel_track ); - model()->setStrike()->setTrack( _channel_track ); - model()->sound()->setTrack( _channel_track ); -} - - - - -bandedWGInstrument::~bandedWGInstrument() -{ -} - - - - -QString bandedWGInstrument::nodeName( void ) const -{ - return( bandedwg_plugin_descriptor.name ); -} - - - - -pluginView * bandedWGInstrument::instantiateView( QWidget * _parent ) -{ - return( new bandedWGInstrumentView( this, _parent ) ); -} - - - - -extern "C" -{ - -// neccessary for getting instance out of shared lib -plugin * lmms_plugin_main( model * _model, void * _data ) -{ - return( new bandedWGInstrument( static_cast( _data ) ) ); -} - - -} - - diff --git a/plugins/stk/voices/bandedwg/bandedwg_instrument.h b/plugins/stk/voices/bandedwg/bandedwg_instrument.h deleted file mode 100644 index 4befeca2f..000000000 --- a/plugins/stk/voices/bandedwg/bandedwg_instrument.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _BANDEDWG_INSTRUMENT_H -#define _BANDEDWG_INSTRUMENT_H - -#include "stk_instrument.h" - -#include "bandedwg_processor.h" -#include "bandedwg_model.h" - - -class bandedWGInstrument : public stkInstrument -{ -public: - bandedWGInstrument( instrumentTrack * _channel_track ); - virtual ~bandedWGInstrument( void ); - - QString nodeName( void ) const; - - pluginView * instantiateView( QWidget * _parent ); -}; - -#endif diff --git a/plugins/stk/voices/bandedwg/bandedwg_instrument_view.cpp b/plugins/stk/voices/bandedwg/bandedwg_instrument_view.cpp deleted file mode 100644 index fb231b404..000000000 --- a/plugins/stk/voices/bandedwg/bandedwg_instrument_view.cpp +++ /dev/null @@ -1,121 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include -#include -#include - -#include "bandedwg_instrument_view.h" - -#include -#include - -#include "engine.h" -#include "gui_templates.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embed.cpp" - - -bandedWGInstrumentView::bandedWGInstrumentView( bandedWGInstrument * _instrument, QWidget * _parent ) : - stkInstrumentView( _instrument, _parent ) -{ - QVBoxLayout * vl = new QVBoxLayout( m_topView ); - QHBoxLayout * h1 = new QHBoxLayout; - QHBoxLayout * h2 = new QHBoxLayout; - QHBoxLayout * h3 = new QHBoxLayout; - - m_bowPressure = new knob( knobSmall_17, m_topView, tr( "Pressure" ) ); - m_bowPressure->setLabel( tr( "Bow Pressure" ) ); - m_bowPressure->setHintText( tr( "Pressure:" ) + " ", "" ); - - m_bowPosition = new knob( knobSmall_17, m_topView, tr( "Position" ) ); - m_bowPosition->setLabel( tr( "Bow Position" ) ); - m_bowPosition->setHintText( tr( "Position:" ) + " ", "" ); - - m_vibratoFrequency = new knob( knobSmall_17, m_topView, tr( "Vib Freq" ) ); - m_vibratoFrequency->setLabel( tr( "Vibrato Frequency" ) ); - m_vibratoFrequency->setHintText( tr( "Vib Freq:" ) + " ", "" ); - - m_vibratoGain = new knob( knobSmall_17, m_topView, tr( "Vib Gain" ) ); - m_vibratoGain->setLabel( tr( "Vibrato Gain" ) ); - m_vibratoGain->setHintText( tr( "Vib Gain:" ) + " ", "" ); - - m_bowVelocity = new knob( knobSmall_17, m_topView, tr( "Bow Vel" ) ); - m_bowVelocity->setLabel( tr( "Bow Velocity" ) ); - m_bowVelocity->setHintText( tr( "Velocity" ) + " ", "" ); - - m_setStrike = new knob( knobSmall_17, m_topView, tr( "Strike" ) ); - m_setStrike->setLabel( tr( "Set Strike" ) ); - m_setStrike->setHintText( tr( "Strike" ) + " ", "" ); - - m_sound = new knob( knobSmall_17, m_topView, tr( "Instrument" ) ); - m_sound->setLabel( tr( "Instrument" ) ); - m_sound->setHintText( tr( "Instrument" ) + " ", "" ); - - h1->addWidget( m_bowPressure ); - h1->addWidget( m_bowPosition ); - - h2->addWidget( m_vibratoFrequency ); - h2->addWidget( m_vibratoGain ); - - h3->addWidget( m_bowVelocity ); - h3->addWidget( m_setStrike ); - h3->addWidget( m_sound ); - - vl->addLayout( h1 ); - vl->addLayout( h2 ); - vl->addLayout( h3 ); - - setAutoFillBackground( TRUE ); - QPalette pal; - pal.setBrush( backgroundRole(), PLUGIN_NAME::getIconPixmap( "artwork" ) ); - setPalette( pal ); -} - - - - -bandedWGInstrumentView::~bandedWGInstrumentView() -{ -} - - - - -void bandedWGInstrumentView::modelChanged( void ) -{ - stkInstrumentView::modelChanged(); - - bandedWGInstrument * inst = castModel(); - m_bowPressure->setModel( inst->model()->bowPressure() ); - m_bowPosition->setModel( inst->model()->bowPosition() ); - m_vibratoFrequency->setModel( inst->model()->vibratoFrequency() ); - m_vibratoGain->setModel( inst->model()->vibratoGain() ); - m_bowVelocity->setModel( inst->model()->bowVelocity() ); - m_setStrike->setModel( inst->model()->setStrike() ); - m_sound->setModel( inst->model()->sound() ); -} - - - diff --git a/plugins/stk/voices/bandedwg/bandedwg_instrument_view.h b/plugins/stk/voices/bandedwg/bandedwg_instrument_view.h deleted file mode 100644 index f99b86c77..000000000 --- a/plugins/stk/voices/bandedwg/bandedwg_instrument_view.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _BANDEDWG_INSTRUMENT_VIEW_H -#define _BANDEDWG_INSTRUMENT_VIEW_H - -#include "knob.h" - -#include "stk_instrument_view.h" -#include "bandedwg_instrument.h" - - -class bandedWGInstrumentView: public stkInstrumentView -{ -public: - bandedWGInstrumentView( bandedWGInstrument * _instrument, QWidget * _parent ); - virtual ~bandedWGInstrumentView( void ); - -private: - virtual void modelChanged( void ); - - knob * m_bowPressure; - knob * m_bowPosition; - knob * m_vibratoFrequency; - knob * m_vibratoGain; - knob * m_bowVelocity; - knob * m_setStrike; - knob * m_sound; -}; - -#endif diff --git a/plugins/stk/voices/bandedwg/bandedwg_model.cpp b/plugins/stk/voices/bandedwg/bandedwg_model.cpp deleted file mode 100644 index 0a13f53c8..000000000 --- a/plugins/stk/voices/bandedwg/bandedwg_model.cpp +++ /dev/null @@ -1,98 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "bandedwg_model.h" - - -bandedWGModel::bandedWGModel( bool _monophonic, - StkFloat _portamento, - StkFloat _bend, - StkFloat _bend_range, - bool _velocity_sensitive_lpf, - StkFloat _velocity_sensitive_q, - StkFloat _volume, - StkFloat _pan, - StkFloat _spread, - StkFloat _bow_pressure, - StkFloat _bow_position, - StkFloat _vibrato_frequency, - StkFloat _vibrato_gain, - StkFloat _bow_velocity, - StkFloat _set_strike, - StkFloat _sound ): - stkModel( _monophonic, _portamento, _bend, _bend_range, _velocity_sensitive_lpf, _velocity_sensitive_q, _volume, _pan, _spread ), - m_bowPressure( new floatModel( _bow_pressure, 0.0f, 128.0f, 0.1f, this ) ), - m_bowPosition( new floatModel( _bow_position, 0.0f, 128.0f, 0.1f, this ) ), - m_vibratoFrequency( new floatModel( _vibrato_frequency, 0.0f, 128.0f, 0.1f, this ) ), - m_vibratoGain( new floatModel( _vibrato_gain, 0.0f, 128.0f, 0.1f, this ) ), - m_bowVelocity( new floatModel( _bow_velocity, 0.0f, 128.0f, 0.1f, this ) ), - m_setStrike( new floatModel( _set_strike, 0.0f, 128.0f, 0.1f, this ) ), - m_sound( new floatModel( _sound, 0.0f, 3.0f, 1.0f, this ) ) -{ -} - - - - -bandedWGModel::~bandedWGModel() -{ - delete m_bowPressure; - delete m_bowPosition; - delete m_vibratoFrequency; - delete m_vibratoGain; - delete m_bowVelocity; - delete m_setStrike; - delete m_sound; -} - - - - -void bandedWGModel::saveSettings( QDomDocument & _doc, QDomElement & _parent ) -{ - stkModel::saveSettings( _doc, _parent ); - m_bowPressure->saveSettings( _doc, _parent, "bowpressure" ); - m_bowPosition->saveSettings( _doc, _parent, "bowgain" ); - m_vibratoFrequency->saveSettings( _doc, _parent, "vibratofrequency" ); - m_vibratoGain->saveSettings( _doc, _parent, "vibratogain" ); - m_bowVelocity->saveSettings( _doc, _parent, "bowvelocity" ); - m_setStrike->saveSettings( _doc, _parent, "setstrike" ); - m_sound->saveSettings( _doc, _parent, "sound" ); -} - - - - -void bandedWGModel::loadSettings( const QDomElement & _this ) -{ - stkModel::loadSettings( _this ); - m_bowPressure->loadSettings( _this, "bowpressure" ); - m_bowPosition->loadSettings( _this, "bowposition" ); - m_vibratoFrequency->loadSettings( _this, "vibratofrequency" ); - m_vibratoGain->loadSettings( _this, "vibratogain" ); - m_bowVelocity->loadSettings( _this, "bowvelocity" ); - m_setStrike->loadSettings( _this, "setstrike" ); - m_sound->loadSettings( _this, "sound" ); -} - diff --git a/plugins/stk/voices/bandedwg/bandedwg_model.h b/plugins/stk/voices/bandedwg/bandedwg_model.h deleted file mode 100644 index eab3e1c49..000000000 --- a/plugins/stk/voices/bandedwg/bandedwg_model.h +++ /dev/null @@ -1,100 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _BANDEDWG_MODEL_H -#define _BANDEDWG_MODEL_H - -#include "stk_model.h" - - -class bandedWGModel: public stkModel -{ -public: - bandedWGModel( bool _monophonic = FALSE, - StkFloat _portamento = 0.0f, - StkFloat _bend = 0.0f, - StkFloat _bend_range = 2.0f, - bool _velocity_sensitive_lpf = TRUE, - StkFloat _velocity_sensitive_q = 0.5f, - StkFloat _volume = 1.0f, - StkFloat _pan = 0.0f, - StkFloat _spread = 0.0f, - StkFloat _bow_pressure = 64.0f, - StkFloat _bow_position = 64.0f, - StkFloat _vibrato_frequency = 64.0f, - StkFloat _vibrato_gain = 64.0f, - StkFloat _bow_velocity = 64.0f, - StkFloat _set_strike = 64.0f, - StkFloat _sound = 0.0f ); - ~bandedWGModel(); - - inline floatModel * bowPressure( void ) const - { - return( m_bowPressure ); - } - - inline floatModel * bowPosition( void ) const - { - return( m_bowPosition ); - } - - inline floatModel * vibratoFrequency( void ) const - { - return( m_vibratoFrequency ); - } - - inline floatModel * vibratoGain( void ) const - { - return( m_vibratoGain ); - } - - inline floatModel * bowVelocity( void ) const - { - return( m_bowVelocity ); - } - - inline floatModel * setStrike( void ) const - { - return( m_setStrike ); - } - - inline floatModel * sound( void ) const - { - return( m_sound ); - } - - virtual void saveSettings( QDomDocument & _doc, QDomElement & _parent ); - - virtual void loadSettings( const QDomElement & _this ); - -private: - floatModel * m_bowPressure; - floatModel * m_bowPosition; - floatModel * m_vibratoFrequency; - floatModel * m_vibratoGain; - floatModel * m_bowVelocity; - floatModel * m_setStrike; - floatModel * m_sound; -}; - -#endif diff --git a/plugins/stk/voices/bandedwg/bandedwg_processor.cpp b/plugins/stk/voices/bandedwg/bandedwg_processor.cpp deleted file mode 100644 index fef8f88bb..000000000 --- a/plugins/stk/voices/bandedwg/bandedwg_processor.cpp +++ /dev/null @@ -1,53 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include "bandedwg_processor.h" -#include "config_mgr.h" - - -bandedWGProcessor::bandedWGProcessor( sample_rate_t _sample_rate ): - stkProcessor( _sample_rate ) -{ -} - - - - -bandedWGProcessor::~bandedWGProcessor() -{ -} - - - - -void bandedWGProcessor::setControls( bandedWGModel * _model ) -{ - voice()->controlChange( 2, _model->bowPressure()->value() ); - voice()->controlChange( 4, _model->bowPosition()->value() ); - voice()->controlChange( 11, _model->vibratoFrequency()->value() ); - voice()->controlChange( 1, _model->vibratoGain()->value() ); - voice()->controlChange( 128, _model->bowVelocity()->value() ); - voice()->controlChange( 64, _model->setStrike()->value() ); - voice()->controlChange( 16, _model->sound()->value() ); - m_delayRead = m_delayWrite - static_cast( _model->spread()->value() ); -} diff --git a/plugins/stk/voices/bandedwg/bandedwg_processor.h b/plugins/stk/voices/bandedwg/bandedwg_processor.h deleted file mode 100644 index ed147b53d..000000000 --- a/plugins/stk/voices/bandedwg/bandedwg_processor.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _BANDEDWG_PROCESSOR_H -#define _BANDEDWG_PROCESSOR_H - -#include "BandedWG.h" - -#include "stk_processor.h" - -#include "bandedwg_model.h" - -class bandedWGProcessor: public stkProcessor -{ -public: - bandedWGProcessor( sample_rate_t _sample_rate ); - ~bandedWGProcessor( void ); - - void setControls( bandedWGModel * _model ); -}; - -#endif diff --git a/plugins/stk/voices/bandedwg/logo.png b/plugins/stk/voices/bandedwg/logo.png deleted file mode 100644 index 93fcd1746131e93516a5c85394decef1d7df2561..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 659 zcmV;E0&M+>P)BB%v^%K{!OpGvZ5fKp)5fL#?O|eA$Le0=`hnTRw z&NAP2XGBCqM8p+UMnyzKL_|cyXEn``*j+PR>3}$HZJnjhUh$2`EjM4U%iQEaZ~461 zxJr!GENm6e*Pq$3&r@7UEwPH`r!hUf_O>>uVvDczH&-Y?!b>wOBYBlI{ z+N8^CiYH8nclFf;eisX>Bkzfas=+Gpb(LP*#H44doe}Y|>#GCbikqv!M)9TryTnQB z>SET5h(lg>pJg>GmpbD&bF0BlvB|JFYGuvFo%Wa%5i#Nwi|Zn85r=CQM#QK%=IZ)u z78$bHN5(`Px4PPROuSPKmWVMcoe~dJXL_wMEcR6!+r`FeFeG+Wc~tyrMg1L?i<8yH z0dadZ*eaf@Dc%;}8K}><6$h(@LGe>H=yTc`12xSx z#>7+A%4YXe8w(v4PgV=}iw~>8D)Cj#aJNYlZmSC%5MO%4b>`?dXoH`{uzA(OOX7uU zuu;5GEo>5_7T0;kMMOkI#6e4|ja}m2YOqs0TrIF$>@%m%af1zZ7&d0Y2}itdolEK> tj*4rm!H5{FHWvCpY^$!WuCD)&KLEu%@0qNKIFkSX002ovPDHLkV1i3NG93T_ diff --git a/plugins/stk/voices/blow_bottle/Makefile.am b/plugins/stk/voices/blow_bottle/Makefile.am deleted file mode 100644 index 4543314df..000000000 --- a/plugins/stk/voices/blow_bottle/Makefile.am +++ /dev/null @@ -1,46 +0,0 @@ -AUTOMAKE_OPTIONS = foreign 1.4 - - -INCLUDES = -I@stk_includes@ -I$(top_srcdir)/include -I$(top_srcdir)/src/lib -I. -I$(top_srcdir)/plugins/stk/voices/include - - -AM_CXXFLAGS := $(AM_CXXFLAGS) $(QT_CXXFLAGS) -DPLUGIN_NAME="blowbottle" - - -%.moc: ./%.h - $(MOC) -o $@ $< - - -MOC_FILES = ./blow_bottle_model.moc - -BUILT_SOURCES = $(MOC_FILES) ./embedded_resources.h -EMBEDDED_RESOURCES = $(wildcard *png) - -./embedded_resources.h: $(EMBEDDED_RESOURCES) - $(BIN2RES) $(EMBEDDED_RESOURCES) > $@ - -EXTRA_DIST = $(EMBEDDED_RESOURCES) - - -CLEANFILES = $(MOC_FILES) ./embedded_resources.h - - - -pkglib_LTLIBRARIES = libblowbottle.la - -libblowbottle_la_SOURCES = blow_bottle_model.cpp \ - blow_bottle_model.h \ - blow_bottle_processor.cpp \ - blow_bottle_processor.h \ - blow_bottle_instrument.cpp \ - blow_bottle_instrument.h \ - blow_bottle_instrument_view.cpp \ - blow_bottle_instrument_view.h \ - $(top_srcdir)/plugins/stk/voices/src/stk_model.cpp \ - stk_model.h - - - -libblowbottle_la_LDFLAGS = -L@stk_lib@ -lstk -Wl,-export-dynamic - -$(libblowbottle_la_SOURCES): ./embedded_resources.h diff --git a/plugins/stk/voices/blow_bottle/artwork.png b/plugins/stk/voices/blow_bottle/artwork.png deleted file mode 100644 index bfdd3dcb3aa465942504ceb2b157286bc09b89c5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 64915 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 - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "engine.h" -#include "note_play_handle.h" - -#include "blow_bottle_instrument.h" -#include "blow_bottle_instrument_view.h" -#include "blow_bottle_processor.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embedded_resources.h" - - -extern "C" -{ - -plugin::descriptor blowbottle_plugin_descriptor = -{ - STRINGIFY_PLUGIN_NAME( PLUGIN_NAME ), - "Blow Bottle", - QT_TRANSLATE_NOOP( "pluginBrowser", - "Blown bottle noises" ), - "Danny McRae ", - 0x0100, - plugin::Instrument, - new pluginPixmapLoader( "logo" ), - NULL -} ; - -} - - -blowBottleInstrument::blowBottleInstrument( instrumentTrack * _channel_track ): - stkInstrument( _channel_track, &blowbottle_plugin_descriptor ) -{ - model()->noiseGain()->setTrack( _channel_track ); - model()->vibratoFrequency()->setTrack( _channel_track ); - model()->vibratoGain()->setTrack( _channel_track ); -} - - - - -blowBottleInstrument::~blowBottleInstrument() -{ -} - - - - -QString blowBottleInstrument::nodeName( void ) const -{ - return( blowbottle_plugin_descriptor.name ); -} - - - - -pluginView * blowBottleInstrument::instantiateView( QWidget * _parent ) -{ - return( new blowBottleInstrumentView( this, _parent ) ); -} - - - - -extern "C" -{ - -// neccessary for getting instance out of shared lib -plugin * lmms_plugin_main( model * _model, void * _data ) -{ - return( new blowBottleInstrument( static_cast( _data ) ) ); -} - - -} - - diff --git a/plugins/stk/voices/blow_bottle/blow_bottle_instrument.h b/plugins/stk/voices/blow_bottle/blow_bottle_instrument.h deleted file mode 100644 index 66f6cef02..000000000 --- a/plugins/stk/voices/blow_bottle/blow_bottle_instrument.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * blow_bottle_instrument.h - interface to lmms for blown bottle noises - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _BLOW_BOTTLE_INSTRUMENT_H -#define _BLOW_BOTTLE_INSTRUMENT_H - -#include "stk_instrument.h" - -#include "blow_bottle_processor.h" -#include "blow_bottle_model.h" - - -class blowBottleInstrument : public stkInstrument -{ -public: - blowBottleInstrument( instrumentTrack * _channel_track ); - virtual ~blowBottleInstrument( void ); - - QString nodeName( void ) const; - - pluginView * instantiateView( QWidget * _parent ); -}; - -#endif diff --git a/plugins/stk/voices/blow_bottle/blow_bottle_instrument_view.cpp b/plugins/stk/voices/blow_bottle/blow_bottle_instrument_view.cpp deleted file mode 100644 index 61fe9a051..000000000 --- a/plugins/stk/voices/blow_bottle/blow_bottle_instrument_view.cpp +++ /dev/null @@ -1,89 +0,0 @@ -/* - * blow_bottle_instrument_view.cpp - gui interface to blown bottle noises - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include -#include -#include - -#include "blow_bottle_instrument_view.h" - -#include -#include - -#include "engine.h" -#include "gui_templates.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embed.cpp" - - -blowBottleInstrumentView::blowBottleInstrumentView( blowBottleInstrument * _instrument, QWidget * _parent ) : - stkInstrumentView( _instrument, _parent ) -{ - QVBoxLayout * vl = new QVBoxLayout( m_topView ); - - m_noiseGain = new knob( knobSmall_17, m_topView, tr( "Noise" ) ); - m_noiseGain->setLabel( tr( "Noise Gain" ) ); - m_noiseGain->setHintText( tr( "Noise:" ) + " ", "" ); - - m_vibratoFrequency = new knob( knobSmall_17, m_topView, tr( "Vib Freq" ) ); - m_vibratoFrequency->setLabel( tr( "Vibrato Frequency" ) ); - m_vibratoFrequency->setHintText( tr( "Vib Freq:" ) + " ", "" ); - - m_vibratoGain = new knob( knobSmall_17, m_topView, tr( "Vib Gain" ) ); - m_vibratoGain->setLabel( tr( "Vibrato Gain" ) ); - m_vibratoGain->setHintText( tr( "Vib Gain:" ) + " ", "" ); - - vl->addWidget( m_noiseGain ); - vl->addWidget( m_vibratoFrequency ); - vl->addWidget( m_vibratoGain ); - - setAutoFillBackground( TRUE ); - QPalette pal; - pal.setBrush( backgroundRole(), PLUGIN_NAME::getIconPixmap( "artwork" ) ); - setPalette( pal ); -} - - - - -blowBottleInstrumentView::~blowBottleInstrumentView() -{ -} - - - - -void blowBottleInstrumentView::modelChanged( void ) -{ - stkInstrumentView::modelChanged(); - - blowBottleInstrument * inst = castModel(); - m_noiseGain->setModel( inst->model()->noiseGain() ); - m_vibratoFrequency->setModel( inst->model()->vibratoFrequency() ); - m_vibratoGain->setModel( inst->model()->vibratoGain() ); -} - - - diff --git a/plugins/stk/voices/blow_bottle/blow_bottle_instrument_view.h b/plugins/stk/voices/blow_bottle/blow_bottle_instrument_view.h deleted file mode 100644 index 38e9e8dc3..000000000 --- a/plugins/stk/voices/blow_bottle/blow_bottle_instrument_view.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * blow_bottle_instrument_view.h - gui interface to blown bottle noises - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _BLOW_BOTTLE_INSTRUMENT_VIEW_H -#define _BLOW_BOTTLE_INSTRUMENT_VIEW_H - -#include "knob.h" - -#include "stk_instrument_view.h" -#include "blow_bottle_instrument.h" - - -class blowBottleInstrumentView: public stkInstrumentView -{ -public: - blowBottleInstrumentView( blowBottleInstrument * _instrument, QWidget * _parent ); - virtual ~blowBottleInstrumentView( void ); - -private: - virtual void modelChanged( void ); - - knob * m_noiseGain; - knob * m_vibratoFrequency; - knob * m_vibratoGain; -}; - -#endif diff --git a/plugins/stk/voices/blow_bottle/blow_bottle_model.cpp b/plugins/stk/voices/blow_bottle/blow_bottle_model.cpp deleted file mode 100644 index 7d8739f02..000000000 --- a/plugins/stk/voices/blow_bottle/blow_bottle_model.cpp +++ /dev/null @@ -1,79 +0,0 @@ -/* - * blow_bottle_model.cpp - data storage for blown bottle noises - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "blow_bottle_model.h" - - -blowBottleModel::blowBottleModel( bool _monophonic, - StkFloat _portamento, - StkFloat _bend, - StkFloat _bend_range, - bool _velocity_sensitive_lpf, - StkFloat _velocity_sensitive_q, - StkFloat _volume, - StkFloat _pan, - StkFloat _spread, - StkFloat _noise_gain, - StkFloat _vibrato_frequency, - StkFloat _vibrato_gain ): - stkModel( _monophonic, _portamento, _bend, _bend_range, _velocity_sensitive_lpf, _velocity_sensitive_q, _volume, _pan, _spread ), - m_noiseGain( new floatModel( _noise_gain, 0.0f, 128.0f, 0.1f, this ) ), - m_vibratoFrequency( new floatModel( _vibrato_frequency, 0.0f, 128.0f, 0.1f, this ) ), - m_vibratoGain( new floatModel( _vibrato_gain, 0.0f, 128.0f, 0.1f, this ) ) -{ -} - - - - -blowBottleModel::~blowBottleModel() -{ - delete m_noiseGain; - delete m_vibratoFrequency; - delete m_vibratoGain; -} - - - - -void blowBottleModel::saveSettings( QDomDocument & _doc, QDomElement & _parent ) -{ - stkModel::saveSettings( _doc, _parent ); - m_noiseGain->saveSettings( _doc, _parent, "noisegain" ); - m_vibratoFrequency->saveSettings( _doc, _parent, "vibratofrequency" ); - m_vibratoGain->saveSettings( _doc, _parent, "vibratogain" ); -} - - - - -void blowBottleModel::loadSettings( const QDomElement & _this ) -{ - stkModel::loadSettings( _this ); - m_noiseGain->loadSettings( _this, "noisegain" ); - m_vibratoFrequency->loadSettings( _this, "vibratofrequency" ); - m_vibratoGain->loadSettings( _this, "vibratogain" ); -} - diff --git a/plugins/stk/voices/blow_bottle/blow_bottle_model.h b/plugins/stk/voices/blow_bottle/blow_bottle_model.h deleted file mode 100644 index 2dee5d91a..000000000 --- a/plugins/stk/voices/blow_bottle/blow_bottle_model.h +++ /dev/null @@ -1,63 +0,0 @@ -/* - * blow_bottle_model.h - data storage for blown bottle noises - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _BLOW_BOTTLE_MODEL_H -#define _BLOW_BOTTLE_MODEL_H - -#include "stk_model.h" - - -class blowBottleModel: public stkModel -{ -public: - blowBottleModel( bool _monophonic = FALSE, - StkFloat _portamento = 0.0f, - StkFloat _bend = 0.0f, - StkFloat _bend_range = 2.0f, - bool _velocity_sensitive_lpf = TRUE, - StkFloat _velocity_sensitive_q = 0.5f, - StkFloat _volume = 1.0f, - StkFloat _pan = 0.0f, - StkFloat _spread = 0.0f, - StkFloat _noise_gain = 64.0f, - StkFloat _vibrato_frequency = 64.0f, - StkFloat _vibrato_gain = 64.0f ); - ~blowBottleModel(); - - inline floatModel * noiseGain( void ) { return( m_noiseGain ); } - inline floatModel * vibratoFrequency( void ) { return( m_vibratoFrequency ); } - inline floatModel * vibratoGain( void ) { return( m_vibratoGain ); } - - void saveSettings( QDomDocument & _doc, QDomElement & _parent ); - - void loadSettings( const QDomElement & _this ); - -private: - floatModel * m_noiseGain; - floatModel * m_vibratoFrequency; - floatModel * m_vibratoGain; - floatModel * m_volume; -}; - -#endif diff --git a/plugins/stk/voices/blow_bottle/blow_bottle_processor.cpp b/plugins/stk/voices/blow_bottle/blow_bottle_processor.cpp deleted file mode 100644 index f65239356..000000000 --- a/plugins/stk/voices/blow_bottle/blow_bottle_processor.cpp +++ /dev/null @@ -1,53 +0,0 @@ -/* - * blow_bottle_processor.cpp - sound generator for blown bottle noises - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include "BlowBotl.h" - -#include "blow_bottle_processor.h" -#include "config_mgr.h" - - -blowBottleProcessor::blowBottleProcessor( sample_rate_t _sample_rate ): - stkProcessor( _sample_rate ) -{ -} - - - - -blowBottleProcessor::~blowBottleProcessor() -{ -} - - - - -void blowBottleProcessor::setControls( blowBottleModel * _model ) -{ - voice()->controlChange( 1, _model->vibratoGain()->value() ); - voice()->controlChange( 4, _model->noiseGain()->value() ); - voice()->controlChange( 11, _model->vibratoFrequency()->value() ); - voice()->controlChange( 128, _model->volume()->value() ); - m_delayRead = m_delayWrite - static_cast( _model->spread()->value() ); -} diff --git a/plugins/stk/voices/blow_bottle/blow_bottle_processor.h b/plugins/stk/voices/blow_bottle/blow_bottle_processor.h deleted file mode 100644 index f94f8539a..000000000 --- a/plugins/stk/voices/blow_bottle/blow_bottle_processor.h +++ /dev/null @@ -1,43 +0,0 @@ -/* - * blow_bottle_processor.h - sound generator for blown bottle noises - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _BLOW_BOTTLE_PROCESSOR_H -#define _BLOW_BOTTLE_PROCESSOR_H - -#include "BlowBotl.h" - -#include "stk_processor.h" - -#include "blow_bottle_model.h" - -class blowBottleProcessor: public stkProcessor -{ -public: - blowBottleProcessor( sample_rate_t _sample_rate ); - ~blowBottleProcessor( void ); - - void setControls( blowBottleModel * _model ); -}; - -#endif diff --git a/plugins/stk/voices/blow_bottle/logo.png b/plugins/stk/voices/blow_bottle/logo.png deleted file mode 100644 index 93fcd1746131e93516a5c85394decef1d7df2561..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 659 zcmV;E0&M+>P)BB%v^%K{!OpGvZ5fKp)5fL#?O|eA$Le0=`hnTRw z&NAP2XGBCqM8p+UMnyzKL_|cyXEn``*j+PR>3}$HZJnjhUh$2`EjM4U%iQEaZ~461 zxJr!GENm6e*Pq$3&r@7UEwPH`r!hUf_O>>uVvDczH&-Y?!b>wOBYBlI{ z+N8^CiYH8nclFf;eisX>Bkzfas=+Gpb(LP*#H44doe}Y|>#GCbikqv!M)9TryTnQB z>SET5h(lg>pJg>GmpbD&bF0BlvB|JFYGuvFo%Wa%5i#Nwi|Zn85r=CQM#QK%=IZ)u z78$bHN5(`Px4PPROuSPKmWVMcoe~dJXL_wMEcR6!+r`FeFeG+Wc~tyrMg1L?i<8yH z0dadZ*eaf@Dc%;}8K}><6$h(@LGe>H=yTc`12xSx z#>7+A%4YXe8w(v4PgV=}iw~>8D)Cj#aJNYlZmSC%5MO%4b>`?dXoH`{uzA(OOX7uU zuu;5GEo>5_7T0;kMMOkI#6e4|ja}m2YOqs0TrIF$>@%m%af1zZ7&d0Y2}itdolEK> tj*4rm!H5{FHWvCpY^$!WuCD)&KLEu%@0qNKIFkSX002ovPDHLkV1i3NG93T_ diff --git a/plugins/stk/voices/blow_hole/Makefile.am b/plugins/stk/voices/blow_hole/Makefile.am deleted file mode 100644 index d4751fdd4..000000000 --- a/plugins/stk/voices/blow_hole/Makefile.am +++ /dev/null @@ -1,46 +0,0 @@ -AUTOMAKE_OPTIONS = foreign 1.4 - - -INCLUDES = -I@stk_includes@ -I$(top_srcdir)/include -I$(top_srcdir)/src/lib -I. -I$(top_srcdir)/plugins/stk/voices/include - - -AM_CXXFLAGS := $(AM_CXXFLAGS) $(QT_CXXFLAGS) -DPLUGIN_NAME="blowhole" - - -%.moc: ./%.h - $(MOC) -o $@ $< - - -MOC_FILES = ./blow_hole_model.moc - -BUILT_SOURCES = $(MOC_FILES) ./embedded_resources.h -EMBEDDED_RESOURCES = $(wildcard *png) - -./embedded_resources.h: $(EMBEDDED_RESOURCES) - $(BIN2RES) $(EMBEDDED_RESOURCES) > $@ - -EXTRA_DIST = $(EMBEDDED_RESOURCES) - - -CLEANFILES = $(MOC_FILES) ./embedded_resources.h - - - -pkglib_LTLIBRARIES = libblowhole.la - -libblowhole_la_SOURCES = blow_hole_model.cpp \ - blow_hole_model.h \ - blow_hole_processor.cpp \ - blow_hole_processor.h \ - blow_hole_instrument.cpp \ - blow_hole_instrument.h \ - blow_hole_instrument_view.cpp \ - blow_hole_instrument_view.h \ - $(top_srcdir)/plugins/stk/voices/src/stk_model.cpp \ - stk_model.h - - - -libblowhole_la_LDFLAGS = -L@stk_lib@ -lstk -Wl,-export-dynamic - -$(libblowhole_la_SOURCES): ./embedded_resources.h diff --git a/plugins/stk/voices/blow_hole/artwork.png b/plugins/stk/voices/blow_hole/artwork.png deleted file mode 100644 index 0192c1d05158c5965aa0883a588692795a1adaed..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 64595 zcmV*_Kq|k9P)&>y>4hr&rsy`e8PkHBHm+_p>a+ z5BRsLD!f?~1^$}xRoAt?f+OIs^Z6W~$FE)2m3-mD`V&5epYc9UryuaJ7b1}iHo`*R|FVDZB`Ccc7q z@Odl_-qG>3N;n19L1)MNct^+7!L{1@E{>0XaU(b&&Zs}>!RcP`1FjiI!=dmF4yDuW z?Cj_Ybt8Hl_*bhDk4Zn{Ech;tgP*lZI8m2nb1oFF1b?ziZyK!we#BYgu)22~4Ik5+ z_zeEFJ8hbh@8f6PyFL)&q#tx8@vDB;L3DO~UF$FL!+ATtbUpYaJ~kSS^cj6u%aZ@i z-~0`h8b{EH8@r}*HlN{C4G)SV>dtY)eXe+(;ZM3-TxEwhGs-SbjC1JH@heWO>u9@n zHnk_$>-TK^=Jq5SzUKA3$O~-%TgRr+DqztklZhS}kDTeQam>1@J6o#`Pb}klbyaCK-t~@TT`Pe1A*Nb-t-His4^_`k%0fb~qv2NxG5+cGs*Jxh z+<_9QURCYx?wU++N9jrFe(eF56&@2Vw4lY7 zvmD#BwkzS?PG|Eu{;%hd1N^tXzK&1YlYr*Hv*Z=vR$B@V4yr#%2Mh*%9Uluqb%T%N z?uy-ADX;<6RV~TDJ>xi1lUN?DIKDF)4Y6?3`Bdk{ZF6ODBv_~EWOsryudFQZ&xv$j zZuBVGFc8`X_AG5RGJIZ-N|qDH(f+CU(!;QnK9AK~U0pqV z`0(oL3O)(ptfYbLTJ5%NKiZw-Me9ofWshfOYNoJF)8Q^FURljA@}j%4^7Ylpcm<`l zHr|2CcZHF4(wAX+sNU>bvzeY{GairKoaOp!VNbSc216K;0luz1J)KSQxNu(l3E$NN z!9qx{;7n7BGCuDQYhO+z8I@xrMYSS3PG`eZds&%@pdjLBtq&CeMUYRFK87{`zUy9= z*+z&CpN{(;)TWT0P_eiqT5W73+o+qHn_F935OMqqDL-@O%!LaV@Pqt;#iyV>7EeUm zBNX4`Ug7lWq`FOsxZg|qnBNz-&E7ldL~)Qj>DC{3F73Mbq1!te{fvdZ8m2OifAHYJ zYp%KG$DZ*FX_nh>zrB)h%43sI?)gkm#${1c?Lni5wbe$5br}qLdkTX)*i_MMhSitd z)HOA3!eOj&O?%D&y`64OWx42V$(7W!x8zW^oPurj*zrVE+=gt zPNX-bS7aX`eFdW+TLCN=Kd%d@=N>=cN30p%k;5aEzvz@}ooCZ&N!tX^y6s#oH*`+S z#uT}pG>*N!y?yrV+57Ih@BaJmKYjW%Bp&aC5NJa#%J&ZwvLE=T_&H?vKl$XM^e;;M z_aE&C9%S+LxU1F8KJHtK?<_4X9pGzab@k|xBOM*KN{$hizm^Iwv~jq1nmt35KhA3X)KDcje(!#;zPNbyNu5l z1zfa_yRl5+BR+_S-IkbuO^Qv$SwOo!vhYsz}iH3urBo!{TtVh`Ec;4D+au`x* z+tU-mQp*%jO_*LkaA38ndXf@d4CH&zAHX<7_)8xx)49%_JNM|LkKTLlz2E)rcOQ7* z0VsIsFNNv2Y#4XwJgK4B0NPG+tmRL~pHdJEq1cniMJ>K4YdJND9gR*@=#)517=)0Y zh(jPA@xHD(ncODiWY1CIe^O+Rll6GvPOrT3${TLD;nGVl#RENm{=6AX+`KMJ!a8Rd z4$J(r0ha-9sox;aR87Z!U zhkz#|j|tv3;)=ZRT){q^NIG7kK)+w1Y9q(!{en9Yy$ibd&p7p98v6o(Qf zc$A~j5*8LaM<<;p`7;fbWqo?gv5}y{A?V-x-uG_1?Y2iAc|>Q#I%BIJJ9g~o(W3`e zSBE2eLDpe-@i2N6dIc4wP62N%cT>EWqtj+EnS01`p!dK=Cfy8{`DMHUK<+-w- zwl0-94Dz=ojPCnoe{F4Te@>*h%{G-nD|6jiS&7VjZnF}$wne+Vyey$qgc|u!DSo9y z6vD~^D@UnVP{Fh|A^ycvfZy_+?|cX14!_0h&uDbX@#CjXow|fC*mS6N?4KTkKZJnN zKJF6Gs%x_;I=8S`$p>DH?mc5bX+}xG9(`9y9xNoJ5TD19!_B~7Ap$zAd{-Qz<`1FW zL!j-*Jf+KUR{ zJmyG#WLWmd+D3$sHZh*=JoczANg7B}tDqwO3cYJNMBIoel2*srpA+FT*vZtFwp&aM zr8Tsth~x9~(rQueQ0R$=*K^U^n6msCrr~v2!wDa|I)Jdc%u(6ZOVH;O+ zb>v_up3$9Z8{kS5zjciQAIr4F4$+lFWCFv2|FC){;&?{PtG3LMD;$qnO{6~UA=Yhw z*w>8|^tkZdGw06j?oPJ1ckmhWsNq{qr`iveVelQ6@|w)d*mlf3$gA-keBjz^uRVVJ zc&ZV!H$DF*h&yiSz`=v~7>p@CbM@6%A31uopb7x?2F@}WPujr%avnM@}WY*0%=SUJLyvXU5v<{2Uo zlgqj>h0X04i?F(~>RKT4szr+0Awr&j3Z(|w#l2hR5pv1oQoidcMJQZs=kUd4HX(}G zd$6u0-&8n+*TI7ausiHobj_eQXtNgkCo&M&fhzF9yM~HBbNV!v0+ti^j;+2s+0B)} zVTQ1Z1ceg1q1z%SfTfo+1I<0dlcswF)9{gxd<1V^fBp65$fnO6J$7`wgQwnp;R|2D zW(em8e|^t;-UB`K^rt^ve$LL$&Vvs;cDAjRED>8#&GDP=rt~gkV!(3^B%N5# zGiT1+dh4xt!1xue%T-rhb>$UT;weD5Va+A(kOn9tEI6JNtrJXl6PfiaB_tw#GmAH| z1X^tyI}1%OL09E565FcILJunn!ml_{mWnp2a9M)4Yp`imc#>qZ&&}A8Q+1WGaws*F_`OR;_&|P)))j#pV7vea! zGir)Aw?`$j0+Y#oP$XYv>OnM9igHw-gCFO?Bj)|tpZ!^F@zbYI+dC&O#Z5xEKlGsw z;Wl3Ln%BJOMK8kfq2@pFiBEj#OJBk}_!X`s7Uj}Ym%`vexFhJf{EEwOzx{SZy?AWT zeC9K?*|7K!tW;+xs%^2`GmrM!4C+sj$7LoGJGlj*RC5m-5`Xb5M#f zhBw@B1LPZ82|oHImmGsX1EoF~3}yNu9ILAb@MNJ`A+g)rW7VU=1(zy~g@Q?sy05NZ zf0YqXzRps6RS$m|E{#|Y^=v&vIa1H~70+75CP+N2mhA_IQ5N6lIo`Cr!Fa-tU)g{3 zJ+Pv~uov9Q*ZgFB}w6zknP9X25RZ(4YF`r*M6*dey7oz-aH{XNdbbbEpA*GfRcO(!F8$5A<&3R0zZ&!NtkogF@D!*WoMT!;tK!Jmo3yVX*!X{VT4x;z>_> z5*`h{g~w-!0g5j|Dd~8;BVSg_0!fRAJaTBB{)4Aec~K&CEj2gRL8YZ;zE?nK;vj)p z&_=?#6bUAPD-0AvATQuqDLsngYvWn&t1J{_;IAh7{oZ21C!$RYTf1&^YxAzV?tbKv zN8qjDg)c%r@euJd0ti{QYGrkW3dPJc{dM!b6eFwhf8YK0;RIN|H@@+Wx*)99*KfJy zz3+W5Vj~;{clF?d4@lX|6}#ikJMioCp7%T%e!K%eLFsCFQA?wd#O~`~|2l3A766Zp zhQ5Z!f5qjO|I|Vk;UU1H6YQx# zX7S9FpX}9BP){zK@{At0J#*O5)@{+iW zl1LaH-{EnLT$K*&SUzi@Wt&vn$AQi7*s;_QEwg>n9VZn-Of08(SH&WPA6SO~?craz zMu>_k^WVAXZ5*5Gr&FG_C@x&MU~b0cmoJT$tgKC;dBF=_0C6{m{@5{G;Drlo_!&CJ z4#ff!laj}I^Eu?>i(mXA-hl>UfvH+vSutmQYwPo0_&oLif?zBVR^j8H_ykUR^NU_| z=FI6l1u?3nTOynZT_{b}AZ7Q3%HR_BwHuY*R+-(TO}L$=R=E_LUf!4cY;E@hp2&~| zNx>6;QNZ&Ss8EVob<@z4QSp}ZiuaW{z`69O0=L6-GDOO&0J}IsIx~NeRO?ey}JMY`y(gSx4gih zVR1xH1rP6m2TXHg5v?{bhq@})FJAn>2R?u|;V({TD52&h`X)wQ2Q!Kg>Jy*%B%B#6 z2)y%8e)5wzARKqY&*V9LcYGcp#pcD$m%j96&`%J0JQciycKu`(@1Cjc6q zQfbtMwI#V#Y|i9OMI;cxMu1(hfRNyG=guQo!V&OX@D#4N^2)=94`cnWe3HGeD`ALm zkn`uyBb?pd+D6bH_!i!W16@i6B|SOKOiU>~)zU^ulH@!H2LTxzD9U8n63#bE)U~Wv zWOZ{vSr|bEl*L^XxNy}#>o4u2h0;=wxhL^%o)TG+w#UlD0yCFj7cFtcL16KuXjqHz zbTjtG@#80Og|YE)^gHi7SV7bR4goefgRxEqz zsZ+9sKlM{T_5Sz2|08_G=YQo5zXJ8IRgY=f#*l~S3nd)@2c;zxm9 z-jOcP4Xgc}%WIT#g6~S&!o_rtg4RY!i%JIU7 zv9bs*U-r_MU4F&o!fYrl1EnsV@xm9r5WjxzbDzV(@sQwFzWBv2zWVB`5Pd3<7bqoc zHrV3W064kfD9S4ldmKBajMEOYBNi4Z2MoVxA5Nr*KOo(X$Z+eP zg=Z2~8|`!9EOdBD2EOeZkA?hjrEogP!56>qh0lKObNCfX=ULBs7PR}y^2(F1d$K}R zMFkt{8)wg*h31B=TzBntd6~W!+33P+O#Q>q6x1UgvxAG;j{DyiqeGA)xyrtTIV)6z({<|Rm5Y@$_^h?&YNBKjKU1Y6!!H)i|GILL@JU)aU$?6@9 zBW#M)kAVaWgUrdBbXbK-l3FjQRkf%QcqFBZdyA_b+8y@vFh;}C{+tMwO+^!#LELln z63EkS*n(srEp88s`4oAj?mJfymM_}F3^Q(Pm05zegJ9v95ES@+Do-9deAq1hcpD~U zcXtYC9FZ$-1kyueJKxy2xW2JI-WeN;fn^;zV7Q&NwF^*+PkriB3|iP)9&kvg zoM5yA+#u66Ya1Il`{u=qY`m-sRn5v$#t?f9{;Kk95`av3m83Dd)Y+`vj%^MfOnFKC zimyYsCE4!6b=h!aC9574E4~GZ_kIIKn^`tUxX!5c3Y>?nZb}w^rK3Sua#1NO#AjpC zf$Xw5Ni3iUl`bVT>t;$mu$@nU6LWt}IHa;DBG^f7!rMsg#YU$STq=1Ng*p{_lxS18 zka<>3JsnTw;@gLbw%eWVTD8I&8Cp3EQPgk<5x2E#7j_u2yR?|>PWIhY7Kk0q@e`FO$}a{=91*KT2@Z>Yx=eR^{i-s{x0{m?@X3G;a5$dRK*j>tWOg2xxF zf|wPvx`o=d#8KTGI(RUksWTJkb<^w2Lo6>X;p`D}L+o%L5Via7f8eUCu2P$jy8Gnu zXO>USC(~Ui^@5IgKW%t?03XB8)<3nmdEvr^>#n=blPcV=7JxFF*;=#M(80h>bLq)b zP{5Fl(O|H%Gg&*owsCR8+8|Y2BYp!{#iqSxG9GVSytunNId$o&fo*}7?FWU5eRM0Hqu}@I-q4|Q~u5>nsSZkak5Fz&OT!h zVwi>fIT5zPY_uM}U&UP0C@P`vezY-aI6*ss=;LbV+h>DR6t>(yXnopFe-$>Z`B0?9^p~ zsrgeR1V3Y7oo5cgc;LYYaW9Gwt98r!VZ&G0UOK&bOOwgm`^row&5{tC6Hft8Z68F+ zn*^9_>zWkpF+EhM)FQ>uB~P6YO}i9acNE4`6qk|6p>O&$^{|-l#GI~~a$*>pB&2e1 zqyC}|nMywen|8~DX(=PD+=mlMDd=aJwc4QYxym|%DyX7q&s2fCxrG%jE9!dE8m;e; zp6c6;xz`u&zWZ(%dSN#X9y&x(D8y!wQ`ad_w)7nJ)cVE-9@EZn2p4EP-pRe`-g_N( z4S`oQW~Tb9ecFiQcMa(b{U{MKd#GzgrM8HsZ_H#IJa|yX z0-scYFxs~kOD)kcpqkliIumHt?sl@P9y!TDR%Qa~;P41rYT6cqL}%V&Qk7o5oh!a1 zf=XqejMtWV|9Hcqy1B@z`%HJIUFHaN$)#86_vJ(hHD&lPDG{}Rm~m6#M`=ssANIt|^7u$G3|0?6(T5$Y01IR)x4-knZiUe56aLxnZm z#Q_N@XMaVvW1yfd?kjKjQow1!6(c?krN8~{Z-?Q0)0^HD zdMoGlhpK+ZJKlkP^VYY%Rjz+Y@4T_jtDY${YWS*W@CJ4Fz2lGm$iP3HT?m(qVS6jo ze<|xL!)K5+%ZRrEibPkq$K%9t>`r$|)h3zl2p8N-8~k+zyL?|xgjMbJmvhp4=upw7 z1iDWl+p6Dq*6B15E;}CdwBpS%l9RXGz}@^lO}VM1BXmI~*_=M3gEt`#hv#8&+28%NSY83Gs3|v3uCoIN!-jFFk(Z1pAIB zLc`(v@R0DssZ*!KQ{~`3c2YVdI`J2%Tm?%6&r+KuvkLB9SboPI)1e$Nr>Q#Sba&S( zaP!?FL9R=t2&4c!TSw`H9H=p8u~H+a1ZUiz6WPwFr^H<~>WGU1dqEV6!rXb%`ZUL_ z(WImf_h4BHY?E*=_uhBk0}niazg}|5CD7=XU3S@_gNIfRtX_G=lMs55?IvH_usBZ+ zt2vE^Ftxn60_!$ph!qAE(WcW~;c~^#A(;>+QEd}&wa=eFANMX&E$#Egw5f1Gc*F=2 za3eSZT(9U5l?!E+wM0;(-s(9MnhwiJmls6_a|N4Pb`r-#NTA)w%!-FJN?hR@*h)fd zQYUeg?6TX@N1 zM~^nlOj`w>jaZ6$B{w)YY_aO5-u{ybXlPNAYL+Bg8njeM5vOQuiTLBzUC^~p?%gZYk_a|3bzyty`)Ff_AVHSMu!l9gD$EpQ_?K8Y~MY$EHjP(7dd%xCZw=nq^m6#q>(-E{NKH>yJ3V5`0su;_QS|vYMMG5K?4;#*pu!M;_z@E5O91*ScdRTu%1uDTFJ9cy#{svbh zXJp@4^m%rfFQImWHpY=~ZL_m8e)!>s@4WL)M4WQ8U@gVn(mj^G#(c}wRULm$j2N79 zY~$6{RXJK=-yE}vox|GGefQm~E5wFZ{Rp;nX1EWFS=(qT<;x3*Rng1fi{at)wzsy- z?a?h2rq>P55zSiKG!@mnP-2%}dQwM`ae^2?#MQHRf`k zyk|0=Jm)#j$qhz!S|AyvtD#Qb^{#iRZC)>^{||ofgZS&~e(vX#LJ3ASU6Lac)nJzT z1{MeujL^#)c>(stCi9wW=sCrjR$|=Ty6^t`zWTMVt*x)&8RJQ-w26@E2&~i2L`S}`wFSQgF0_JU z#Rd>K;#+o9RXBX;uqp1g6MJLFl-ii=VldJ7+;b1U%evJl*l8+$VB_M(7Pk#TWOgh# zFalRTBiaXlf*{^@+iiHJxE_+!t} z9Bj64ed}9y-E}vfiwent0^kFq(aDE{v6{_bNR``GiJ|9sQA)C5X; zklV5sjC`bODlMlwuPxn8K#L%|jg?VYAy&9X)45^LZ71GJ9dylbFcd8D2|SVEFXRwP zJL2gMdW%eBPT|WR=sNYSrImF@QGyY;WXO}a?JL>JJ}`zk;Rd(yY9L}hYsRr#eWu0 zn>sJ1B(A{5fG8h5a>SbP&5D_Qn#?9R{`bE3z3+VIJ4ysS``ORF_L^&8!-=13m3wVj zP>6bYRP1N4Qj(cRMGZ9zSORY4_JZ( z_Nrl=Dt5a(3p_rNOr-U_;h=J#<7l4=Za?o0Aqn^-f{GO72fJ zShR`F7~*Eundu0HbW$p+(LAvya+Ao6Q_?gY6(m+xTe@m_#4=WQ{ zWONzBH@M}NTjV!mS)iL)Ngd+X)dMT)gp|(%gBf^%XrEIe0Mezp#1%ZBSx6@* z2Y>3Z#$lI5zg!UKuYBbz_!;&Q_k(+}ROZPOC6PmN+28SwcgT+?I<)8y`tmdi!L8VY zFSBDkEQM3*DA56PB_d09a9Izpr8{TdIiDM@Vb&zhw_u(BQJ<(u1~gVuuC`pnMT+2F zWq^WcN|?=OtE+{ARHza>?7Qz;zvGTOvBD5Es5I}qK71Hz{?uic9b{<<627sqbN<|U zWm@xuv&|BdhZRBl{ZovW@VuZYaln8Q=z8$@5L`hipE!QpyN#G#RTr`uYF1#>gO6iE zm#d2OxPv_78PB-k`s)!u!;g=l23?dSnetDB_vV^gj)?W$mE~plC)ml~`R;dNYM{9n z4~}nLe)(lL-uR4X+;}54yaIsCK%grT064LI-9%i>)a0}($Fnq5K^TonDOEu_m62@7 ziWaa{^&A~Ndi28DnjVI8P0i+tQ?U?O8vF}AglH8?Vrw$_(wDxZhP|6_zBw}Y$B&;7 z4hKiWR{rQmKJwEqe(}Kr2jD;8Q1{(`{~h1^-v9Bdzp5NU?)*fB%KI%%XO^P-BGHj3 z7^lAUkVvd}^4BZ~@PJ<}txEwc!GG+4b8+o!C299192+6#IL?CPSremRD9R6rK_Po_QZaA#|>D za59}N6^^S>URK~fHsf>;vc`lDpF4LR@#Vk#%fI|jzG7>>?scz&PO|#5ayutaDgb)< z%U}M!_r326U;N@1*s>ijETsV4D!B*ee{dHnaqDv?9J$pJ+($Z%!pYQCFz5p7)o({N- z>qTNMC7N>lo=sOwNobxZA&NB1piBO@K!@1L*pqq$LRGeai z!Q0;Uw%>fqZ>kSYmNua^TM{XFncVX3aCv$$K}D??i4PG+l47=&nU$5A!GF&PXl#!v zVt^%ru6w}?o{x9_<3IjGeE?TnaRowEtgm{4PE*{mccl`bB(SER``qUqdgviMRBSu= zrnpt?8TnLf@ti8SR{x7L!6xvu$}oc0DzP}U2ji80920)&BE@)Onm6{-UZ2RS#3=Lx zo=AxoVfunHGH^s@Kxljg8*Y>95|lDnc^JL#e)qeOb;KL+TduzPDy$^58x-fE!-tJs zHSc(?f@F$N_oDv>`7Nqi@kV6E{uR?r1F&;NdrZQk*yNC1jk>B;sG! z*49*buh=yx{BjhlCA(089eLS38N#%kXn56gUM4O8NooLr7EhGZdwF6{#8#4_&~Msc zSaFq3t>K*&C`G-Q;9pG9L(vk$Q|*j*AP~3Tb{ljy;?b+GzWSPLu2rTPLU~|yb&0Jc zyQGUTyzWJNIVli9L4uU+0T!45M39I5qx#*KzhWd-2v#*!&eUYvq~O&{sZ^l|Np-4eb2b@$E+VF#duwkcwrEX16A;SiV%!xMrr}R^x|N}1sbIuB~cDJry;*7#UrUTTAa+d$?dpVHye+mi!UPXiok#6;NMvQc zXg^L=vOgoQb2Z4S{wU=)ptmgqpSt41?6TP~ zGq-;G)_;8e`;8vrSAON$&wjSRY9fu(QdkEjcVo%6OsgawKD@QLX%k=$9aJFuJHPWg zc{7saU(zI+&V{tgXRARVWWVLRk$wRD-g> z$SEIB(Nx|NYf=?0>P4vcd{k+*JzoGb_%R7 zy8$%Lt|K!7#geHZ#Xvn~xY=ycaEtp;nm(Zc(Jrk#^o0u-_UA>!14MC;#ai-@sR1``Xt+re!~W46kQA<0Bva=reA-QA!#P8$N)= z|JcVq_RGKg%h?z}prEL0rwx(P5^=6Z zln7rRB=WvdHCQVHq_e8kIC-t=GGP*9-qL-?Pt*!9ts?HrTp1%%Ho=B)Tce| zX}5g+>$pdRsuwpmA^lffbrn9NNr{Tq4j(zp*1k-RgwPE!4Dc`C{qDIt)|Qw2=tn>L zg)e+T!Qzz00k5Y%Q(qFg!1qI{_mf1-BT*|g+jQkM6T%lF=QAC?GO{HafU>XWXz$_l6l z4j3lv+G~#;J0=%aebyr1vLv+lu;^l`?Z)|SoG)bNcDw6fDhaP+o>tN^x1G6+foY0UOE$;nwaAR(~QRFkYl23i= zQ@{3W|0h277k}{=JL55KA2)K_ZMSQ)ZEbC9mV~b1k%u1<|EcQeST}=sY?7?B;;2Z` zx2tg@f;K(;It^WrhFDHsYE9}v%;Reo|8H;ZH&dE@%-+43~ zvDPs^bN0-)zWJ@Me(kH!c{swUQ>U)I<{J1O);`82cbM{RzO>WK>7PzF((FhXjT!kr zQYcmlvMSA5r@oVGuDMzyaMwNg$+-Vlz3Nr}_>cdHUtj&|SC11yyBYg3ul^aSk-SNp&J@qd5LbDkqk4&^qq&bEi)Tv1eFMi9c~cfIRf@G7x&;iA+e zNW$yex8C}VZ+rtGgtFmE9d^W8{=zT(!u#LEn1yoLg19RD_ zQ^$^3DrWV-s%8_Yo)0$z!gTKZxvkAD4sM>y{x%}=Rfzk3u|jHdC5y) zOrTbz72A>yClUoL+{7WG*Im1Ye{p#?qND+gt8|qCH+$pBqyYnE_lZ@g!Cyum{o1ImCFkP0G0OhFWKFasMrW z|D>nI-Q}~^_=6e%8k<5qAe&z+ewd1cj55xB0(l()v9zSpy`}|PQJLow?oAxuV(ci> zY;j48cY9Ea%eTg_hYlYO+?dm4CKag>SL&R?!#aHU2qJW-3{5Ve(5vy^$2&Ldz*1&l zx@&Fb@b3}okP>GO!?LlyQDLDSuAkbgqNj!&G6c0Iu3BA_vS}s#0h!L}bXWCZD0?xP z2rt#KNZ}+lZRbQTbagDnOTSP$DN9;Gd>)ayv4Xz@lvSZ+u^TYDs5O>REw>B}GmQ-s zJ2SP2#|bQ>?#GEJ8BxoWJ5eweG;+C(4Fe~hIdk`2cRl#fL-Lpp95?_e*EA)_x2V?D zX}Zad1bBoSo15@7@ZD|FyePPo^_LJ!0SDbpE02`@b!}p~lFgAigYXgpmrI~k=Yo;( z8B(+lG7HWcE56tT{*}z9(sHCG342p3Tq_qm>NYXuDp2o%qj~e2-@M7>rtD;Jl1b8< z)WI0pyeJJtzli6NiPp0!0TJ_ft*)*phi3X>)-Cl$TfH8lRii`|W=7pTWqPTPU20e~ zdO-vy#V}7ofTv^KPffQo-O=QD%>tmgF^Xj6gTx-%Hlkhj5skvEY9XWpiiKe^YJiYn z_1F|A-8@~O*bT^pPA&XUn>b;VG8ehXKAgze*QhDum zTKv*erw}s2U&lL8NS7Qx4(%=ib)miQzU%G_YZtb+wgQW$bi(35^hF^EkHz0n^X9_G z;)?+Xdd$@J?;DLBZFs>GDw>y2A3hp7;kV@UYtMK^FEzFUm#WT|CQUBZiV z8l_o8B^yJy9iN+UN+La08<&j{SYC!TgyvFF%z9OGR?eXOAAI0JL{5l-Vnn65_kAp5 za=*OyF%`OkEIa05#0R8o(g+8iHo16&poI2|&vKcU7>Ko)z*!tio~5UnccOuv**s= zd*8jc+;YpKk30fLKgbUDhPW?`UVq#m_Wz$l)_>T?76-aV8GmtT)c4PZf7~$m#eEW$ z%2>uda7WDc(0ZrLubz!V2gI=m>~4&bYd=!a8PWrYtEV^UtPRTjwvF z|Jv8ThREsrJ2@hEzSwv8pS&U%UtF4KN6+%?amy6bEFODrZP%qdXi}n!CM<6LagrK* z5~0}e^Xb#4_vb{5f)Wf{!qurc4Vva)8e@HgFX(mSeP(uC$K2W8e&B%zzIVqR*6F;l zG2^HVB^kb7=`Kp`V}6Y$%LVlun?#elf6$!w#|Uv8a51m7c*gJFGmpC-?`~aezCr@H=&0#S>L#6tl&$JQ;HbQ>2j$8MN=)Qi?J?xQmKK9Pz z*Pt;8gB!2KoAJbU>ZmK66*|>Bona>nYoLVS;|#P?`|;gKmM==1eqCQ%+n*D~JK|#s zvO#fmEOTh6T6p4xMNs#&Vd4|_D*Tz8c}Y*DH{OoP-jO_r59C^e3(=-M8MCCjL^PsL zD#flKFHamS0ie*67Lh?h^Kl^G^wy3rFIh5AN`4RXwftXF_H^Q zQbSw<|;1wOvcm@i1mNcl~=0JOEz?m$u!$Yv(s3^rn^PPFM`kPzaHl+ zS>?;(rFL-`n6gHxZ0zorH*GSSSC}4Id_8Zu=}cSh2$dMI=}yT3J(mN@SiK?to1axVAOVIssmI{agZ@DMP+quY z^rnJEMuHdR2ct%;R?VU2|o%Yy?Fn zII#T^pd-K7v*ixb>}1b27$;_mLn-CbMU-MzR& zi(A{@5pFuY;yzRn?LpWD+q5#j`D$P$sAkL2**dtb{8R*T{qR!s_AIY}%wz(4i_Difw` zy0)hV5!uy4h@Ph-I$iGip4m$XugAeb{wU^@eds2bt%O26BBj?BoXTUnq?V4pmLn{(RKMi>1Yqj{M16&jUi@X>IQWOZju9 z0%*o0@5z=eaqfz)lNnO_4AhGV3LeJ8chYaZxx(T;)bD%SNcWwn;!rpikT zmnyRXWbAaifKQ7^vkZ(fmNm=lBfSh3lV(9|DD~wZP7Iu4Y340z@Ff(BaI>Ka;9R3K z;%hq1e?rf6ckFnw69MyY(~tFNwhTA}#h>YU+eitAo8833Gpi3BU}ceW*?#!jxhVur zh0(GIRt*M;YW$NxwQ&>NR&r4=Oo#}u_}eI2%(hUkx>xkBPC}*TexGnte{P^4k{w8U zQf)uZMGY6_#SDtESub1b>Kg3M2MNIXGFESFJPqNr=G0j9pKRA##FQu(@Voq;FPcc8 z8*_8i-ZYfwxYng>E9!9o(%WR98gGgqc%V#$sqZ3ID8ByJYxIO1-oY!N`=!nN~Dz}3Zk%ccbC z1HW3god{9k`KkLEOS(4=B>my)DlRsSmzpfcj(!1^3CUqc=8@I9Kx*Lho*IY7JJ~)K ztdz!|NtOPsUdyZGW-ktWTe&YRDG?j~l-xmfl+MSz>RLMGor zXO`)*z=Bw=^w+66cU(i9xR^Inc$1;Fsbv0zk~=<|5wv_4ndY!0lDRUJUSJYW*)Wr> zjMY2cl6qa|Ldv*m!;v$u@=K%1JnFwmZrkNZqHNjRws5>lfBHCmF${YSnvuw1rLyy1 zv=sG?E3UK8gJfkW_FwLBng+@i_P|bIhtb3BCJwdsUoPErBgTy(&CoNg`o1X*$PT>I zP1z5r_oz@TL;;hm>U3Rgj|L=%25i+`z-LSLIGEtawh)4*5i|+5_vvd)qL}1aU-N!c=b)SVSFZTLXh!`GlAv=`_ z439y_PME2k0+hL*%&ndv0EWuzps+6>mrSPPTHE`KRLV2k@la+AReWNuG(E)m`y*pP z@f3%NupZ_2450bMziFdgl{gv@diox9tgI+lI=V)aIaJu&K%P#8wAICo;dcB-{oIgv zP_U<4tM70j571qw3<*?z7+aR@>i<$5I3K{T<~)=s`eK~KB8rVNO^F6h5jG>_m(CkL z;x2~OiV?X0eWFkAHkE{CFc{dS-tt!(-h5x=fHi(ruU#~w=tg!cJ=_mzL2Ie-k&1pC?*hMR=CeTCwSDpC0*cWJZaxWmv%eni zx(w{F{93z7U~apUn%6hX2*gWmA%!>y%-OVGBUqBR-MiqN&VB2+Sz07XjX49(M==+H zPFi$FHzVepPnm93UD7Le9V$|y3%ea~$SW0>q0*@L1hKH{W(Pg$oweKH?s84fQbJU6 zxLEKiWiPOI%PQApHVdM*o!Zol+d4)+KcL3AeL%lU2y^4-=?HDU!?^f4xz%tL&U|V| ze5gX3#;~Fy)nkto0B<;IUky_0z!%*LZv5w8^wfd;mmn3&931cM;IYfX{Q!Y}VJJG? zkQB`24r^2l{UzL;o^o>hDoi0Dpzl_Z+m_t-7ryvv(LfhM)>(_}-78)G0ANBjO{hP8@A9Wf2Tw8)n%Ahu@URPtm zJL;|d2B#3uW(;25%qshS#fs5g8EyUu+sxn@r>=0$s~=y|+?!rciXTO9mG{%sVVsU6 z366p~N&z4DT)!%!ExtrH@n$aCHYOY~gX?}?AWvaVMtHe4c3Qec5uiP)b#!n?YJXdy zA-T8|fsSGo^Rz*Z;>4pN^(QcgK~}hr&qTg-`Dns{b) z#~uYry%{HFYZ=z7d-+tj+2LhsI%^up1lV4C+)ito>4nnl0kfUf^dV-TFC1ss!sR&| zBYVk9Q6KK)go$(9gZkb5aESb%C`&ef6t||j@y6*d*`xr3sU7=vV<99 ze$^7k%so+Et#8M&Q}v>T`*(za=`GM5C95qxy^NX*%}?R6rhTMJE}h5G_23=}VR7D{ zqWh8h1SvAIFlJpXsz`_VO`a`_wleUhe$!b$5G-$Lt#dp>G@<+Opm3tRLWd)cI~C!* zdXlo=!&{=Ji8yg$_?M+mYZ<1pK6SWguE({>M(L*v9{Whjg46Ci+Q5G_$Tp?;C z)zSUFPIlph>`}Ci=&*G0aOR*#_s!!1CnldHL3&r4$}rd0+OrI_Ry0KIlbaYEl$Ls& ziQL8LqiUWi4+UP^QF46^D`(%>z`YZKYph=LD)aafoc)kfuH}=OdNgwAFfFV+huF7N zww2t13LAggK=Q<~vR>A5jSjRl#)!1hmDNkmf}1|f1%Q@jN;i;Lig_H=kb=Y-q1221xMax%=*TazUdiJG%gk_g%Ja(#77FZjZrM}14XU>#5T z%s7t%zQ)oOkd2CSc(nS8_OZQtHgU+xEu~fTR{Qa6UxzJgpgb`HTzt2%F>_sG+f`cs zTZWO^jBCF8Th8kSNQ5TvTR_rJRE9Y$B`i4N>o|k&mzhBMGrXT2S8aykUYqyrc~P^u zPI)LzG6RB}dqJymobXZoA+v_ePl6G&1GKej7;8J(0=a7~*JRc+x+_8!p|D+6C8!pRkI>#rm3Tn$R8By*RtG{vb)e(Bo$cCY8`Gi849(+SV%KjQ zr32hsTe=AbXKp(YNBdJ2LiIgzJl980Id{`~SMKvSnA~nP+tGH@bhJ`Rjs6A7O^KI{ z5CJcPb?%ZbV3mXwv4Z~koeKk%bKLdEe-;MBQCn8^GQX^%Sybd)oKT4#^tw4!yLEOdTD~`su=H8p3{bZsh# zCZ66M+;Ayf7pa+BFdeHt9?SR}TsMB|sFQhJ6FHN`UU7vB5f#e(N%yoAgOK@gJRm;n zbwg!`zeTP#Yy2^x7|c9B8O?J-H_NslO1vUE)1ujHCs{bId1kM%Y`Y#&*EzT%ms%cR z5#1~0RDGCi#`VlBL7h*~1L}1TmgW9C$)A>yS)-9@Se@{>Q=cCw>M}t$mPjf?7xmW<|2+x)YCK*q32^I4J#Ll-Ess!Sv^E|_*@&IY7tO+w~U{)(1G_1uAY1J*Dn z{%=d>t7OO%!K&s)65^P%&1(prYi#x+uD+6n$g+u#sWJx@;jgRl!gR&34op&O3#(<4 zh8X8V1aOoq8#O9tQd7-NB$uVX?rdTHMg9?6b2GI>1Z!72^Ce;y1fjNeX3zySjg{Su zo7nd+h(|?kjtPi&eJPq(d8~u(W@M+_Tf9E;fiM1}N3e&Q58x5mCB(f4pU07!ERMzz zkGKX%c+p-eeq(5NnLCIr*T7;X(YvmMe9?{L$u!0D%gYHRdHY*tkK zK~87GMjek~QmCWOUieEnYb>k=q%RaJ8Us2Oe$!OZs#X|MEEeTaK-g4O6OSr1tq?}~ zCdoEMw;cxZ%GdlF^0ieNnXQU3KmnmpU!Vses#p;2uKTy6g_2nRfudEa3>;>+^S5G) zo+7MNYuV|nM;xE%JSa;1TV{HXDoZPOeLa_6(1I-_<5_=F3pp-{S?E(GepKj0r+TXN z$BUvYCf8ZhJU#iX8bK>p9~&+`wa4B`#>oAv9~X@1x51H06~FLcL@AENJW2Mj_LSBm z>E_?ADK_dSZ53T3VRS}A0UV>v<<%LPnJ#zfXm--J0ZFt1Jiw)>(yOW!D^Ux1b}MP6 zlDR$H1O_uZ>0<;GdvGz+oxbY=OD?lL_v5I#jbnGq1@uAePv~2lX1s>ZM7J-)9G`cN zaMzTTSw@ZqxO*9MDMbN1Or9W4a2I(DEMU}bXXpQ~?7|*h;4k-isA#@{k5utsii5Tc zPsN(@!FJ9@U$+7P?|VN8e8?Ip;>kC}&?;&Xn)#@Sw4$Y$DxI@usB~bBHO~7Z=k=Pt zki0W8@AKAaxV0{2*$#5yhbUr!MC_}_W;tTJdZH+2w4L`>oI~w^Q3~5xGrbarr!r$( zm@Jeg`;i<6T{e-tY}KjDjns(asyAGspj&C-#u5K% zQxNmiyCH8u?cf?9W|+GA2~C$CCK_Yl-~pL#Ge!!e!DX;V*b_AA0zH%U7`&X+eM;#e zb?zptkPqEW-2r<9PNiEf`%fL`p!G={)=r$fJ5x6>2qFO#>Ys**$ncb@mle`9kEX!^ zo;T+f)I+M~bNdeDf5+UVfQCs>Dcba*ecnvY9NmzA*8S^?vKdQPH75FId{iF1EU8%F zqRbghi&aa(Q~Wi8quV_rGkjI1FjVc;pTSpuzb9Es{>zEQ)jt%@CYRf(k&>d50iDQl zRUA<22pchiZ59oZe*<47KBuDvptiei4j8vYQq>HH9{c=lSFElydmc5Ox0)owb7!NwqsW&ln3#-chJ00t{ zoIWBngrWwQZee-gcyt__$T4{bnW#lZcb&*Zp8uaUceB091;(Nd$!Qi?2_Yfn^alYS zFV(upTNCdm+h#pBz<-pd;>!X^SY(1O2U0LXW@3Hw$?Dh1fm*zMO4Gv<7UsbTAgdZ< zs>TNU%tq6aeK4&PWJUV>{2vy@Jlqxy(Z;kIWQZBqO*u>>qr(h=s?G6A>8As}?s&;s z3)Mkdw18{}GkhjzI%6zF*7)ge;oYjo;bO&C(}|Z+&U&S!UnbGhMXYw!;!SWE?;;b~ zFpGl*$;N6YO|kUlxBjfIxj~xHw87$9`GcGDa!`EY@3P<&xYdd6UsKVz0iIO>6MEU_ zElmPbNWO?|&C5tuyL^8qBk#vYT^F~w8#_w4CuAEFx?oxcvr$mh(useb{}wgOicdU3 z@#5)*F4(P+3Hp26p!`#u%l;9U?w~q>p;|B~Ik90stri-?HAtw2lv|rcGhWcb8&0{| z3D_Basf;2(A+j#*b%30{MZj~4>Q}VZPqu0f^08pmD!6qbn2==LpC5~3JC?znh)`%e zI{z^!!_2pqh+mFZ(yG4ZI)s18H~@HR`+`G&+)O|tHoF2w_?E#ogI%-i2vpZzu3P1< z`dA#qb}0m(GN_xA7BIFnyT^oAk*b7`dpIeaT9d6A7mH;s-_r2Eah2t=KDCN&btZ}w z!|(C@T+i#-#FNWHOxNLuYrdIUNPGV``nZC{J2hAB&)?pRsPnCOIiJ66r9EKh?c9|kOA6qNs@R5> z_iCn{>n-)}6LomBa&&NR>D|>)x#lbt3LKY0%~yLj6o`CiN?yiyoVC-;oswJEGEo2Ny~rIJfc`RBJH^f4%K|BWX7R2&_b9}=ekn+98O95?p&Negtqai zGb&A4VJ4byJ(js@`$L&*L%@?Fo4o-mUoo>8xbj>eV_1!Nxj^g}TS9Ao17F@ggE-1# zx7fL;SN>zEHYuKG9x18j@zLYuQg!=oa@L5WxL`8Wlo*Xkxu(YT$wx+>`y2k^>Y~3y z7BZvhK5HriFSZHyoeaFMfv&G+$uL8fmGT%fsZEkPGD<1Pa6VO`4zXKM9U^74OzNd} zHNtq;jxw!d8fiU9-VVRfqkxm-B2g$Tr?gSWGb5tHt_Ew?b~RF?lP7;gW81R#!$*SN zqH2V*KT*w|eS?r$=3GRuaJggO0T{<_F1&B#$@H}Xk`-sgkvNsqURARa?nj}L#=sW= z9nq)UUnX9JceheGIOZ?S*`f9eckWf9=BJWJ3K3PW@F{4lG}tTy-U=|Bw=TD2V7kC> zDf$4Ih@&nq&Vq7IGLWXG0W-41l2G77?P3~kuPaEfl{@=)e-%cP=OijM5%7&p!z_*5 zGdr)5@xghY+4r}B4oV#?yEGYM@hdKzN9tyO_i}0vxObJ-I%ZX3V*7jdD$cJ9;BGJl7_rBpbh;XZaqO%wrxZLF)c*IamFc0qv;E6JrF_3@Z zHN^I!4JRCgyj23P6q_u~(FJ{3iI=c3`~cjx=m~H(uPp`1sPz~vgSTN=$OZ@qiLpPq~MT2Ns%p9q>DJ++R1MBjHmSB;i33-Mhg|C40PjV z3Uf65;DIzdui3Bf@NLx_rt-f_iVa!IPQ(~*+WpJKjvgxT1}Yu#YUM5z)^eCB@eRe! zLy(*43S;b#((IVAWnYx-=a3J}lmogIu>n>og#!SXBI<3W5ruR(4f%mi6kT0qO+3=t zjK$sRyN5+@y8z&SgQ>XKMtJ`SgU_aMzW4Bt)jU`-`tQMr=X`9Ff|b>sJ*yeNy@z1F zfiq6NhM`ppmQ2P5U!xCBD-by8hEFRzff_um5o*$q~jLhnfA2eNy zNh*FmLLp}V0!vhhyk}|vkZv$Mqt0~1G2Xb+y!1=qBrTd`18}8gsR)}|A}XPxgD4w{ zh;hlg@2-Erumn788fk_tM%F&JzyZpgie~Jhi71YaxJT#7mxBG{JY{7QNO!;Ch_6hJ zX*6a+omW2FQouDNm=p1BC@xSlrYv0HJi|eGZ>J5DxLDZblNluy-1@rdYsQ2+$dZ!#A`K6i@P&{Xrf$C zP~Zg~h@5IrzN0?Idi%_|+|!kS#~3tECy5uB>zViG3G zT0yh*&UPOT7v%m+ITloGt6Voh(5==1tgCd&xBO}kRi!ns)7(I%7 zMl*Ek^x+#TP_iM2{~cx_42~BWs}3_MCDWpT)L`M3b=Tb+F8oSiNvB79wMv5$V0C6S zqKa2U1)Y{|(OVKuB7~#XR3S`r-ZbBOBgxEVAs-!*^xKJU5hZ@s=Wl@MW|mV;ZKdj! zLrRdoLIy8z?)UEp_)^qy`o6<`a{Y2E* z`-S1c#{e2tB5x@)_v~yu8Qkn|QZKKHYj=2bpvL-ivN$1vnVSSgyNB7RradU}eqogL z!Pl^a>I^03}r4EKotc$<7H-)PcoQnQ>bNfGc` z)-@m6xiiXwSXL=PT`ijKwVW7&+k|A~0*@VlqmQX5_riMq&rE+9@d)o+j8sTlxkL>N?ecAZ;j758(6W}*p^w}T zn@PqwGs1zyH>oYp0V5jpd8<&MIqN-+JydgA?uQdxcxUzKP* z^B(!ivU|6%&{oAI-AhnWdL6q|h!=_CZS^ zls4+kE-)kNX;6mW-6al00AG^-%ot0B=mN|e5nc)YH4U zQEiLJ^XOF(0({6oc zDkuECpu<#hn$Bc(YKF`x25+t?G<=8mSG->s>7fGS>|0vvNmZqa7~AtIr(_ty)Rm}< z9M3CFWa8CaG`F2xw2!H)Je^g#;#CP=kjTQwx(%4yR3FY?Dg?;>+idQ0-H7i;6MBOXhecEYr)3dvpvaQ!PCg63=@E zT2n1;ZEd1m{v3txOVM8ewE{sRT>Xq)cq17VScti;S94uqyWQev?nTFF>JBdK*tSSM z(a7vP4I6MddlZc(r)1?WsnMRy`IpT zxw7?ny}SrUMq~tAHX(vpTfEzPN{LVY2t(QXC=Id=t}q9gSf70)>DQ$P;X zS;YM+d(?~`QuYVf#Z>b!oz#8i_m^&MXeqsNoD!inde|^*)t%2&*SAW6&5o@eJG8#7 zspSUFKpNr73>g-qnw{uZ^ZUX##sj(qxC;QwgtY_Q-+ziUDz;0>68- znMnH;WvGy(al6nr+f}y$%iL<)4bSMEoTl^PHx^wy^KBY}dw#h)TUS+rW`c{G!+AF@ zz=sFd5a5GojZv=8#G)as<+AF{TQa96o@{?Bk@Duu1b0`3i+HVU=b?kf*p57eoTR0w zohr;!;4DUWY?N)Bo$!6j6w7dY(Iim$;^`N>h-Ne;U4$Rh)YQ=awT3Xgxvy{{*WY?Q z@{Q9>?ha_<(%Lfn__MQT)hA?+_8 z5Na%`Es36|*4Qy&CjwdV^;f$BoTI|CWL62KSASq0n1_kyaBO<4G$;r3_%&@=(4$U3 z3o5L%5!s!M1}0#yq~LO?k1}ifc{;qPj7I`2CF0;<<9Y7sGq5; zV{_TYM@QrP?3loidhu}1#ou{s<^RhIUH)CL$+wAsp$|+`U5JB`P(TGVDncc_*WHgZ z9r&FF+gqSc#~xYc)|?^U^%=M7w7M5>6y+6=fwGfqO{Dj@JmDYfq2&@4LvTNQSwlr+ z+N);O@yM=5DI8J%1aE-(jsF;zwJOzv)9XlXLJF+(uS0&f?(pU4usj3#6bHWzbWA_W z`)V!S>}M?F2&OF?&ua+^DofIp%B9k9 zJ3G5^e@aZf*Aq_UVEc91(A|q;qm8{RM%eVQJ%ea6`;?%Qp;zo2_yS7~#J(e6{pp_g ziO3TEKlg#&f|1sYG*hGLzj)Dr(PnlISM#E1S$0qfVMi{5PQ#y?_(zWgytXQzk%0-6 zasuS=V)kAc`c}lRTH0Ui7}J8I&4Q`_D-$7#TNxP)bIkk!v0(A}oYQ4kQQ*k-XjmSC zj_lemwZbx3#kmjn0i$<3oMXiHmaihPkn>46bjmnOwQ7S}IF`qQ^*u`J!CeXo2J9>& znc0N*M^-U)dMdK7E)f)-819!2*cftK$1eNMNSNe=m=Om;!1AFF^%uDr@i>D3RgguM zN1~JD692HhDyvw31#JzbW|JC?s7eXk z2>*AT|0=W{Xtg@OHdDFBGLp@~uqwi6;$#pT;z}_;m|rIL{a+aqJW(Z1Y`(X6*xR}i z>&buTyl7S4x-*A$bn!|-+O3i9rWpZ*T%Y_)dS6wjt&NX>3Z-a85smte zx0&ZjX+|42sVJF#rzp39p*?H^+haynRJer4C}|OjD+T8{n@O5PWII#+a~#G%QFXg- zJubUAyI}I*{o}R`oN|DRGd0s1umaKo7QcX4DNbhwU)@vX=NBAEboD%#fY7V(Iu8dF zjI}ZtR8{{QoK0SfzkH8b-pdr?%c!imSogl%2Me_9c<~6lO0poac@BPf@&&5 zUl6Ynl*0VjC#!TF@BJQQokc&YZrS25FnNCLnO4kr>lh9nSBR5%N}_vLhP& zLj1#|@MkfuImk%&!0L#{+_s|*=k$@B09l2N=o_7TNml&O;}_SX-;0Z`(^sPm+FBVk z3(kzKZ$VunMM|v#jm`G!53hwy9{4B~w%rkO zWQd}FPtTT(zx;{yFWZJskQXAlghlYAxsFiALn{bzhlvX*-dVs;4d}F~ANVyjDviMI zO0E1X%vY6vI#Q4hNTpvQtk#rK>pN;~vtIeJRgM)``FDwh5AUkFWz#Gx-9BFo@7-K^ z(jF|qVor)<_jhO#h4v2<%ej`(%allSGPshvic9wsdP?Sy2cz1r#W8v4hr*I2OVfq&+kn*-$X~LH=Dv z585eaijq`*PlV&&8LMyISCDCM!N+~qZ<(NCW%?rpUq??*Qq_=6S@i-KWh$I)Ei>`1-f?V`9oStr^cBTHsJs?Ov1+Qz_PnGHtlRR-~BB4?ZlKB>=IviW|CK$iOQ5-&? z+L>ry^zpNkCz^fB{U~ieo}@bUWWB~ymypU_TV_oFjH*l83Dc^?$>0Hqyz}!<$?*AM z(D`J@#;aE4iUCG7cA7A|_6Hu>YwrI&gcoB7Ek?7I#j*N~2ZA8aybh+?kvjMBo z7Wpl=-pt>_sDt6}aRY2gNy*Y;v)1|qOECG#C=x}_=JIbH{fTa&bmiw1*UC{xS8iV8 zyvtic>;`Aksg(aZ64hOeLGIV<;$z0 z-8`Yj3wSz|TKH#|Kw1^#*LqZaJafXuI)qOpxBw5vO|1|KVfs?eNuX{Vax5(#A-rhN z3@e_zr{u7#>LFx@V=CK)FX`-z@LLg!To{??#9p;0_WTAH;HgQAzxWWu)@E@E!shRWsgH{(w6B1E^mcli~dckz)1{fB;;m_EcAxVxGHCC_;gh( zxCIg1)&OfO4Z{JfDRB|^I6i^_>Yd=`d0gflCLqP)^EV zImt4X+5z;+2gMpMdO0s=(-(h){?Gk6-(MfV1;JhvZWh33I{=G{CWM+ zcP7M%#i+;ZE7z7oyo9z$aaGjfZt3l+xyTPOr3)*OmQ1zTqgVqN*2hn;3>sfD`vWFn zY|;G-?hce-9g)MS^{bz(gq2OOL_~|8B(N6 zG4f%mi%HJE7q(d1Dd>Jy$Vs~IBniB*X(6`2J=UCQOhDljxP*X{ANC4s$&OIZ`Hw0o z+Xs-q!{g*MtMaR>K-i&A3>hyvm@cC^I2NgLG3PgqbBGiwBXjeWri$)jU!4kDJ{=E7 zWn+UO>!F`oOdYt5Ja-GU7-=U#O-;v~YSz)IbQUtE5g`#~H$0;B+`);iUicBBjvrO& zZ3a$JH~pF@10MWxGfmVKE}Ynk7w>@PP`*814SF06qU9jeyxk?$$7XI1WCmT+mH=+M zSpnrC{^&Sm-!ICvMgl6KIFEMw!gmFhO++ItRn}j$w6yal6PtI-l7$4sr?8`B%E<-m zHKj6}qz=zK=g92Hjn%I|xM|2?Wj_MC@p;8y#T_2_JQ;AJCagJZyAg{nW}lSlPQHU_ zN9=t*#l7?jEyVd$C#Tayca9BS<#Xwd*2cez7a_pWvwMZ;jSnRh`t+v=J_Lbca@FwS zAEzSz=p#yR?l@2fn?*YGW`;Q6$EV&}hFBe$Si!+Z47u7Dm+*&=W>_^(h3JUm&jUz9B>1ktFuf zhKkj_aCn^(u{OZlOUZlHe0rb|E8N1tD~0nZT$-&CJ<2g( zx}wKmMEWWSjIOVUSKmhIdJ|-k?h7(efG5#R`6>$<{={kGV z{Ytngi)4-Sxog{3)Y~XnSjjcsQ`}1og+ChqaS>S^G1(}#E8byIDZ{A=J_c?dGVwDK zhX@0Zy2eQwJagWqf^o5#gz?QKTli|7km_b2>oV}G{K<`n0bX;f&jt5$s)V(dI!&@* z0Ue5uMCP7l0;y4pMJ3Ge1)*NbII}o2H_EcmidGo$F6C!Y$a*B`{(=m2wl}sYaC^q zM)~kp@=_28ELo=DrB_90o=&WJEbm!5 z8^THjS?Nvi2X}OHx2o>8NHwZdh66C~O(Zown0FuOdTKbHU4ezBFlZ&{Cnh?R>3WB8 z7I0&PNH%X)$c}(9lsuIlh(j|#=$Z|BtBH6j60Y_u0*7t(;p!;}e=rk1n#p})*(=2p z2<$t(>8Tk>(Nhg$<{@ew=Z~A@EQ)w+X)GyH%9X+=kPlA<_Kds2C(Yf7*$~W`hnv`=8yCk| zV~C2G39Nc6ztK$dwTZEd1y4qD9?x$LiL75N|G}qDp(LrRhCqqoHxSI!Ry9psEp{_j zOTaiWlawsiBzz5Ofs%e7ou4*m+w9Hzj=09-qn##%2S><`X$Ewu+kj(`P#ajx>IpYx zt>VDRHbqxs6a{AG%Puc6MK6t9zz*TH$%~CpTF2vKTiavX#e9+E%l*lS zQWoBy>;7Q4|Eo*V1Q3Z(jcaOqQL8ZzQfA%6qAM-2gI(NhKi~0{{;P^RKM`i_?EGZrxUs7!3|u^rD?fo@S!N=VMsV8T zXe(2A(==fNuCrM!DTxy&Lg=jXvKjqFTfjVH3NMwi-Ecfpp0J}E#~*%suH#+WIG=|9 z8{738v+>M)E~@DDu=KRF(%x!K@zn0C4qdvGTlrarrictVj?UwuDHfJXD@#TSIV&DEczN9x zbfo5yGU-XzXDvSvTQ^J-hy6St(Usi{k!Q6f#_wgJ#j0TJoxX}ew+HNxQwx8x$#9NP zXITr1`fOc0ujX-Hq#lWCK$aYe?}3E3x~c0}fFrD(@Xwm$Q@_4=I8q810{l&XBx=@o zjgcA)XJSz69Cmh)z{#}T4Hs@T8H1wXG;i6jg{1tn%2ZG(N>TFkPWzF#lA?PRPEyX;eT^2( zT#18dd=?B&-IKTjmeiUtcDXT&;$&BoViIt6Q7^Z$Q+?m%eAGO4Nl43O1_h$CHy`xS zrg3hC%L~h0Ai70i1Z=sSP~N#JJ_@{bUm(S?|7w9!XwOF6X78WWV}#Eb=?_83kyY3Y zv_wky0x=qwjyD@=)9WAW_N>b8mzoNvA>q~6c@Hom!vc^mSA5g7yh+N zHb)SOCY2-T{1UI#F)}3okApmnCP2vGdA2-`{a1jiX-JyGhVqdek+k6J5rCV@TMk3~ zwZb01b``<>Q@Ka{S&MgoFU05^PVBTZXfRg5a!Hekw=Kr`n+DOx>7XyPvQEZwdTc<; z8KQfES0tF!EkQc7L81_w4e#T}qC2?1IqM~ZH5!kK_Il!*lu zvq2?zpT$xOxLO!yzlW76vLfYW-#SZ7el8$vK?oSUYr8)%KyLPPS2nMdi7ZN_iWd{g zy$-iCE(+w~eqh-@)tQbdCUr|QFXJ2esDMqF3Ax?L1^mmHbmKl5!LbbRK|pXHQ_yi1jF?nf)-~FIR)^~@C|s4a@_7_ z5V~6Q2pGoJ@r1{BdHK}6&vIUoP`}XG+IFGf${PzU8oLu^^#1p~C0;70@{hJvH5Qa+ zXz|vxYc=dtaOImIjwXIo2I|%X1aCO|m8`t7lGrZz9L8^kuv6A@CL*NG#w54Q8vS)q z*BYqsX>ZKq*OMpmgGqwBcxIxqjAGK9G4CWZS?dfAJ%753kIg;!LbT2Z7*J+5&tC*# zoku`_w{3j}*5VG_TV1L3Yv%r`Iueo`ko~hl|K@y#puiHQ={uu_r;JT)6_z3Wdxn`o zEjygW>bLLs0otgsdrLs5d~r0rk?KK2qsNs(1m-C=(~Epcn&2!*TE;N(P)Qu^$0X|b zJVuRJR{fI}R7*a!G8OVWoK(#PNb|X=8&#$#H-;{3yDG5Z{+6FO4n4^9M-j3n<&AaT z_`rJmyXI)VlglrMPj=u=V=;Y*OoIYd2`%sM?rat_<0nZSWfXTmY$+&uVlw`01wds~ zS-D6hpRJ53c3hL}BD4k-(NB3Io;3$!S^?tO`oWZ$2J-GEby!d#vJ7BnjwZ>LO4Lrk zzRwIV^MzU(b#5*sw*Nl;lq+*GAEI8)PSnh1s(H6MIjwH&As| zYJp=?s#`zyv@1uMjAH+TBGBAU@%7JwfZF~h>OTKQq$=vqHYZS3u9_}U+M_f#{l(b4HodO6aYAh9 zv*q!AGcW%K*(~bVv~5F5po`=GY?^+?=b|3Jz0_I|3d%fQAz8rQ4xw?*4AzKOG`m8@ zqARIgZNU7Qb;d2-w%arS8Fx~XVr(xg6h&|wTWV-Jvapr{RgF(HWm) z=I^x5Vwl5f-@n%MNJJ#<&dxaGGw5jwR0$BA6@%YGeQwD;hoAC<%ZVD|GM=R~W6nUo z%1!;>cWWuzGIvi;tw1YF7d3W;K%{!gI{NKU4Q=4DWnKE1X_~JM-IG#i+1l@>ya)Z$ zBQAxhDOSw84%jwQg96tw^n(mNG5QCCq5^nr_cTEDK4tQ;VhHVYt5w)atO zi_paru*}E&_CJ|yUA~tCy2=4Qan@4GN=kJ$QuQ`cad4QTj_!!ZO^{kG5;v z)E|)ui2p#KhX4CH9{i90efYxd|Bqj>c2%PJh&#fCDDI{oAE`dVOq@m?v*Z7bueFxi z<>PGn-y7Sj|38aK;Ky|S?~FbMO)mcb>p*s5K|A8)kN9uOPKx=D`TwR^roPINIr<3B zVnCJ0^Z%riqEV+g{om_mjQINhxsjl8wXv}He^2WyM5T4K|G#|GANg`Wz5@TV=wsH8 zRCAg%AYwkLK`5Lwxija*qaSwdQheYrZxP>l2$)&Yta!y_+VU@`qG_V1&{cUE$qiXK zSsWiLlEcy`QT9}dv44s_!t!4ub&^m>cT}m_cNY;$Tu9ss0*+rJ4tPanswZLhm@2Zc`u#B!U-_u6AC2@q%aE$Pa$Ddr?O!+xV<<_AbUrjR71zQ#ntA|0bT;r4pf2Wvq9ORXNU%qxe!8XS(b^(GRF zrRdrBwgtObBFzTjT2#uOhTrvThH+xI zw2Ot>I-MpACKB61TMC!}Y?cr5{@tp;S8ql~A*%1#JwD5H)j20n>(+b3F56}ewNw0N zOZhz$B$km66mTLjrZkR%_}cQT?f2QFv_E6$mwI`HVnYN|Q4SuS5gPb;Ac1~UC;F!Z zW-UIapS<&q)wdjDs1o?*>}+hBsq|kdzm(C#ynQVhY?UUnQaqp^)sJbMKt$DWYKK7l zWk-BJB$aL|9~CATQIm*jl`w&|-;l2oqDkE50&XfSnh z?65toXRMxzA*M|wEl^1UppAv^1%{PQldbTXIr2@Lq$(;9ALmGrIDYR_U7QwJvDCVw z#MEKPLC{Ro2>m3b_TO;fT9dwiarZZVaS`56BY#&@7C2$VcmINKxx^RdDa|=(Fa5*v zIq|6me?repHwiEjqV_IDE;vQLBbp$imy0ff4m%TL@EOEv-I#5U|02DnYw8PJV6mC9 z6zg_(H!sQ%POgnoAzO5f8e9K__xWX=$B3_6`lwm6;;Hs4P7GXvkhv^2Q?fGGnS5O* zJjgIjCqR63u*kRr&l}t+Qaw|2&wNi~Qb05=k$`=IH|nXBa>z@LWOMbQFo8si;b|`po?zATo!9k% znuG?hyu-hVSzuwAcn6@MQm@S!2swf!OLACp24>Ddw&15jp^nr(Ev2;#TPn*BYuh;l zbD+Q8ujY`5A?7J|KEw*SC>E&-gP zePjP{cW}{08AmJ2%d+3e4RCVTsb8U4pqv3+WAs!J>^ENF3bb+z=OY-D&$wpa~~R!&{Bn7g=K-=t@p z%G>Z2y1w1B|H2*wanb>puS3u4w;C}?6pV=nPP6fM#(Lxn$#JnTBw7nrZhycVTE0!ybs-ZHxfp`2@Bsvw{v|16Dj!_6fMYlGu+oog;A? zMZ2D$4i__ccmIhKwTsSbJ$m_6ks$ehv8@i9)pVArETQ2$um)IYtid0+2Fl(#?8dcyvz0G8!u$QU6I?fuAHYV|lBV@`&6whQ8W5^)e_6 z19g4R;07?ZB(rRsTjDy+H=!oL6yg{Brs_gtCQnaKv!&2dCW_7K#_Y_j`bG5z+HoBY zCA?cdJA2&5joj9`G-h5Uj8X&D632TSl&eypbdC9odVDN?eCvD(jjT}>Rd3j{n?%%D z^oqcb9xj+#GGc+&?uh!aUU1NvBil*P(YY5z);RK%<1mXu^($;r!6%9X>DaYU^ZEvs z?FM%H%EKFZb(8_D^CyD2!^#X3HDk-eWo1+iS*2ki&q`ITR;S&8O1+_jR=IZ61a+gT z+ecawA`8?KC|xHd5o z!gZQ6jd>komGFQey#Z-qUN_819MDB!1>GEmeWve?0|yVt=MEk`DDjNU=DE4Ky?gfb z&>D;52P>(O;}YnRFHH76u)9a?m;&bt>JF9#Lj`DCo@5n|Dl+0)a z#X*w5!7r3Hg3cD1p_8u-w^COoWm%cZT(U3B&(DXZB3q&(tiP#ODiU%T)v>9Ow;Qhh zg+Ky(gqa8!M%>ZHtj73fa1rS8B(9Q|xuvpopxA@-R&#`aV~rP9(5q2ahLU9`SPrdN+w>GJJ`mc3X!`oemF4G(&p#7%JlV_L#7 zeH2a<&moivX$u@GJ=T%+LPA6)l>C=RO|Kg!qQ;$=&?jywpF3M=d66+pV#t{kxZHlf zM-Y5v{0F`-z?)GeWGJ<5+cu#5RqM}?GqTIsc7P+wO+ogs1-5d|ZIN?Gq zwc0HN5>0sJq$8tdWsde#giP?+bf#(rcS!6*RAuBqrMHfiu-Gu;I2Jbo39J!0U@)cW zYbTWpA2Zk=2VItAugW*OU2e*JVe)&H;7(0WqH;fAoQmR1QF_yg&MSCx`g&L!RRDww zXliF|IAZUE1%cR|qnMyBMI)P3sCl0ezf)MGr5V^VX{gL0cbWUTrj$P=Bret(d8FwE^p z)?5pxLEVhd1vcgDxd{-yRtGF_ENKi=6l%1V<;!J77!OUL40kRAcjLy5vMQf^@+n)l zZY3hudG!VBBr*u5CZ}=_*K8S3r9A9cBQws*-Hmn8u(^%O|JY#89&7qAD0`7NyJ_ z4UjZaFZ4f?g@B4XWwe^jT)XCE!C|Rql1f=Nx>bgJh=k2DPq}e%d=y?7rhp?;i|ARh z3)99Bm#uOI=CVvev8xYIkW4a^chrr}d!W>2j~6KtIZycpIG zE&Z!)FiScOne%d-UAuP4D3OcUzJ2>~#~s({$ih6z9A}yMG$nzR>SQ^zijiW|p=!vd zFo0%~Be%3-O3z3RGS2VRjZ@@@t+q160hvsq^20=4PPa+{VHEh-B$Hr$k9iyu3b8*h6CmOaUWBIJKOG% zN?PYj7fQLL9EGe58*iuGF5n(YN!KpK7LUS->K036uVV;m2ZO=UKH2 zq73M1^#++)@YUEMmg1qO%5_9$WFPfkik*}$@l2s1t}@E_Y-Ec|i?S6^LT6=V1#wr> zSYBS?^itd}{y>u(NXruRSS^#c^L$+O1I?H6%<;Pwmic*+R>3p{vY%Q zNXE5V(nqW;<6O24m8mF4(TJ5JnB13^s`LU>*cvBYTv}oYtbjI7^h((?2OC!(tD=|j zGUT0Si3OCEdj=NaXyE6P%`VDK=v=7Ek}eX(Sg@N`IkF+LC#4ncl@(4%<(@%2htb^t z0EbxZ7)Vgru&K_NE!zh1yUNSV(oVPC$hv9l{s_D*_heHOepvcyN_ljBdMuMH$JJEc z-Tr<1j?RhF(8zXiWAX$rU?it%1FAHlU!=BaCE6YiGdz4Vw33BjAPd2WmJlY~?txQq zJ1y>q@jAB`Nyrj-k8wLyNp4gd0wJp;lHRHumyM&9r6nC~*zq)w$kIj~4!X3wBquoF ziKB~xR{;z0rmjw|rebjt*s$f4H=xeBj!2ybl`VCtvS|4UqS}C7n|y0nsI9p6bX29I zAGAZ35tuVDY%|R*tIi{S}ngvSxL)u^>9ehJ1Ux6ghW*Ek4=Kl)ZL9-k-8-qqe`xl@?Nwu z!{(@q5GC*{%c73KyCqkOqGFnlg0;<|L)^c7fH>iJYLSxHpn|kw8(Ygp=K{RAq^v84 zC04l1F&lX?Blj8~JNnjiw*xo{%v~A1(z+UJ6m#$#sPQzGN;S<&PrPbcWvs+&N%YX6 zVO`ggq8$kpQ7Qx7+XE~MG%|}QrDZ5#g<@#*)dSkeW3q-AC=3pi!+R@Zhb?t)Mg{h+ zyY4zVCqnahghI!N#r_(Nqol$Ih3>eCa*Wos^CKk)u8DDzkbp8wRYf|m`q;M#++pr% zE8lFG!DN)!PsXM?V;WadQJq0QxnaWw-mt7;k3atSfddEF#7Sy$ruNoDfGKFFm3>({ z(44#^D(EIIq@Q>xCLIfB>pBn|0&gmn!T1ioR^t9xiFc|){la_KsAT!mtdrPzF@|mp z$8n1EI-tc^8t6JC=7vyuD>pQ9{SlCNP#Oj7)xTxInUY_COoc)6-l;d#kImz=x4oU3Rp-(g!2ZJ*&pwscOyF zq^jBb`tnf4Piu(MShnkXXib31*A@Rx>WbCl9{%AUNS=0<%zsq*rN(Yk|CRAN?%%4d z>El~F;-9rga2QZF?#>Rv1?`B(n5IWu>Ji^L@=+ZAC!WS(JJ9#}M1&Z{56Z(opZflM zL_`#i{jl@;i;I_dnPeq|IlpY|rD?Dc%89{kAu6o;J~t3L6%5$08g@8$qwU>CjH5#Z}Fji1ED%LP_>R zrxVnLayJjE{9T5YWgRYnI)3lx^RQ|M6b7M{^J7GS$Q4cU!OYR|ZXjFXPPZXlk z=G1_@E!{H%X+uGT8lMtFD0zG))9&NJDE~e}#=v^d!BX^dqAG1_IU#>dq_I&(^B71R z8x>rJHg4QFJ3GsE+uYooR+#xXv~Go=(`>c2ZQZ)@xZ`Hmub)}Jerj@3%XwK|qL@e< z4+7kHnlTAHllv*havCavS;juVHbHRh#$o{yD>kwY`W-|$tCka#$qXTu005IU} z$0J2h z77cQ1D7xrm69s2QH5JqgDYTU&Z&Gbh6BCT09*#^zGB)I!Qxg*jYRnL-&swM-AK1Tt zd1-0=%*>7*J0uyBg&}4S1D#myzW{w$WKdX{g6{*9@W54W^*s zW2d7pEW^lCc)fDrN2L{o({{UK0$NU9J_;u)uupo;k!(ib(y-bGE1;FOC!x_mq=`I* zRGOP z_!bfDauZa{5Dd7JHd~J%T4qFdgk`f#wyAYfA&ejUG8reyxRhhG$P`tYR;L}+dP2a7 z^6U3|g)5lKa~q)%H|X`srjctXX3JUGP)qwNC><=h$irQdqxAdt+;`st4?J+f2`5a? z%*Zj5--J

MqVu7xRLP8wk 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 diff --git a/plugins/stk/voices/blow_hole/blow_hole_instrument.cpp b/plugins/stk/voices/blow_hole/blow_hole_instrument.cpp deleted file mode 100644 index c04b41864..000000000 --- a/plugins/stk/voices/blow_hole/blow_hole_instrument.cpp +++ /dev/null @@ -1,103 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "engine.h" -#include "note_play_handle.h" - -#include "blow_hole_instrument.h" -#include "blow_hole_instrument_view.h" -#include "blow_hole_processor.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embedded_resources.h" - - -extern "C" -{ - -plugin::descriptor blowhole_plugin_descriptor = -{ - STRINGIFY_PLUGIN_NAME( PLUGIN_NAME ), - "Blow Hole", - QT_TRANSLATE_NOOP( "pluginBrowser", - "Blown tube noises" ), - "Danny McRae ", - 0x0100, - plugin::Instrument, - new pluginPixmapLoader( "logo" ), - NULL -} ; - -} - - -blowHoleInstrument::blowHoleInstrument( instrumentTrack * _channel_track ): - stkInstrument( _channel_track, &blowhole_plugin_descriptor ) -{ - model()->reedStiffness()->setTrack( _channel_track ); - model()->noiseGain()->setTrack( _channel_track ); - model()->toneholeState()->setTrack( _channel_track ); - model()->registerState()->setTrack( _channel_track ); - model()->breathPressure()->setTrack( _channel_track ); -} - - - - -blowHoleInstrument::~blowHoleInstrument() -{ -} - - - - -QString blowHoleInstrument::nodeName( void ) const -{ - return( blowhole_plugin_descriptor.name ); -} - - - - -pluginView * blowHoleInstrument::instantiateView( QWidget * _parent ) -{ - return( new blowHoleInstrumentView( this, _parent ) ); -} - - - - -extern "C" -{ - -// neccessary for getting instance out of shared lib -plugin * lmms_plugin_main( model * _model, void * _data ) -{ - return( new blowHoleInstrument( static_cast( _data ) ) ); -} - - -} - - diff --git a/plugins/stk/voices/blow_hole/blow_hole_instrument.h b/plugins/stk/voices/blow_hole/blow_hole_instrument.h deleted file mode 100644 index 21ffb7fea..000000000 --- a/plugins/stk/voices/blow_hole/blow_hole_instrument.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _BLOW_HOLE_INSTRUMENT_H -#define _BLOW_HOLE_INSTRUMENT_H - -#include "stk_instrument.h" - -#include "blow_hole_processor.h" -#include "blow_hole_model.h" - - -class blowHoleInstrument : public stkInstrument -{ -public: - blowHoleInstrument( instrumentTrack * _channel_track ); - virtual ~blowHoleInstrument( void ); - - QString nodeName( void ) const; - - pluginView * instantiateView( QWidget * _parent ); -}; - -#endif diff --git a/plugins/stk/voices/blow_hole/blow_hole_instrument_view.cpp b/plugins/stk/voices/blow_hole/blow_hole_instrument_view.cpp deleted file mode 100644 index c1453099d..000000000 --- a/plugins/stk/voices/blow_hole/blow_hole_instrument_view.cpp +++ /dev/null @@ -1,110 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include -#include -#include - -#include "blow_hole_instrument_view.h" - -#include -#include - -#include "engine.h" -#include "gui_templates.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embed.cpp" - - -blowHoleInstrumentView::blowHoleInstrumentView( blowHoleInstrument * _instrument, QWidget * _parent ) : - stkInstrumentView( _instrument, _parent ) -{ - QVBoxLayout * vl = new QVBoxLayout( m_topView ); - QHBoxLayout * h1 = new QHBoxLayout(); - QHBoxLayout * h2 = new QHBoxLayout(); - QHBoxLayout * h3 = new QHBoxLayout(); - - - m_reedStiffness = new knob( knobSmall_17, m_topView, tr( "Stiffness" ) ); - m_reedStiffness->setLabel( tr( "Reed Stiffness" ) ); - m_reedStiffness->setHintText( tr( "Stiffness:" ) + " ", "" ); - - m_noiseGain = new knob( knobSmall_17, m_topView, tr( "Noise" ) ); - m_noiseGain->setLabel( tr( "Noise Gain" ) ); - m_noiseGain->setHintText( tr( "Noise:" ) + " ", "" ); - - m_toneholeState = new knob( knobSmall_17, m_topView, tr( "Tone Hole" ) ); - m_toneholeState->setLabel( tr( "Tone Hole" ) ); - m_toneholeState->setHintText( tr( "Tone Hole:" ) + " ", "" ); - - m_registerState = new knob( knobSmall_17, m_topView, tr( "Register" ) ); - m_registerState->setLabel( tr( "Register" ) ); - m_registerState->setHintText( tr( "Register:" ) + " ", "" ); - - m_breathPressure = new knob( knobSmall_17, m_topView, tr( "Breath Pres" ) ); - m_breathPressure->setLabel( tr( "Breath Pressure" ) ); - m_breathPressure->setHintText( tr( "Pressure:" ) + " ", "" ); - - h1->addWidget( m_reedStiffness ); - h1->addWidget( m_noiseGain ); - - h2->addWidget( m_toneholeState ); - h2->addWidget( m_registerState ); - - h3->addWidget( m_breathPressure ); - - vl->addLayout( h1 ); - vl->addLayout( h2 ); - vl->addLayout( h3 ); - - setAutoFillBackground( TRUE ); - QPalette pal; - pal.setBrush( backgroundRole(), PLUGIN_NAME::getIconPixmap( "artwork" ) ); - setPalette( pal ); -} - - - - -blowHoleInstrumentView::~blowHoleInstrumentView() -{ -} - - - - -void blowHoleInstrumentView::modelChanged( void ) -{ - stkInstrumentView::modelChanged(); - - blowHoleInstrument * inst = castModel(); - m_reedStiffness->setModel( inst->model()->reedStiffness() ); - m_noiseGain->setModel( inst->model()->noiseGain() ); - m_toneholeState->setModel( inst->model()->toneholeState() ); - m_registerState->setModel( inst->model()->registerState() ); - m_breathPressure->setModel( inst->model()->breathPressure() ); -} - - - diff --git a/plugins/stk/voices/blow_hole/blow_hole_instrument_view.h b/plugins/stk/voices/blow_hole/blow_hole_instrument_view.h deleted file mode 100644 index 7631fe0c2..000000000 --- a/plugins/stk/voices/blow_hole/blow_hole_instrument_view.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _BLOW_HOLE_INSTRUMENT_VIEW_H -#define _BLOW_HOLE_INSTRUMENT_VIEW_H - -#include "knob.h" - -#include "stk_instrument_view.h" -#include "blow_hole_instrument.h" - - -class blowHoleInstrumentView: public stkInstrumentView -{ -public: - blowHoleInstrumentView( blowHoleInstrument * _instrument, QWidget * _parent ); - virtual ~blowHoleInstrumentView( void ); - -private: - virtual void modelChanged( void ); - - knob * m_reedStiffness; - knob * m_noiseGain; - knob * m_toneholeState; - knob * m_registerState; - knob * m_breathPressure; -}; - -#endif diff --git a/plugins/stk/voices/blow_hole/blow_hole_model.cpp b/plugins/stk/voices/blow_hole/blow_hole_model.cpp deleted file mode 100644 index 644f06361..000000000 --- a/plugins/stk/voices/blow_hole/blow_hole_model.cpp +++ /dev/null @@ -1,88 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "blow_hole_model.h" - - -blowHoleModel::blowHoleModel( bool _monophonic, - StkFloat _portamento, - StkFloat _bend, - StkFloat _bend_range, - bool _velocity_sensitive_lpf, - StkFloat _velocity_sensitive_q, - StkFloat _volume, - StkFloat _pan, - StkFloat _spread, - StkFloat _reed_stiffness, - StkFloat _noise_gain, - StkFloat _tonehole_state, - StkFloat _register_state, - StkFloat _breath_pressure ): - stkModel( _monophonic, _portamento, _bend, _bend_range, _velocity_sensitive_lpf, _velocity_sensitive_q, _volume, _pan, _spread ), - m_reedStiffness( new floatModel( _reed_stiffness, 0.0f, 128.0f, 0.1f, this ) ), - m_noiseGain( new floatModel( _noise_gain, 0.0f, 128.0f, 0.1f, this ) ), - m_toneholeState( new floatModel( _tonehole_state, 0.0f, 128.0f, 0.1f, this ) ), - m_registerState( new floatModel( _register_state, 0.0f, 128.0f, 0.1f, this ) ), - m_breathPressure( new floatModel( _breath_pressure, 0.0f, 128.0f, 0.1f, this ) ) -{ -} - - - - -blowHoleModel::~blowHoleModel() -{ - delete m_reedStiffness; - delete m_noiseGain; - delete m_toneholeState; - delete m_registerState; - delete m_breathPressure; -} - - - - -void blowHoleModel::saveSettings( QDomDocument & _doc, QDomElement & _parent ) -{ - stkModel::saveSettings( _doc, _parent ); - m_reedStiffness->saveSettings( _doc, _parent, "reedstiffness" ); - m_noiseGain->saveSettings( _doc, _parent, "noisegain" ); - m_toneholeState->saveSettings( _doc, _parent, "toneholestate" ); - m_registerState->saveSettings( _doc, _parent, "registerstate" ); - m_breathPressure->saveSettings( _doc, _parent, "breathpressure" ); -} - - - - -void blowHoleModel::loadSettings( const QDomElement & _this ) -{ - stkModel::loadSettings( _this ); - m_reedStiffness->loadSettings( _this, "reedstiffness" ); - m_noiseGain->loadSettings( _this, "noisegain" ); - m_toneholeState->loadSettings( _this, "toneholestate" ); - m_registerState->loadSettings( _this, "registerstate" ); - m_breathPressure->loadSettings( _this, "breathpressure" ); -} - diff --git a/plugins/stk/voices/blow_hole/blow_hole_model.h b/plugins/stk/voices/blow_hole/blow_hole_model.h deleted file mode 100644 index 5d8ec20f0..000000000 --- a/plugins/stk/voices/blow_hole/blow_hole_model.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _BLOW_HOLE_MODEL_H -#define _BLOW_HOLE_MODEL_H - -#include "stk_model.h" - - -class blowHoleModel: public stkModel -{ -public: - blowHoleModel( bool _monophonic = FALSE, - StkFloat _portamento = 0.0f, - StkFloat _bend = 0.0f, - StkFloat _bend_range = 2.0f, - bool _velocity_sensitive_lpf = TRUE, - StkFloat _velocity_sensitive_q = 0.5f, - StkFloat _volume = 1.0f, - StkFloat _pan = 0.0f, - StkFloat _spread = 0.0f, - StkFloat _reed_stiffness = 64.0f, - StkFloat _noise_gain = 64.0f, - StkFloat _tonehole_state = 64.0f, - StkFloat _register_state = 64.0f, - StkFloat _breath_pressure = 64.0f ); - ~blowHoleModel(); - - inline floatModel * reedStiffness( void ) { return( m_reedStiffness ); } - inline floatModel * noiseGain( void ) { return( m_noiseGain ); } - inline floatModel * toneholeState( void ) { return( m_toneholeState ); } - inline floatModel * registerState( void ) { return( m_registerState ); } - inline floatModel * breathPressure( void ) { return( m_breathPressure ); } - - void saveSettings( QDomDocument & _doc, QDomElement & _parent ); - - void loadSettings( const QDomElement & _this ); - -private: - floatModel * m_reedStiffness; - floatModel * m_noiseGain; - floatModel * m_toneholeState; - floatModel * m_registerState; - floatModel * m_breathPressure; -}; - -#endif diff --git a/plugins/stk/voices/blow_hole/blow_hole_processor.cpp b/plugins/stk/voices/blow_hole/blow_hole_processor.cpp deleted file mode 100644 index 13ce2fefc..000000000 --- a/plugins/stk/voices/blow_hole/blow_hole_processor.cpp +++ /dev/null @@ -1,51 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include "blow_hole_processor.h" -#include "config_mgr.h" - - -blowHoleProcessor::blowHoleProcessor( sample_rate_t _sample_rate ): - stkProcessor( _sample_rate, 20.0f ) -{ -} - - - - -blowHoleProcessor::~blowHoleProcessor() -{ -} - - - - -void blowHoleProcessor::setControls( blowHoleModel * _model ) -{ - voice()->controlChange( 1, _model->registerState()->value() ); - voice()->controlChange( 2, _model->reedStiffness()->value() ); - voice()->controlChange( 4, _model->noiseGain()->value() ); - voice()->controlChange( 11, _model->toneholeState()->value() ); - voice()->controlChange( 128, _model->breathPressure()->value() ); - m_delayRead = m_delayWrite - static_cast( _model->spread()->value() ); -} diff --git a/plugins/stk/voices/blow_hole/blow_hole_processor.h b/plugins/stk/voices/blow_hole/blow_hole_processor.h deleted file mode 100644 index 331aeba3c..000000000 --- a/plugins/stk/voices/blow_hole/blow_hole_processor.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _BLOW_HOLE_PROCESSOR_H -#define _BLOW_HOLE_PROCESSOR_H - -#include "BlowHole.h" - -#include "stk_processor.h" - -#include "blow_hole_model.h" - -class blowHoleProcessor: public stkProcessor -{ -public: - blowHoleProcessor( sample_rate_t _sample_rate ); - ~blowHoleProcessor( void ); - - void setControls( blowHoleModel * _model ); -}; - -#endif diff --git a/plugins/stk/voices/blow_hole/logo.png b/plugins/stk/voices/blow_hole/logo.png deleted file mode 100644 index 93fcd1746131e93516a5c85394decef1d7df2561..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 659 zcmV;E0&M+>P)BB%v^%K{!OpGvZ5fKp)5fL#?O|eA$Le0=`hnTRw z&NAP2XGBCqM8p+UMnyzKL_|cyXEn``*j+PR>3}$HZJnjhUh$2`EjM4U%iQEaZ~461 zxJr!GENm6e*Pq$3&r@7UEwPH`r!hUf_O>>uVvDczH&-Y?!b>wOBYBlI{ z+N8^CiYH8nclFf;eisX>Bkzfas=+Gpb(LP*#H44doe}Y|>#GCbikqv!M)9TryTnQB z>SET5h(lg>pJg>GmpbD&bF0BlvB|JFYGuvFo%Wa%5i#Nwi|Zn85r=CQM#QK%=IZ)u z78$bHN5(`Px4PPROuSPKmWVMcoe~dJXL_wMEcR6!+r`FeFeG+Wc~tyrMg1L?i<8yH z0dadZ*eaf@Dc%;}8K}><6$h(@LGe>H=yTc`12xSx z#>7+A%4YXe8w(v4PgV=}iw~>8D)Cj#aJNYlZmSC%5MO%4b>`?dXoH`{uzA(OOX7uU zuu;5GEo>5_7T0;kMMOkI#6e4|ja}m2YOqs0TrIF$>@%m%af1zZ7&d0Y2}itdolEK> tj*4rm!H5{FHWvCpY^$!WuCD)&KLEu%@0qNKIFkSX002ovPDHLkV1i3NG93T_ diff --git a/plugins/stk/voices/bowed/Makefile.am b/plugins/stk/voices/bowed/Makefile.am deleted file mode 100644 index 34d2bd52d..000000000 --- a/plugins/stk/voices/bowed/Makefile.am +++ /dev/null @@ -1,46 +0,0 @@ -AUTOMAKE_OPTIONS = foreign 1.4 - - -INCLUDES = -I@stk_includes@ -I$(top_srcdir)/include -I$(top_srcdir)/src/lib -I. -I$(top_srcdir)/plugins/stk/voices/include - - -AM_CXXFLAGS := $(AM_CXXFLAGS) $(QT_CXXFLAGS) -DPLUGIN_NAME="bowed" - - -%.moc: ./%.h - $(MOC) -o $@ $< - - -MOC_FILES = ./bowed_model.moc - -BUILT_SOURCES = $(MOC_FILES) ./embedded_resources.h -EMBEDDED_RESOURCES = $(wildcard *png) - -./embedded_resources.h: $(EMBEDDED_RESOURCES) - $(BIN2RES) $(EMBEDDED_RESOURCES) > $@ - -EXTRA_DIST = $(EMBEDDED_RESOURCES) - - -CLEANFILES = $(MOC_FILES) ./embedded_resources.h - - - -pkglib_LTLIBRARIES = libbowed.la - -libbowed_la_SOURCES = bowed_model.cpp \ - bowed_model.h \ - bowed_processor.cpp \ - bowed_processor.h \ - bowed_instrument.cpp \ - bowed_instrument.h \ - bowed_instrument_view.cpp \ - bowed_instrument_view.h \ - $(top_srcdir)/plugins/stk/voices/src/stk_model.cpp \ - stk_model.h - - - -libbowed_la_LDFLAGS = -L@stk_lib@ -lstk -Wl,-export-dynamic - -$(libbowed_la_SOURCES): ./embedded_resources.h diff --git a/plugins/stk/voices/bowed/artwork.png b/plugins/stk/voices/bowed/artwork.png deleted file mode 100644 index 02d4f70844a08290319be7cd0f86ca72621a705c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 64501 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� 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�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 - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "engine.h" -#include "note_play_handle.h" - -#include "bowed_instrument.h" -#include "bowed_instrument_view.h" -#include "bowed_processor.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embedded_resources.h" - - -extern "C" -{ - -plugin::descriptor bowed_plugin_descriptor = -{ - STRINGIFY_PLUGIN_NAME( PLUGIN_NAME ), - "Bowed", - QT_TRANSLATE_NOOP( "pluginBrowser", - "Bowed string" ), - "Danny McRae ", - 0x0100, - plugin::Instrument, - new pluginPixmapLoader( "logo" ), - NULL -} ; - -} - - -bowedInstrument::bowedInstrument( instrumentTrack * _channel_track ): - stkInstrument( _channel_track, &bowed_plugin_descriptor ) -{ - model()->bowPressure()->setTrack( _channel_track ); - model()->bowPosition()->setTrack( _channel_track ); - model()->vibratoFrequency()->setTrack( _channel_track ); - model()->vibratoGain()->setTrack( _channel_track ); -} - - - - -bowedInstrument::~bowedInstrument() -{ -} - - - - -QString bowedInstrument::nodeName( void ) const -{ - return( bowed_plugin_descriptor.name ); -} - - - - -pluginView * bowedInstrument::instantiateView( QWidget * _parent ) -{ - return( new bowedInstrumentView( this, _parent ) ); -} - - - - -extern "C" -{ - -// neccessary for getting instance out of shared lib -plugin * lmms_plugin_main( model * _model, void * _data ) -{ - return( new bowedInstrument( static_cast( _data ) ) ); -} - - -} - - diff --git a/plugins/stk/voices/bowed/bowed_instrument.h b/plugins/stk/voices/bowed/bowed_instrument.h deleted file mode 100644 index 82fbb9017..000000000 --- a/plugins/stk/voices/bowed/bowed_instrument.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _BOWED_INSTRUMENT_H -#define _BOWED_INSTRUMENT_H - -#include "stk_instrument.h" - -#include "bowed_processor.h" -#include "bowed_model.h" - - -class bowedInstrument : public stkInstrument -{ -public: - bowedInstrument( instrumentTrack * _channel_track ); - virtual ~bowedInstrument( void ); - - QString nodeName( void ) const; - - pluginView * instantiateView( QWidget * _parent ); -}; - -#endif diff --git a/plugins/stk/voices/bowed/bowed_instrument_view.cpp b/plugins/stk/voices/bowed/bowed_instrument_view.cpp deleted file mode 100644 index 2493b2571..000000000 --- a/plugins/stk/voices/bowed/bowed_instrument_view.cpp +++ /dev/null @@ -1,100 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include -#include -#include - -#include "bowed_instrument_view.h" - -#include -#include - -#include "engine.h" -#include "gui_templates.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embed.cpp" - - -bowedInstrumentView::bowedInstrumentView( bowedInstrument * _instrument, QWidget * _parent ) : - stkInstrumentView( _instrument, _parent ) -{ - QVBoxLayout * vl = new QVBoxLayout( m_topView ); - QHBoxLayout * h1 = new QHBoxLayout; - QHBoxLayout * h2 = new QHBoxLayout; - - m_bowPressure = new knob( knobSmall_17, m_topView, tr( "Pressure" ) ); - m_bowPressure->setLabel( tr( "Bow Pressure" ) ); - m_bowPressure->setHintText( tr( "Pressure:" ) + " ", "" ); - - m_bowPosition = new knob( knobSmall_17, m_topView, tr( "Position" ) ); - m_bowPosition->setLabel( tr( "Bow Position" ) ); - m_bowPosition->setHintText( tr( "Position:" ) + " ", "" ); - - m_vibratoFrequency = new knob( knobSmall_17, m_topView, tr( "Vib Freq" ) ); - m_vibratoFrequency->setLabel( tr( "Vibrato Frequency" ) ); - m_vibratoFrequency->setHintText( tr( "Vib Freq:" ) + " ", "" ); - - m_vibratoGain = new knob( knobSmall_17, m_topView, tr( "Vib Gain" ) ); - m_vibratoGain->setLabel( tr( "Vibrato Gain" ) ); - m_vibratoGain->setHintText( tr( "Vib Gain:" ) + " ", "" ); - - h1->addWidget( m_bowPressure ); - h1->addWidget( m_bowPosition ); - - h2->addWidget( m_vibratoFrequency ); - h2->addWidget( m_vibratoGain ); - - vl->addLayout( h1 ); - vl->addLayout( h2 ); - - setAutoFillBackground( TRUE ); - QPalette pal; - pal.setBrush( backgroundRole(), PLUGIN_NAME::getIconPixmap( "artwork" ) ); - setPalette( pal ); -} - - - - -bowedInstrumentView::~bowedInstrumentView() -{ -} - - - - -void bowedInstrumentView::modelChanged( void ) -{ - stkInstrumentView::modelChanged(); - - bowedInstrument * inst = castModel(); - m_bowPressure->setModel( inst->model()->bowPressure() ); - m_bowPosition->setModel( inst->model()->bowPosition() ); - m_vibratoFrequency->setModel( inst->model()->vibratoFrequency() ); - m_vibratoGain->setModel( inst->model()->vibratoGain() ); -} - - - diff --git a/plugins/stk/voices/bowed/bowed_instrument_view.h b/plugins/stk/voices/bowed/bowed_instrument_view.h deleted file mode 100644 index 20237bf37..000000000 --- a/plugins/stk/voices/bowed/bowed_instrument_view.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _BOWED_INSTRUMENT_VIEW_H -#define _BOWED_INSTRUMENT_VIEW_H - -#include "knob.h" - -#include "stk_instrument_view.h" -#include "bowed_instrument.h" - - -class bowedInstrumentView: public stkInstrumentView -{ -public: - bowedInstrumentView( bowedInstrument * _instrument, QWidget * _parent ); - virtual ~bowedInstrumentView( void ); - -private: - virtual void modelChanged( void ); - - knob * m_bowPressure; - knob * m_bowPosition; - knob * m_vibratoFrequency; - knob * m_vibratoGain; -}; - -#endif diff --git a/plugins/stk/voices/bowed/bowed_model.cpp b/plugins/stk/voices/bowed/bowed_model.cpp deleted file mode 100644 index 16df264e1..000000000 --- a/plugins/stk/voices/bowed/bowed_model.cpp +++ /dev/null @@ -1,83 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "bowed_model.h" - - -bowedModel::bowedModel( bool _monophonic, - StkFloat _portamento, - StkFloat _bend, - StkFloat _bend_range, - bool _velocity_sensitive_lpf, - StkFloat _velocity_sensitive_q, - StkFloat _volume, - StkFloat _pan, - StkFloat _spread, - StkFloat _bow_pressure, - StkFloat _bow_position, - StkFloat _vibrato_frequency, - StkFloat _vibrato_gain ): - stkModel( _monophonic, _portamento, _bend, _bend_range, _velocity_sensitive_lpf, _velocity_sensitive_q, _volume, _pan, _spread ), - m_bowPressure( new floatModel( _bow_pressure, 0.0f, 128.0f, 0.1f, this ) ), - m_bowPosition( new floatModel( _bow_position, 0.0f, 128.0f, 0.1f, this ) ), - m_vibratoFrequency( new floatModel( _vibrato_frequency, 0.0f, 128.0f, 0.1f, this ) ), - m_vibratoGain( new floatModel( _vibrato_gain, 0.0f, 128.0f, 0.1f, this ) ) -{ -} - - - - -bowedModel::~bowedModel() -{ - delete m_bowPressure; - delete m_bowPosition; - delete m_vibratoFrequency; - delete m_vibratoGain; -} - - - - -void bowedModel::saveSettings( QDomDocument & _doc, QDomElement & _parent ) -{ - stkModel::saveSettings( _doc, _parent ); - m_bowPressure->saveSettings( _doc, _parent, "bowpressure" ); - m_bowPosition->saveSettings( _doc, _parent, "bowgain" ); - m_vibratoFrequency->saveSettings( _doc, _parent, "vibratofrequency" ); - m_vibratoGain->saveSettings( _doc, _parent, "vibratogain" ); -} - - - - -void bowedModel::loadSettings( const QDomElement & _this ) -{ - stkModel::loadSettings( _this ); - m_bowPressure->loadSettings( _this, "bowpressure" ); - m_bowPosition->loadSettings( _this, "bowposition" ); - m_vibratoFrequency->loadSettings( _this, "vibratofrequency" ); - m_vibratoGain->loadSettings( _this, "vibratogain" ); -} - diff --git a/plugins/stk/voices/bowed/bowed_model.h b/plugins/stk/voices/bowed/bowed_model.h deleted file mode 100644 index c04cb5678..000000000 --- a/plugins/stk/voices/bowed/bowed_model.h +++ /dev/null @@ -1,79 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _BOWED_MODEL_H -#define _BOWED_MODEL_H - -#include "stk_model.h" - - -class bowedModel: public stkModel -{ -public: - bowedModel( bool _monophonic = FALSE, - StkFloat _portamento = 0.0f, - StkFloat _bend = 0.0f, - StkFloat _bend_range = 2.0f, - bool _velocity_sensitive_lpf = TRUE, - StkFloat _velocity_sensitive_q = 0.5f, - StkFloat _volume = 1.0f, - StkFloat _pan = 0.0f, - StkFloat _spread = 0.0f, - StkFloat _bow_pressure = 64.0f, - StkFloat _bow_position = 64.0f, - StkFloat _vibrato_frequency = 64.0f, - StkFloat _vibrato_gain = 64.0f ); - ~bowedModel(); - - inline floatModel * bowPressure( void ) const - { - return( m_bowPressure ); - } - - inline floatModel * bowPosition( void ) const - { - return( m_bowPosition ); - } - - inline floatModel * vibratoFrequency( void ) const - { - return( m_vibratoFrequency ); - } - - inline floatModel * vibratoGain( void ) const - { - return( m_vibratoGain ); - } - - void saveSettings( QDomDocument & _doc, QDomElement & _parent ); - - void loadSettings( const QDomElement & _this ); - -private: - floatModel * m_bowPressure; - floatModel * m_bowPosition; - floatModel * m_vibratoFrequency; - floatModel * m_vibratoGain; -}; - -#endif diff --git a/plugins/stk/voices/bowed/bowed_processor.cpp b/plugins/stk/voices/bowed/bowed_processor.cpp deleted file mode 100644 index ab165c6f9..000000000 --- a/plugins/stk/voices/bowed/bowed_processor.cpp +++ /dev/null @@ -1,50 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include "bowed_processor.h" -#include "config_mgr.h" - - -bowedProcessor::bowedProcessor( sample_rate_t _sample_rate ): - stkProcessor( _sample_rate, 20.0f ) -{ -} - - - - -bowedProcessor::~bowedProcessor() -{ -} - - - - -void bowedProcessor::setControls( bowedModel * _model ) -{ - voice()->controlChange( 2, _model->bowPressure()->value() ); - voice()->controlChange( 4, _model->bowPosition()->value() ); - voice()->controlChange( 11, _model->vibratoFrequency()->value() ); - voice()->controlChange( 1, _model->vibratoGain()->value() ); - m_delayRead = m_delayWrite - static_cast( _model->spread()->value() ); -} diff --git a/plugins/stk/voices/bowed/bowed_processor.h b/plugins/stk/voices/bowed/bowed_processor.h deleted file mode 100644 index 6fd34cffa..000000000 --- a/plugins/stk/voices/bowed/bowed_processor.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _BOWED_PROCESSOR_H -#define _BOWED_PROCESSOR_H - -#include "Bowed.h" - -#include "stk_processor.h" - -#include "bowed_model.h" - -class bowedProcessor: public stkProcessor -{ -public: - bowedProcessor( sample_rate_t _sample_rate ); - ~bowedProcessor( void ); - - void setControls( bowedModel * _model ); -}; - -#endif diff --git a/plugins/stk/voices/bowed/logo.png b/plugins/stk/voices/bowed/logo.png deleted file mode 100644 index 93fcd1746131e93516a5c85394decef1d7df2561..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 659 zcmV;E0&M+>P)BB%v^%K{!OpGvZ5fKp)5fL#?O|eA$Le0=`hnTRw z&NAP2XGBCqM8p+UMnyzKL_|cyXEn``*j+PR>3}$HZJnjhUh$2`EjM4U%iQEaZ~461 zxJr!GENm6e*Pq$3&r@7UEwPH`r!hUf_O>>uVvDczH&-Y?!b>wOBYBlI{ z+N8^CiYH8nclFf;eisX>Bkzfas=+Gpb(LP*#H44doe}Y|>#GCbikqv!M)9TryTnQB z>SET5h(lg>pJg>GmpbD&bF0BlvB|JFYGuvFo%Wa%5i#Nwi|Zn85r=CQM#QK%=IZ)u z78$bHN5(`Px4PPROuSPKmWVMcoe~dJXL_wMEcR6!+r`FeFeG+Wc~tyrMg1L?i<8yH z0dadZ*eaf@Dc%;}8K}><6$h(@LGe>H=yTc`12xSx z#>7+A%4YXe8w(v4PgV=}iw~>8D)Cj#aJNYlZmSC%5MO%4b>`?dXoH`{uzA(OOX7uU zuu;5GEo>5_7T0;kMMOkI#6e4|ja}m2YOqs0TrIF$>@%m%af1zZ7&d0Y2}itdolEK> tj*4rm!H5{FHWvCpY^$!WuCD)&KLEu%@0qNKIFkSX002ovPDHLkV1i3NG93T_ diff --git a/plugins/stk/voices/brass/Makefile.am b/plugins/stk/voices/brass/Makefile.am deleted file mode 100644 index f774e101c..000000000 --- a/plugins/stk/voices/brass/Makefile.am +++ /dev/null @@ -1,46 +0,0 @@ -AUTOMAKE_OPTIONS = foreign 1.4 - - -INCLUDES = -I@stk_includes@ -I$(top_srcdir)/include -I$(top_srcdir)/src/lib -I. -I$(top_srcdir)/plugins/stk/voices/include - - -AM_CXXFLAGS := $(AM_CXXFLAGS) $(QT_CXXFLAGS) -DPLUGIN_NAME="brass" - - -%.moc: ./%.h - $(MOC) -o $@ $< - - -MOC_FILES = ./brass_model.moc - -BUILT_SOURCES = $(MOC_FILES) ./embedded_resources.h -EMBEDDED_RESOURCES = $(wildcard *png) - -./embedded_resources.h: $(EMBEDDED_RESOURCES) - $(BIN2RES) $(EMBEDDED_RESOURCES) > $@ - -EXTRA_DIST = $(EMBEDDED_RESOURCES) - - -CLEANFILES = $(MOC_FILES) ./embedded_resources.h - - - -pkglib_LTLIBRARIES = libbrass.la - -libbrass_la_SOURCES = brass_model.cpp \ - brass_model.h \ - brass_processor.cpp \ - brass_processor.h \ - brass_instrument.cpp \ - brass_instrument.h \ - brass_instrument_view.cpp \ - brass_instrument_view.h \ - $(top_srcdir)/plugins/stk/voices/src/stk_model.cpp \ - stk_model.h - - - -libbrass_la_LDFLAGS = -L@stk_lib@ -lstk -Wl,-export-dynamic - -$(libbrass_la_SOURCES): ./embedded_resources.h diff --git a/plugins/stk/voices/brass/artwork.png b/plugins/stk/voices/brass/artwork.png deleted file mode 100644 index e28e00b2da21ba09fecedc253ac72c519686335a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 64414 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 - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "engine.h" -#include "note_play_handle.h" - -#include "brass_instrument.h" -#include "brass_instrument_view.h" -#include "brass_processor.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embedded_resources.h" - - -extern "C" -{ - -plugin::descriptor brass_plugin_descriptor = -{ - STRINGIFY_PLUGIN_NAME( PLUGIN_NAME ), - "Brass", - QT_TRANSLATE_NOOP( "pluginBrowser", - "Brass sounds" ), - "Danny McRae ", - 0x0100, - plugin::Instrument, - new pluginPixmapLoader( "logo" ), - NULL -} ; - -} - - -brassInstrument::brassInstrument( instrumentTrack * _channel_track ): - stkInstrument( _channel_track, &brass_plugin_descriptor ) -{ - model()->lipTension()->setTrack( _channel_track ); - model()->slideLength()->setTrack( _channel_track ); - model()->vibratoFrequency()->setTrack( _channel_track ); - model()->vibratoGain()->setTrack( _channel_track ); -} - - - - -brassInstrument::~brassInstrument() -{ -} - - - - -QString brassInstrument::nodeName( void ) const -{ - return( brass_plugin_descriptor.name ); -} - - - - -pluginView * brassInstrument::instantiateView( QWidget * _parent ) -{ - return( new brassInstrumentView( this, _parent ) ); -} - - - - -extern "C" -{ - -// neccessary for getting instance out of shared lib -plugin * lmms_plugin_main( model * _model, void * _data ) -{ - return( new brassInstrument( static_cast( _data ) ) ); -} - - -} - - diff --git a/plugins/stk/voices/brass/brass_instrument.h b/plugins/stk/voices/brass/brass_instrument.h deleted file mode 100644 index 502414798..000000000 --- a/plugins/stk/voices/brass/brass_instrument.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _BRASS_INSTRUMENT_H -#define _BRASS_INSTRUMENT_H - -#include "stk_instrument.h" - -#include "brass_processor.h" -#include "brass_model.h" - - -class brassInstrument : public stkInstrument -{ -public: - brassInstrument( instrumentTrack * _channel_track ); - virtual ~brassInstrument( void ); - - QString nodeName( void ) const; - - pluginView * instantiateView( QWidget * _parent ); -}; - -#endif diff --git a/plugins/stk/voices/brass/brass_instrument_view.cpp b/plugins/stk/voices/brass/brass_instrument_view.cpp deleted file mode 100644 index 9b303aa97..000000000 --- a/plugins/stk/voices/brass/brass_instrument_view.cpp +++ /dev/null @@ -1,100 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include -#include -#include - -#include "brass_instrument_view.h" - -#include -#include - -#include "engine.h" -#include "gui_templates.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embed.cpp" - - -brassInstrumentView::brassInstrumentView( brassInstrument * _instrument, QWidget * _parent ) : - stkInstrumentView( _instrument, _parent ) -{ - QVBoxLayout * vl = new QVBoxLayout( m_topView ); - QHBoxLayout * h1 = new QHBoxLayout; - QHBoxLayout * h2 = new QHBoxLayout; - - m_lipTension = new knob( knobSmall_17, m_topView, tr( "Tension" ) ); - m_lipTension->setLabel( tr( "Lip Tension" ) ); - m_lipTension->setHintText( tr( "Tension:" ) + " ", "" ); - - m_slideLength = new knob( knobSmall_17, m_topView, tr( "Length" ) ); - m_slideLength->setLabel( tr( "Slide Length" ) ); - m_slideLength->setHintText( tr( "Length:" ) + " ", "" ); - - m_vibratoFrequency = new knob( knobSmall_17, m_topView, tr( "Vib Freq" ) ); - m_vibratoFrequency->setLabel( tr( "Vibrato Frequency" ) ); - m_vibratoFrequency->setHintText( tr( "Vib Freq:" ) + " ", "" ); - - m_vibratoGain = new knob( knobSmall_17, m_topView, tr( "Vib Gain" ) ); - m_vibratoGain->setLabel( tr( "Vibrato Gain" ) ); - m_vibratoGain->setHintText( tr( "Vib Gain:" ) + " ", "" ); - - h1->addWidget( m_lipTension ); - h1->addWidget( m_slideLength ); - - h2->addWidget( m_vibratoFrequency ); - h2->addWidget( m_vibratoGain ); - - vl->addLayout( h1 ); - vl->addLayout( h2 ); - - setAutoFillBackground( TRUE ); - QPalette pal; - pal.setBrush( backgroundRole(), PLUGIN_NAME::getIconPixmap( "artwork" ) ); - setPalette( pal ); -} - - - - -brassInstrumentView::~brassInstrumentView() -{ -} - - - - -void brassInstrumentView::modelChanged( void ) -{ - stkInstrumentView::modelChanged(); - - brassInstrument * inst = castModel(); - m_lipTension->setModel( inst->model()->lipTension() ); - m_slideLength->setModel( inst->model()->slideLength() ); - m_vibratoFrequency->setModel( inst->model()->vibratoFrequency() ); - m_vibratoGain->setModel( inst->model()->vibratoGain() ); -} - - - diff --git a/plugins/stk/voices/brass/brass_instrument_view.h b/plugins/stk/voices/brass/brass_instrument_view.h deleted file mode 100644 index e06e5ae9d..000000000 --- a/plugins/stk/voices/brass/brass_instrument_view.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _BRASS_INSTRUMENT_VIEW_H -#define _BRASS_INSTRUMENT_VIEW_H - -#include "knob.h" - -#include "stk_instrument_view.h" -#include "brass_instrument.h" - - -class brassInstrumentView: public stkInstrumentView -{ -public: - brassInstrumentView( brassInstrument * _instrument, QWidget * _parent ); - virtual ~brassInstrumentView( void ); - -private: - virtual void modelChanged( void ); - - knob * m_lipTension; - knob * m_slideLength; - knob * m_vibratoFrequency; - knob * m_vibratoGain; -}; - -#endif diff --git a/plugins/stk/voices/brass/brass_model.cpp b/plugins/stk/voices/brass/brass_model.cpp deleted file mode 100644 index d5ba16a76..000000000 --- a/plugins/stk/voices/brass/brass_model.cpp +++ /dev/null @@ -1,83 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "brass_model.h" - - -brassModel::brassModel( bool _monophonic, - StkFloat _portamento, - StkFloat _bend, - StkFloat _bend_range, - bool _velocity_sensitive_lpf, - StkFloat _velocity_sensitive_q, - StkFloat _volume, - StkFloat _pan, - StkFloat _spread, - StkFloat _lip_tension, - StkFloat _slide_length, - StkFloat _vibrato_frequency, - StkFloat _vibrato_gain ): - stkModel( _monophonic, _portamento, _bend, _bend_range, _velocity_sensitive_lpf, _velocity_sensitive_q, _volume, _pan, _spread ), - m_lipTension( new floatModel( _lip_tension, 0.0f, 128.0f, 0.1f, this ) ), - m_slideLength( new floatModel( _slide_length, 0.0f, 128.0f, 0.1f, this ) ), - m_vibratoFrequency( new floatModel( _vibrato_frequency, 0.0f, 128.0f, 0.1f, this ) ), - m_vibratoGain( new floatModel( _vibrato_gain, 0.0f, 128.0f, 0.1f, this ) ) -{ -} - - - - -brassModel::~brassModel() -{ - delete m_lipTension; - delete m_slideLength; - delete m_vibratoFrequency; - delete m_vibratoGain; -} - - - - -void brassModel::saveSettings( QDomDocument & _doc, QDomElement & _parent ) -{ - stkModel::saveSettings( _doc, _parent ); - m_lipTension->saveSettings( _doc, _parent, "liptension" ); - m_slideLength->saveSettings( _doc, _parent, "slidelength" ); - m_vibratoFrequency->saveSettings( _doc, _parent, "vibratofrequency" ); - m_vibratoGain->saveSettings( _doc, _parent, "vibratogain" ); -} - - - - -void brassModel::loadSettings( const QDomElement & _this ) -{ - stkModel::loadSettings( _this ); - m_lipTension->loadSettings( _this, "liptension" ); - m_slideLength->loadSettings( _this, "slidelength" ); - m_vibratoFrequency->loadSettings( _this, "vibratofrequency" ); - m_vibratoGain->loadSettings( _this, "vibratogain" ); -} - diff --git a/plugins/stk/voices/brass/brass_model.h b/plugins/stk/voices/brass/brass_model.h deleted file mode 100644 index 9b9bca080..000000000 --- a/plugins/stk/voices/brass/brass_model.h +++ /dev/null @@ -1,79 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _BRASS_MODEL_H -#define _BRASS_MODEL_H - -#include "stk_model.h" - - -class brassModel: public stkModel -{ -public: - brassModel( bool _monophonic = FALSE, - StkFloat _portamento = 0.0f, - StkFloat _bend = 0.0f, - StkFloat _bend_range = 2.0f, - bool _velocity_sensitive_lpf = TRUE, - StkFloat _velocity_sensitive_q = 0.5f, - StkFloat _volume = 1.0f, - StkFloat _pan = 0.0f, - StkFloat _spread = 0.0f, - StkFloat _lip_tension = 64.0f, - StkFloat _slid_position = 64.0f, - StkFloat _vibrato_frequency = 64.0f, - StkFloat _vibrato_gain = 64.0f ); - ~brassModel(); - - inline floatModel * lipTension( void ) const - { - return( m_lipTension ); - } - - inline floatModel * slideLength( void ) const - { - return( m_slideLength ); - } - - inline floatModel * vibratoFrequency( void ) const - { - return( m_vibratoFrequency ); - } - - inline floatModel * vibratoGain( void ) const - { - return( m_vibratoGain ); - } - - void saveSettings( QDomDocument & _doc, QDomElement & _parent ); - - void loadSettings( const QDomElement & _this ); - -private: - floatModel * m_lipTension; - floatModel * m_slideLength; - floatModel * m_vibratoFrequency; - floatModel * m_vibratoGain; -}; - -#endif diff --git a/plugins/stk/voices/brass/brass_processor.cpp b/plugins/stk/voices/brass/brass_processor.cpp deleted file mode 100644 index 11057adfc..000000000 --- a/plugins/stk/voices/brass/brass_processor.cpp +++ /dev/null @@ -1,50 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include "brass_processor.h" -#include "config_mgr.h" - - -brassProcessor::brassProcessor( sample_rate_t _sample_rate ): - stkProcessor( _sample_rate, 20.0f ) -{ -} - - - - -brassProcessor::~brassProcessor() -{ -} - - - - -void brassProcessor::setControls( brassModel * _model ) -{ - voice()->controlChange( 2, _model->lipTension()->value() ); - voice()->controlChange( 4, _model->slideLength()->value() ); - voice()->controlChange( 11, _model->vibratoFrequency()->value() ); - voice()->controlChange( 1, _model->vibratoGain()->value() ); - m_delayRead = m_delayWrite - static_cast( _model->spread()->value() ); -} diff --git a/plugins/stk/voices/brass/brass_processor.h b/plugins/stk/voices/brass/brass_processor.h deleted file mode 100644 index b6c5d2c82..000000000 --- a/plugins/stk/voices/brass/brass_processor.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _BRASS_PROCESSOR_H -#define _BRASS_PROCESSOR_H - -#include "Brass.h" - -#include "stk_processor.h" - -#include "brass_model.h" - -class brassProcessor: public stkProcessor -{ -public: - brassProcessor( sample_rate_t _sample_rate ); - ~brassProcessor( void ); - - void setControls( brassModel * _model ); -}; - -#endif diff --git a/plugins/stk/voices/brass/logo.png b/plugins/stk/voices/brass/logo.png deleted file mode 100644 index 93fcd1746131e93516a5c85394decef1d7df2561..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 659 zcmV;E0&M+>P)BB%v^%K{!OpGvZ5fKp)5fL#?O|eA$Le0=`hnTRw z&NAP2XGBCqM8p+UMnyzKL_|cyXEn``*j+PR>3}$HZJnjhUh$2`EjM4U%iQEaZ~461 zxJr!GENm6e*Pq$3&r@7UEwPH`r!hUf_O>>uVvDczH&-Y?!b>wOBYBlI{ z+N8^CiYH8nclFf;eisX>Bkzfas=+Gpb(LP*#H44doe}Y|>#GCbikqv!M)9TryTnQB z>SET5h(lg>pJg>GmpbD&bF0BlvB|JFYGuvFo%Wa%5i#Nwi|Zn85r=CQM#QK%=IZ)u z78$bHN5(`Px4PPROuSPKmWVMcoe~dJXL_wMEcR6!+r`FeFeG+Wc~tyrMg1L?i<8yH z0dadZ*eaf@Dc%;}8K}><6$h(@LGe>H=yTc`12xSx z#>7+A%4YXe8w(v4PgV=}iw~>8D)Cj#aJNYlZmSC%5MO%4b>`?dXoH`{uzA(OOX7uU zuu;5GEo>5_7T0;kMMOkI#6e4|ja}m2YOqs0TrIF$>@%m%af1zZ7&d0Y2}itdolEK> tj*4rm!H5{FHWvCpY^$!WuCD)&KLEu%@0qNKIFkSX002ovPDHLkV1i3NG93T_ diff --git a/plugins/stk/voices/clarinet/Makefile.am b/plugins/stk/voices/clarinet/Makefile.am deleted file mode 100644 index f84457b67..000000000 --- a/plugins/stk/voices/clarinet/Makefile.am +++ /dev/null @@ -1,46 +0,0 @@ -AUTOMAKE_OPTIONS = foreign 1.4 - - -INCLUDES = -I@stk_includes@ -I$(top_srcdir)/include -I$(top_srcdir)/src/lib -I. -I$(top_srcdir)/plugins/stk/voices/include - - -AM_CXXFLAGS := $(AM_CXXFLAGS) $(QT_CXXFLAGS) -DPLUGIN_NAME="clarinet" - - -%.moc: ./%.h - $(MOC) -o $@ $< - - -MOC_FILES = ./clarinet_model.moc - -BUILT_SOURCES = $(MOC_FILES) ./embedded_resources.h -EMBEDDED_RESOURCES = $(wildcard *png) - -./embedded_resources.h: $(EMBEDDED_RESOURCES) - $(BIN2RES) $(EMBEDDED_RESOURCES) > $@ - -EXTRA_DIST = $(EMBEDDED_RESOURCES) - - -CLEANFILES = $(MOC_FILES) ./embedded_resources.h - - - -pkglib_LTLIBRARIES = libclarinet.la - -libclarinet_la_SOURCES = clarinet_model.cpp \ - clarinet_model.h \ - clarinet_processor.cpp \ - clarinet_processor.h \ - clarinet_instrument.cpp \ - clarinet_instrument.h \ - clarinet_instrument_view.cpp \ - clarinet_instrument_view.h \ - $(top_srcdir)/plugins/stk/voices/src/stk_model.cpp \ - stk_model.h - - - -libclarinet_la_LDFLAGS = -L@stk_lib@ -lstk -Wl,-export-dynamic - -$(libclarinet_la_SOURCES): ./embedded_resources.h diff --git a/plugins/stk/voices/clarinet/artwork.png b/plugins/stk/voices/clarinet/artwork.png deleted file mode 100644 index f7c72c65f9db66b627cabff85da6e27c4965faa4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 64618 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%0De*_gX#^x=Fg`i^<-wJr5~;mrn@s&I&(*Ex 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 O0000 - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "engine.h" -#include "note_play_handle.h" - -#include "clarinet_instrument.h" -#include "clarinet_instrument_view.h" -#include "clarinet_processor.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embedded_resources.h" - - -extern "C" -{ - -plugin::descriptor clarinet_plugin_descriptor = -{ - STRINGIFY_PLUGIN_NAME( PLUGIN_NAME ), - "Clarinet", - QT_TRANSLATE_NOOP( "pluginBrowser", - "Clarinet noises" ), - "Danny McRae ", - 0x0100, - plugin::Instrument, - new pluginPixmapLoader( "logo" ), - NULL -} ; - -} - - -clarinetInstrument::clarinetInstrument( instrumentTrack * _channel_track ): - stkInstrument( _channel_track, &clarinet_plugin_descriptor ) -{ - model()->reedStiffness()->setTrack( _channel_track ); - model()->noiseGain()->setTrack( _channel_track ); - model()->vibratoFrequency()->setTrack( _channel_track ); - model()->vibratoGain()->setTrack( _channel_track ); - model()->breathPressure()->setTrack( _channel_track ); -} - - - - -clarinetInstrument::~clarinetInstrument() -{ -} - - - - -QString clarinetInstrument::nodeName( void ) const -{ - return( clarinet_plugin_descriptor.name ); -} - - - - -pluginView * clarinetInstrument::instantiateView( QWidget * _parent ) -{ - return( new clarinetInstrumentView( this, _parent ) ); -} - - - - -extern "C" -{ - -// neccessary for getting instance out of shared lib -plugin * lmms_plugin_main( model * _model, void * _data ) -{ - return( new clarinetInstrument( static_cast( _data ) ) ); -} - - -} - - diff --git a/plugins/stk/voices/clarinet/clarinet_instrument.h b/plugins/stk/voices/clarinet/clarinet_instrument.h deleted file mode 100644 index 73c4b1a32..000000000 --- a/plugins/stk/voices/clarinet/clarinet_instrument.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _CLARINET_INSTRUMENT_H -#define _CLARINET_INSTRUMENT_H - -#include "stk_instrument.h" - -#include "clarinet_processor.h" -#include "clarinet_model.h" - - -class clarinetInstrument : public stkInstrument -{ -public: - clarinetInstrument( instrumentTrack * _channel_track ); - virtual ~clarinetInstrument( void ); - - QString nodeName( void ) const; - - pluginView * instantiateView( QWidget * _parent ); -}; - -#endif diff --git a/plugins/stk/voices/clarinet/clarinet_instrument_view.cpp b/plugins/stk/voices/clarinet/clarinet_instrument_view.cpp deleted file mode 100644 index 54a4de7e4..000000000 --- a/plugins/stk/voices/clarinet/clarinet_instrument_view.cpp +++ /dev/null @@ -1,110 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include -#include -#include - -#include "clarinet_instrument_view.h" - -#include -#include - -#include "engine.h" -#include "gui_templates.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embed.cpp" - - -clarinetInstrumentView::clarinetInstrumentView( clarinetInstrument * _instrument, QWidget * _parent ) : - stkInstrumentView( _instrument, _parent ) -{ - QVBoxLayout * vl = new QVBoxLayout( m_topView ); - QHBoxLayout * h1 = new QHBoxLayout(); - QHBoxLayout * h2 = new QHBoxLayout(); - QHBoxLayout * h3 = new QHBoxLayout(); - - - m_reedStiffness = new knob( knobSmall_17, m_topView, tr( "Stiffness" ) ); - m_reedStiffness->setLabel( tr( "Reed Stiffness" ) ); - m_reedStiffness->setHintText( tr( "Stiffness:" ) + " ", "" ); - - m_noiseGain = new knob( knobSmall_17, m_topView, tr( "Noise" ) ); - m_noiseGain->setLabel( tr( "Noise Gain" ) ); - m_noiseGain->setHintText( tr( "Noise:" ) + " ", "" ); - - m_vibratoFrequency = new knob( knobSmall_17, m_topView, tr( "Vib Freq" ) ); - m_vibratoFrequency->setLabel( tr( "Vibrato Frequency" ) ); - m_vibratoFrequency->setHintText( tr( "Tone Hole:" ) + " ", "" ); - - m_vibratoGain = new knob( knobSmall_17, m_topView, tr( "vib Gain" ) ); - m_vibratoGain->setLabel( tr( "Vibrato Gain" ) ); - m_vibratoGain->setHintText( tr( "Vib Gain:" ) + " ", "" ); - - m_breathPressure = new knob( knobSmall_17, m_topView, tr( "Breath Pres" ) ); - m_breathPressure->setLabel( tr( "Breath Pressure" ) ); - m_breathPressure->setHintText( tr( "Pressure:" ) + " ", "" ); - - h1->addWidget( m_reedStiffness ); - h1->addWidget( m_noiseGain ); - - h2->addWidget( m_vibratoFrequency ); - h2->addWidget( m_vibratoGain ); - - h3->addWidget( m_breathPressure ); - - vl->addLayout( h1 ); - vl->addLayout( h2 ); - vl->addLayout( h3 ); - - setAutoFillBackground( TRUE ); - QPalette pal; - pal.setBrush( backgroundRole(), PLUGIN_NAME::getIconPixmap( "artwork" ) ); - setPalette( pal ); -} - - - - -clarinetInstrumentView::~clarinetInstrumentView() -{ -} - - - - -void clarinetInstrumentView::modelChanged( void ) -{ - stkInstrumentView::modelChanged(); - - clarinetInstrument * inst = castModel(); - m_reedStiffness->setModel( inst->model()->reedStiffness() ); - m_noiseGain->setModel( inst->model()->noiseGain() ); - m_vibratoFrequency->setModel( inst->model()->vibratoFrequency() ); - m_vibratoGain->setModel( inst->model()->vibratoGain() ); - m_breathPressure->setModel( inst->model()->breathPressure() ); -} - - - diff --git a/plugins/stk/voices/clarinet/clarinet_instrument_view.h b/plugins/stk/voices/clarinet/clarinet_instrument_view.h deleted file mode 100644 index 046b25536..000000000 --- a/plugins/stk/voices/clarinet/clarinet_instrument_view.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _CLARINET_INSTRUMENT_VIEW_H -#define _CLARINET_INSTRUMENT_VIEW_H - -#include "knob.h" - -#include "stk_instrument_view.h" -#include "clarinet_instrument.h" - - -class clarinetInstrumentView: public stkInstrumentView -{ -public: - clarinetInstrumentView( clarinetInstrument * _instrument, QWidget * _parent ); - virtual ~clarinetInstrumentView( void ); - -private: - virtual void modelChanged( void ); - - knob * m_reedStiffness; - knob * m_noiseGain; - knob * m_vibratoFrequency; - knob * m_vibratoGain; - knob * m_breathPressure; -}; - -#endif diff --git a/plugins/stk/voices/clarinet/clarinet_model.cpp b/plugins/stk/voices/clarinet/clarinet_model.cpp deleted file mode 100644 index f50e44fb7..000000000 --- a/plugins/stk/voices/clarinet/clarinet_model.cpp +++ /dev/null @@ -1,88 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "clarinet_model.h" - - -clarinetModel::clarinetModel( bool _monophonic, - StkFloat _portamento, - StkFloat _bend, - StkFloat _bend_range, - bool _velocity_sensitive_lpf, - StkFloat _velocity_sensitive_q, - StkFloat _volume, - StkFloat _pan, - StkFloat _spread, - StkFloat _reed_stiffness, - StkFloat _noise_gain, - StkFloat _vibrato_frequency, - StkFloat _vibrato_gain, - StkFloat _breath_pressure ): - stkModel( _monophonic, _portamento, _bend, _bend_range, _velocity_sensitive_lpf, _velocity_sensitive_q, _volume, _pan, _spread ), - m_reedStiffness( new floatModel( _reed_stiffness, 0.0f, 128.0f, 0.1f, this ) ), - m_noiseGain( new floatModel( _noise_gain, 0.0f, 128.0f, 0.1f, this ) ), - m_vibratoFrequency( new floatModel( _vibrato_frequency, 0.0f, 128.0f, 0.1f, this ) ), - m_vibratoGain( new floatModel( _vibrato_gain, 0.0f, 128.0f, 0.1f, this ) ), - m_breathPressure( new floatModel( _breath_pressure, 0.0f, 128.0f, 0.1f, this ) ) -{ -} - - - - -clarinetModel::~clarinetModel() -{ - delete m_reedStiffness; - delete m_noiseGain; - delete m_vibratoFrequency; - delete m_vibratoGain; - delete m_breathPressure; -} - - - - -void clarinetModel::saveSettings( QDomDocument & _doc, QDomElement & _parent ) -{ - stkModel::saveSettings( _doc, _parent ); - m_reedStiffness->saveSettings( _doc, _parent, "reedstiffness" ); - m_noiseGain->saveSettings( _doc, _parent, "noisegain" ); - m_vibratoFrequency->saveSettings( _doc, _parent, "vibratofrequency" ); - m_vibratoGain->saveSettings( _doc, _parent, "vibratogain" ); - m_breathPressure->saveSettings( _doc, _parent, "breathpressure" ); -} - - - - -void clarinetModel::loadSettings( const QDomElement & _this ) -{ - stkModel::loadSettings( _this ); - m_reedStiffness->loadSettings( _this, "reedstiffness" ); - m_noiseGain->loadSettings( _this, "noisegain" ); - m_vibratoFrequency->loadSettings( _this, "vibratofrequency" ); - m_vibratoGain->loadSettings( _this, "vibratogain" ); - m_breathPressure->loadSettings( _this, "breathpressure" ); -} - diff --git a/plugins/stk/voices/clarinet/clarinet_model.h b/plugins/stk/voices/clarinet/clarinet_model.h deleted file mode 100644 index a8698208a..000000000 --- a/plugins/stk/voices/clarinet/clarinet_model.h +++ /dev/null @@ -1,86 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _CLARINET_MODEL_H -#define _CLARINET_MODEL_H - -#include "stk_model.h" - - -class clarinetModel: public stkModel -{ -public: - clarinetModel( bool _monophonic = FALSE, - StkFloat _portamento = 0.0f, - StkFloat _bend = 0.0f, - StkFloat _bend_range = 2.0f, - bool _velocity_sensitive_lpf = TRUE, - StkFloat _velocity_sensitive_q = 0.5f, - StkFloat _volume = 1.0f, - StkFloat _pan = 0.0f, - StkFloat _spread = 0.0f, - StkFloat _reed_stiffness = 64.0f, - StkFloat _noise_gain = 64.0f, - StkFloat _vibrato_frequency = 64.0f, - StkFloat _vibrato_gain = 64.0f, - StkFloat _breath_pressure = 64.0f ); - ~clarinetModel(); - - inline floatModel * reedStiffness( void ) const - { - return( m_reedStiffness ); - } - - inline floatModel * noiseGain( void ) const - { - return( m_noiseGain ); - } - - inline floatModel * vibratoFrequency( void ) - { - return( m_vibratoFrequency ); - } - - inline floatModel * vibratoGain( void ) const - { - return( m_vibratoGain ); - } - - inline floatModel * breathPressure( void ) const - { - return( m_breathPressure ); - } - - void saveSettings( QDomDocument & _doc, QDomElement & _parent ); - - void loadSettings( const QDomElement & _this ); - -private: - floatModel * m_reedStiffness; - floatModel * m_noiseGain; - floatModel * m_vibratoFrequency; - floatModel * m_vibratoGain; - floatModel * m_breathPressure; -}; - -#endif diff --git a/plugins/stk/voices/clarinet/clarinet_processor.cpp b/plugins/stk/voices/clarinet/clarinet_processor.cpp deleted file mode 100644 index 3151e53ee..000000000 --- a/plugins/stk/voices/clarinet/clarinet_processor.cpp +++ /dev/null @@ -1,51 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include "clarinet_processor.h" -#include "config_mgr.h" - - -clarinetProcessor::clarinetProcessor( sample_rate_t _sample_rate ): - stkProcessor( _sample_rate, 20.0f ) -{ -} - - - - -clarinetProcessor::~clarinetProcessor() -{ -} - - - - -void clarinetProcessor::setControls( clarinetModel * _model ) -{ - voice()->controlChange( 2, _model->reedStiffness()->value() ); - voice()->controlChange( 4, _model->noiseGain()->value() ); - voice()->controlChange( 11, _model->vibratoFrequency()->value() ); - voice()->controlChange( 1, _model->vibratoGain()->value() ); - voice()->controlChange( 128, _model->breathPressure()->value() ); - m_delayRead = m_delayWrite - static_cast( _model->spread()->value() ); -} diff --git a/plugins/stk/voices/clarinet/clarinet_processor.h b/plugins/stk/voices/clarinet/clarinet_processor.h deleted file mode 100644 index 0a65c35ff..000000000 --- a/plugins/stk/voices/clarinet/clarinet_processor.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _CLARINET_PROCESSOR_H -#define _CLARINET_PROCESSOR_H - -#include "Clarinet.h" - -#include "stk_processor.h" - -#include "clarinet_model.h" - -class clarinetProcessor: public stkProcessor -{ -public: - clarinetProcessor( sample_rate_t _sample_rate ); - ~clarinetProcessor( void ); - - void setControls( clarinetModel * _model ); -}; - -#endif diff --git a/plugins/stk/voices/clarinet/logo.png b/plugins/stk/voices/clarinet/logo.png deleted file mode 100644 index 93fcd1746131e93516a5c85394decef1d7df2561..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 659 zcmV;E0&M+>P)BB%v^%K{!OpGvZ5fKp)5fL#?O|eA$Le0=`hnTRw z&NAP2XGBCqM8p+UMnyzKL_|cyXEn``*j+PR>3}$HZJnjhUh$2`EjM4U%iQEaZ~461 zxJr!GENm6e*Pq$3&r@7UEwPH`r!hUf_O>>uVvDczH&-Y?!b>wOBYBlI{ z+N8^CiYH8nclFf;eisX>Bkzfas=+Gpb(LP*#H44doe}Y|>#GCbikqv!M)9TryTnQB z>SET5h(lg>pJg>GmpbD&bF0BlvB|JFYGuvFo%Wa%5i#Nwi|Zn85r=CQM#QK%=IZ)u z78$bHN5(`Px4PPROuSPKmWVMcoe~dJXL_wMEcR6!+r`FeFeG+Wc~tyrMg1L?i<8yH z0dadZ*eaf@Dc%;}8K}><6$h(@LGe>H=yTc`12xSx z#>7+A%4YXe8w(v4PgV=}iw~>8D)Cj#aJNYlZmSC%5MO%4b>`?dXoH`{uzA(OOX7uU zuu;5GEo>5_7T0;kMMOkI#6e4|ja}m2YOqs0TrIF$>@%m%af1zZ7&d0Y2}itdolEK> tj*4rm!H5{FHWvCpY^$!WuCD)&KLEu%@0qNKIFkSX002ovPDHLkV1i3NG93T_ diff --git a/plugins/stk/voices/flute/Makefile.am b/plugins/stk/voices/flute/Makefile.am deleted file mode 100644 index 6fe59d7ab..000000000 --- a/plugins/stk/voices/flute/Makefile.am +++ /dev/null @@ -1,46 +0,0 @@ -AUTOMAKE_OPTIONS = foreign 1.4 - - -INCLUDES = -I@stk_includes@ -I$(top_srcdir)/include -I$(top_srcdir)/src/lib -I. -I$(top_srcdir)/plugins/stk/voices/include - - -AM_CXXFLAGS := $(AM_CXXFLAGS) $(QT_CXXFLAGS) -DPLUGIN_NAME="flute" - - -%.moc: ./%.h - $(MOC) -o $@ $< - - -MOC_FILES = ./flute_model.moc - -BUILT_SOURCES = $(MOC_FILES) ./embedded_resources.h -EMBEDDED_RESOURCES = $(wildcard *png) - -./embedded_resources.h: $(EMBEDDED_RESOURCES) - $(BIN2RES) $(EMBEDDED_RESOURCES) > $@ - -EXTRA_DIST = $(EMBEDDED_RESOURCES) - - -CLEANFILES = $(MOC_FILES) ./embedded_resources.h - - - -pkglib_LTLIBRARIES = libflute.la - -libflute_la_SOURCES = flute_model.cpp \ - flute_model.h \ - flute_processor.cpp \ - flute_processor.h \ - flute_instrument.cpp \ - flute_instrument.h \ - flute_instrument_view.cpp \ - flute_instrument_view.h \ - $(top_srcdir)/plugins/stk/voices/src/stk_model.cpp \ - stk_model.h - - - -libflute_la_LDFLAGS = -L@stk_lib@ -lstk -Wl,-export-dynamic - -$(libflute_la_SOURCES): ./embedded_resources.h diff --git a/plugins/stk/voices/flute/artwork.png b/plugins/stk/voices/flute/artwork.png deleted file mode 100644 index d54a42f4be7c686e81b116e41d76707c17ce3a42..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 64192 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 - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "engine.h" -#include "note_play_handle.h" - -#include "flute_instrument.h" -#include "flute_instrument_view.h" -#include "flute_processor.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embedded_resources.h" - - -extern "C" -{ - -plugin::descriptor flute_plugin_descriptor = -{ - STRINGIFY_PLUGIN_NAME( PLUGIN_NAME ), - "Flute", - QT_TRANSLATE_NOOP( "pluginBrowser", - "Flute noises" ), - "Danny McRae ", - 0x0100, - plugin::Instrument, - new pluginPixmapLoader( "logo" ), - NULL -} ; - -} - - -fluteInstrument::fluteInstrument( instrumentTrack * _channel_track ): - stkInstrument( _channel_track, &flute_plugin_descriptor ) -{ - model()->jetDelay()->setTrack( _channel_track ); - model()->noiseGain()->setTrack( _channel_track ); - model()->vibratoFrequency()->setTrack( _channel_track ); - model()->vibratoGain()->setTrack( _channel_track ); - model()->breathPressure()->setTrack( _channel_track ); -} - - - - -fluteInstrument::~fluteInstrument() -{ -} - - - - -QString fluteInstrument::nodeName( void ) const -{ - return( flute_plugin_descriptor.name ); -} - - - - -pluginView * fluteInstrument::instantiateView( QWidget * _parent ) -{ - return( new fluteInstrumentView( this, _parent ) ); -} - - - - -extern "C" -{ - -// neccessary for getting instance out of shared lib -plugin * lmms_plugin_main( model * _model, void * _data ) -{ - return( new fluteInstrument( static_cast( _data ) ) ); -} - - -} - - diff --git a/plugins/stk/voices/flute/flute_instrument.h b/plugins/stk/voices/flute/flute_instrument.h deleted file mode 100644 index 3715d811f..000000000 --- a/plugins/stk/voices/flute/flute_instrument.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _FLUTE_INSTRUMENT_H -#define _FLUTE_INSTRUMENT_H - -#include "stk_instrument.h" - -#include "flute_processor.h" -#include "flute_model.h" - - -class fluteInstrument : public stkInstrument -{ -public: - fluteInstrument( instrumentTrack * _channel_track ); - virtual ~fluteInstrument( void ); - - QString nodeName( void ) const; - - pluginView * instantiateView( QWidget * _parent ); -}; - -#endif diff --git a/plugins/stk/voices/flute/flute_instrument_view.cpp b/plugins/stk/voices/flute/flute_instrument_view.cpp deleted file mode 100644 index c91e2ba6e..000000000 --- a/plugins/stk/voices/flute/flute_instrument_view.cpp +++ /dev/null @@ -1,110 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include -#include -#include - -#include "flute_instrument_view.h" - -#include -#include - -#include "engine.h" -#include "gui_templates.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embed.cpp" - - -fluteInstrumentView::fluteInstrumentView( fluteInstrument * _instrument, QWidget * _parent ) : - stkInstrumentView( _instrument, _parent ) -{ - QVBoxLayout * vl = new QVBoxLayout( m_topView ); - QHBoxLayout * h1 = new QHBoxLayout(); - QHBoxLayout * h2 = new QHBoxLayout(); - QHBoxLayout * h3 = new QHBoxLayout(); - - - m_jetDelay = new knob( knobSmall_17, m_topView, tr( "Jet Delay" ) ); - m_jetDelay->setLabel( tr( "Jet Delay" ) ); - m_jetDelay->setHintText( tr( "Delay:" ) + " ", "" ); - - m_noiseGain = new knob( knobSmall_17, m_topView, tr( "Noise" ) ); - m_noiseGain->setLabel( tr( "Noise Gain" ) ); - m_noiseGain->setHintText( tr( "Noise:" ) + " ", "" ); - - m_vibratoFrequency = new knob( knobSmall_17, m_topView, tr( "Vib Freq" ) ); - m_vibratoFrequency->setLabel( tr( "Vibrato Frequency" ) ); - m_vibratoFrequency->setHintText( tr( "Tone Hole:" ) + " ", "" ); - - m_vibratoGain = new knob( knobSmall_17, m_topView, tr( "vib Gain" ) ); - m_vibratoGain->setLabel( tr( "Vibrato Gain" ) ); - m_vibratoGain->setHintText( tr( "Vib Gain:" ) + " ", "" ); - - m_breathPressure = new knob( knobSmall_17, m_topView, tr( "Breath Pres" ) ); - m_breathPressure->setLabel( tr( "Breath Pressure" ) ); - m_breathPressure->setHintText( tr( "Pressure:" ) + " ", "" ); - - h1->addWidget( m_jetDelay ); - h1->addWidget( m_noiseGain ); - - h2->addWidget( m_vibratoFrequency ); - h2->addWidget( m_vibratoGain ); - - h3->addWidget( m_breathPressure ); - - vl->addLayout( h1 ); - vl->addLayout( h2 ); - vl->addLayout( h3 ); - - setAutoFillBackground( TRUE ); - QPalette pal; - pal.setBrush( backgroundRole(), PLUGIN_NAME::getIconPixmap( "artwork" ) ); - setPalette( pal ); -} - - - - -fluteInstrumentView::~fluteInstrumentView() -{ -} - - - - -void fluteInstrumentView::modelChanged( void ) -{ - stkInstrumentView::modelChanged(); - - fluteInstrument * inst = castModel(); - m_jetDelay->setModel( inst->model()->jetDelay() ); - m_noiseGain->setModel( inst->model()->noiseGain() ); - m_vibratoFrequency->setModel( inst->model()->vibratoFrequency() ); - m_vibratoGain->setModel( inst->model()->vibratoGain() ); - m_breathPressure->setModel( inst->model()->breathPressure() ); -} - - - diff --git a/plugins/stk/voices/flute/flute_instrument_view.h b/plugins/stk/voices/flute/flute_instrument_view.h deleted file mode 100644 index 88349df40..000000000 --- a/plugins/stk/voices/flute/flute_instrument_view.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _FLUTE_INSTRUMENT_VIEW_H -#define _FLUTE_INSTRUMENT_VIEW_H - -#include "knob.h" - -#include "stk_instrument_view.h" -#include "flute_instrument.h" - - -class fluteInstrumentView: public stkInstrumentView -{ -public: - fluteInstrumentView( fluteInstrument * _instrument, QWidget * _parent ); - virtual ~fluteInstrumentView( void ); - -private: - virtual void modelChanged( void ); - - knob * m_jetDelay; - knob * m_noiseGain; - knob * m_vibratoFrequency; - knob * m_vibratoGain; - knob * m_breathPressure; -}; - -#endif diff --git a/plugins/stk/voices/flute/flute_model.cpp b/plugins/stk/voices/flute/flute_model.cpp deleted file mode 100644 index 40cca4722..000000000 --- a/plugins/stk/voices/flute/flute_model.cpp +++ /dev/null @@ -1,88 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "flute_model.h" - - -fluteModel::fluteModel( bool _monophonic, - StkFloat _portamento, - StkFloat _bend, - StkFloat _bend_range, - bool _velocity_sensitive_lpf, - StkFloat _velocity_sensitive_q, - StkFloat _volume, - StkFloat _pan, - StkFloat _spread, - StkFloat _jet_delay, - StkFloat _noise_gain, - StkFloat _vibrato_frequency, - StkFloat _vibrato_gain, - StkFloat _breath_pressure ): - stkModel( _monophonic, _portamento, _bend, _bend_range, _velocity_sensitive_lpf, _velocity_sensitive_q, _volume, _pan, _spread ), - m_jetDelay( new floatModel( _jet_delay, 0.0f, 128.0f, 0.1f, this ) ), - m_noiseGain( new floatModel( _noise_gain, 0.0f, 128.0f, 0.1f, this ) ), - m_vibratoFrequency( new floatModel( _vibrato_frequency, 0.0f, 128.0f, 0.1f, this ) ), - m_vibratoGain( new floatModel( _vibrato_gain, 0.0f, 128.0f, 0.1f, this ) ), - m_breathPressure( new floatModel( _breath_pressure, 0.0f, 128.0f, 0.1f, this ) ) -{ -} - - - - -fluteModel::~fluteModel() -{ - delete m_jetDelay; - delete m_noiseGain; - delete m_vibratoFrequency; - delete m_vibratoGain; - delete m_breathPressure; -} - - - - -void fluteModel::saveSettings( QDomDocument & _doc, QDomElement & _parent ) -{ - stkModel::saveSettings( _doc, _parent ); - m_jetDelay->saveSettings( _doc, _parent, "reedstiffness" ); - m_noiseGain->saveSettings( _doc, _parent, "noisegain" ); - m_vibratoFrequency->saveSettings( _doc, _parent, "vibratofrequency" ); - m_vibratoGain->saveSettings( _doc, _parent, "vibratogain" ); - m_breathPressure->saveSettings( _doc, _parent, "breathpressure" ); -} - - - - -void fluteModel::loadSettings( const QDomElement & _this ) -{ - stkModel::loadSettings( _this ); - m_jetDelay->loadSettings( _this, "reedstiffness" ); - m_noiseGain->loadSettings( _this, "noisegain" ); - m_vibratoFrequency->loadSettings( _this, "vibratofrequency" ); - m_vibratoGain->loadSettings( _this, "vibratogain" ); - m_breathPressure->loadSettings( _this, "breathpressure" ); -} - diff --git a/plugins/stk/voices/flute/flute_model.h b/plugins/stk/voices/flute/flute_model.h deleted file mode 100644 index 810950571..000000000 --- a/plugins/stk/voices/flute/flute_model.h +++ /dev/null @@ -1,86 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _FLUTE_MODEL_H -#define _FLUTE_MODEL_H - -#include "stk_model.h" - - -class fluteModel: public stkModel -{ -public: - fluteModel( bool _monophonic = FALSE, - StkFloat _portamento = 0.0f, - StkFloat _bend = 0.0f, - StkFloat _bend_range = 2.0f, - bool _velocity_sensitive_lpf = TRUE, - StkFloat _velocity_sensitive_q = 0.5f, - StkFloat _volume = 1.0f, - StkFloat _pan = 0.0f, - StkFloat _spread = 0.0f, - StkFloat _jet_delay = 64.0f, - StkFloat _noise_gain = 64.0f, - StkFloat _vibrato_frequency = 64.0f, - StkFloat _vibrato_gain = 64.0f, - StkFloat _breath_pressure = 64.0f ); - ~fluteModel(); - - inline floatModel * jetDelay( void ) const - { - return( m_jetDelay ); - } - - inline floatModel * noiseGain( void ) const - { - return( m_noiseGain ); - } - - inline floatModel * vibratoFrequency( void ) - { - return( m_vibratoFrequency ); - } - - inline floatModel * vibratoGain( void ) const - { - return( m_vibratoGain ); - } - - inline floatModel * breathPressure( void ) const - { - return( m_breathPressure ); - } - - void saveSettings( QDomDocument & _doc, QDomElement & _parent ); - - void loadSettings( const QDomElement & _this ); - -private: - floatModel * m_jetDelay; - floatModel * m_noiseGain; - floatModel * m_vibratoFrequency; - floatModel * m_vibratoGain; - floatModel * m_breathPressure; -}; - -#endif diff --git a/plugins/stk/voices/flute/flute_processor.cpp b/plugins/stk/voices/flute/flute_processor.cpp deleted file mode 100644 index 5fb36bcf5..000000000 --- a/plugins/stk/voices/flute/flute_processor.cpp +++ /dev/null @@ -1,51 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include "flute_processor.h" -#include "config_mgr.h" - - -fluteProcessor::fluteProcessor( sample_rate_t _sample_rate ): - stkProcessor( _sample_rate, 20.0f ) -{ -} - - - - -fluteProcessor::~fluteProcessor() -{ -} - - - - -void fluteProcessor::setControls( fluteModel * _model ) -{ - voice()->controlChange( 2, _model->jetDelay()->value() ); - voice()->controlChange( 4, _model->noiseGain()->value() ); - voice()->controlChange( 11, _model->vibratoFrequency()->value() ); - voice()->controlChange( 1, _model->vibratoGain()->value() ); - voice()->controlChange( 128, _model->breathPressure()->value() ); - m_delayRead = m_delayWrite - static_cast( _model->spread()->value() ); -} diff --git a/plugins/stk/voices/flute/flute_processor.h b/plugins/stk/voices/flute/flute_processor.h deleted file mode 100644 index b5bcf7266..000000000 --- a/plugins/stk/voices/flute/flute_processor.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _FLUTE_PROCESSOR_H -#define _FLUTE_PROCESSOR_H - -#include "Flute.h" - -#include "stk_processor.h" - -#include "flute_model.h" - -class fluteProcessor: public stkProcessor -{ -public: - fluteProcessor( sample_rate_t _sample_rate ); - ~fluteProcessor( void ); - - void setControls( fluteModel * _model ); -}; - -#endif diff --git a/plugins/stk/voices/flute/logo.png b/plugins/stk/voices/flute/logo.png deleted file mode 100644 index 93fcd1746131e93516a5c85394decef1d7df2561..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 659 zcmV;E0&M+>P)BB%v^%K{!OpGvZ5fKp)5fL#?O|eA$Le0=`hnTRw z&NAP2XGBCqM8p+UMnyzKL_|cyXEn``*j+PR>3}$HZJnjhUh$2`EjM4U%iQEaZ~461 zxJr!GENm6e*Pq$3&r@7UEwPH`r!hUf_O>>uVvDczH&-Y?!b>wOBYBlI{ z+N8^CiYH8nclFf;eisX>Bkzfas=+Gpb(LP*#H44doe}Y|>#GCbikqv!M)9TryTnQB z>SET5h(lg>pJg>GmpbD&bF0BlvB|JFYGuvFo%Wa%5i#Nwi|Zn85r=CQM#QK%=IZ)u z78$bHN5(`Px4PPROuSPKmWVMcoe~dJXL_wMEcR6!+r`FeFeG+Wc~tyrMg1L?i<8yH z0dadZ*eaf@Dc%;}8K}><6$h(@LGe>H=yTc`12xSx z#>7+A%4YXe8w(v4PgV=}iw~>8D)Cj#aJNYlZmSC%5MO%4b>`?dXoH`{uzA(OOX7uU zuu;5GEo>5_7T0;kMMOkI#6e4|ja}m2YOqs0TrIF$>@%m%af1zZ7&d0Y2}itdolEK> tj*4rm!H5{FHWvCpY^$!WuCD)&KLEu%@0qNKIFkSX002ovPDHLkV1i3NG93T_ diff --git a/plugins/stk/voices/fmvoices/Makefile.am b/plugins/stk/voices/fmvoices/Makefile.am deleted file mode 100644 index d6c5e130a..000000000 --- a/plugins/stk/voices/fmvoices/Makefile.am +++ /dev/null @@ -1,46 +0,0 @@ -AUTOMAKE_OPTIONS = foreign 1.4 - - -INCLUDES = -I@stk_includes@ -I$(top_srcdir)/include -I$(top_srcdir)/src/lib -I. -I$(top_srcdir)/plugins/stk/voices/include - - -AM_CXXFLAGS := $(AM_CXXFLAGS) $(QT_CXXFLAGS) -DPLUGIN_NAME="fmvoices" - - -%.moc: ./%.h - $(MOC) -o $@ $< - - -MOC_FILES = ./fmvoices_model.moc - -BUILT_SOURCES = $(MOC_FILES) ./embedded_resources.h -EMBEDDED_RESOURCES = $(wildcard *png) - -./embedded_resources.h: $(EMBEDDED_RESOURCES) - $(BIN2RES) $(EMBEDDED_RESOURCES) > $@ - -EXTRA_DIST = $(EMBEDDED_RESOURCES) - - -CLEANFILES = $(MOC_FILES) ./embedded_resources.h - - - -pkglib_LTLIBRARIES = libfmvoices.la - -libfmvoices_la_SOURCES = fmvoices_model.cpp \ - fmvoices_model.h \ - fmvoices_processor.cpp \ - fmvoices_processor.h \ - fmvoices_instrument.cpp \ - fmvoices_instrument.h \ - fmvoices_instrument_view.cpp \ - fmvoices_instrument_view.h \ - $(top_srcdir)/plugins/stk/voices/src/stk_model.cpp \ - stk_model.h - - - -libfmvoices_la_LDFLAGS = -L@stk_lib@ -lstk -Wl,-export-dynamic - -$(libfmvoices_la_SOURCES): ./embedded_resources.h diff --git a/plugins/stk/voices/fmvoices/artwork.png b/plugins/stk/voices/fmvoices/artwork.png deleted file mode 100644 index a316fb4bb1635b8d7c9c8731829690f54a52c27c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 64699 zcmV*iKuy1iP)W1(`k<{{8*vJL%Z##%6XP7Zbo_`D>pI%5 zolR}!di|a~zqzeM!`Hl?7kQx#V9&8>^c3*W$K$aUj7QFN*EnX~)SW%64l9=Nd39Nb zYt~;IE`!|#pN=kr=iG}E>E87l$-15Zeh)F#qt|nnxNA|heo__^dL0cvN{I1KuUBRK zq2UgcNcE~}GMSi6a7SsSbicO1WrbzJg?1G5xG+hl_Sk4Rs(55=dr6zFQv!s`*1nSH zIEHQ$iUraq>C`ja8ISGr{0>fP z&rsWjSEhX;iN!CV&ZHxDZ?kJppE_-~*{k>r8r@yRquXNRJat+FJ0}07Om{e^ZT;a8 zf6sDk)7q|tcRQWU=lEYehaBL)^XJdwleQAj99TRsIF>B2JRWhk($Kg(G$maMx!Af+;l$Gd2!o(vN#f~({wx;X*HX!H;yBtr6<=CxEj)h2ZVW|;i_z*zx$>!Y1?3F#E-A;y zWUKYUxibCW$d1$5Fx6gGW+Etvc(3O}ML-eciqgl>2EcdS z%QD*t(c$X2??G(}=?N8!OQO}rMzW2%v9Ynaxd{=+zmW1%r%s(acMfml4=k>N_E@Zl zwnr$wr@X@H)k$@m5^=wm^fA9LZkyfTq!YzK@}yh8chqcv4i03jG^mY{ncd)6V*$hu# zc2n2XxCw``#x?Ca1N3&fIhEz2vn5wj|Msx`8u!~=Z)LfHiVjEQFQq?ZwseG~U2-{T zdvGHCQhG)90n%463bH4F$HmX<0_wTP4|t1bhTq8Hk;-3m%JrOQ(`iZD1kbwdTrD?r zPRzy>xmFs--rCwaefsptlP4d1@WCgZcmfiS--HloLoUkqeSmwvt;OFgEiLWiYh`uy@S#H;9kxo25g&go6<%oLaPP>w4dL$h z`ty7qW=OkPK}m!Qv7At!P>K*2ERrm{1ju8Qs?_xrG#3ab;qWvTMcBr`d%5^fuI4V| z^F;v{t>bPiQ}~DvVzE2(k#gOk!fRd?uA!F8ap1s#y*bfvFqEXirIz&wdmZboohFAN zg|GXO5~yzUzD|+8pMu9Cn|JGoFxoG z$WO!}5Rdr1t~r_9Cgfz-QQ?15WKWUxc;QYjzx?tWZn)v%i!a84o;`ck3?^<~mnC7H zGYp65bG^-@#Uq0Se8)T9@$DN959l|4^Ecu9ZfkXtV@5!Oqc1=SludLuFZ?9&>CYsBj4SH@@+WyYIgHvBw_M8S$L4)sGxG za`^D!eXFa(k-Z@6Fuc$`Jqo>oic+V5x0bspUd+*HGnmZ5ZX;$eHL>g2Ljb7DDoHag ztVwzh7Z6^)4hV^2)X*x1VfqUu5n*?4HlHQs(mW^%3#=TaVnGGd+JyKQDhW&QwXb~*;ts#X?9XU)^w=?|o}+xhrbD%3|MVFA zAq14Mb(ervU7JnOxrN0_KJa36?->J1GfE2f=(|etU?Cxe_&kmrZU+7e5zt}fyW$Wv z--LD#fwm*_n7XitxuuJBkoY`)j5Mh3LMfw2jN)HtbSQXBI`K&&PKCX#q=c|JbU`wv zk#&}ygK@;yp8x#kzy9^F*ZHIX@CIQJE)*h;_uuz@-}j|2eF+D>@4ovGAK)C&Hy{1z zNAag;KJ%G(-E|ktN>W`GjLQWI%N|+Vh!D~y#_G;vkLr?i0g_q;74cW-UCSZjMof{k zI?mpl2%o`DroOb@VrnQoLt8~0pP!dji*koTPb`vGKeF6BEB?}45L~Si#7R0~fv2_; z8Yy=um;3L(|BGMzBAj*Qn=iWPB4{G~dw{Q%<>lj0bjOcF;&l*)>@$TN_+?Z8bOGA= zdLMNXX$oxYBy-rtm0TS;7>Z|fr`iU%62)&_qrk^9EwMv%B@vmxu;4#DJri-P5%a1o zbL0xgqgE5CPg}&g?GO99k%ArvBQ{USPU}f;^As}bZo&CyJz5*=+3x?xhfv&phD)_9&(+h6Qp+kr8d#E~X zm7Vc;Iv!(#S`xy_5tfvd#4t3^5P_In){QA_ZpU~Ct1GLn1v0N%q^KPtNG*@P%!@4>p3{H4Mny!P+khuvXo(KUnKpv_wBpU6O9 z2dcogva$>ned>uP@F-w8aqrmblkp^10*4vGDiRb*=!R~KoB$rZoEg}}8CE)(FuPW> zs?b-pwENK`N9RwQL)@Xrq4mG?#V_Iw%;+t*-14D6`;a2MGiOdm78zpK>-UuZksv~A z;WwUs?q|)!PJ~05Ym23-=W>oS<$zPliMN33as$dtT!&{TMGi0biN~MVn-fK;j*qmG zBa4%U`3}b*ayv59kPOL3*KH~0Q&>J%O_78pOmb-D7& zD=)w7^20|CL%3nhCGL<0IGNBykUUx^nC>Pr>sd-jMEqtJZ)^#)+BS9;nqGpg%3~z9 zRh@+%RuqIEaiT00ZB*g11aH@1)2i?!$!4J!g6_K=_l|9jgVCwBi-O2135Gw(`q{mg zW>U(2X__A!GAp3VGU~F^r_O9`Z+-d8UxuN(@~W#|^5PfcIJPrtiZ{1MC9?vP$$j8y zV^~WMqM1^JPl8{*?|tuEblmYMfBBbxx#U-#c;X5CMk)kv;7UIF$fN)J6Q98QH^2GK zu&SreoR+tP54aghaeDY0UaMycBK}6pXc_2KXEurIQX)zR5kNq4rX_(^jrt`%bNvn1 z@6CynRB?Aa%Uh^tSpTk-yQ%C3pQ^d@Jv!xDQF$x@ z(s)oX>0yL*{rannfbw;g+N*l_%W!GLa;RtPA z+Z&80{P>mqM?bC#=!fdZc)z@|Y?`8lCF~U5$lHOJ17@|7%_N`2}SN<_Lh4F7@N zt(*#hI3&0@8GKO4I`lfiDts7{{q(0l9X<^F7Kr|3mtBU{IdbF(zJ=wp!~n$?QLJ=4 zej{I2j|Gwz5xIvMWl9sn)2X~D5xSO|8_z+drDnccKxpD1fmzT-!gDDSOaNCHD26~@ zz_U_%6vx-bv)or%D8|5FP4xS{#ez>nn-;cq-Nxp|efQlDM+4p(UiczJ4vUEQ2q0wH zs+H9hDikx*^w-VzQjDz1|H%hWO1R(p*0<_{xMsDgMK}sPb$kFST;*o;6lNra(J{NsmSdhK86PJajBw zH=e))k+OvTu$rYUnr&TG)b{2?%%HWbDCdKroeO`G@2Kp!CA(Nr!kcI9( zFx%s?YOB&sRtPUmE}?*+?Cl0_?9rJ%W!v_V{DU$2;t)D1DaY@OzcI)J?=`i_7GE2rQ{Rnl+eXr zRfCk>7b=5~xUb!)^tQ_ECT+s)?8%7?S&$Sw@fQU=Z-EM>m{m6oO&Jw$Ij{J=G6y)9 zmMU;NOeaI6EUSjkKla$8U;FykVMSq7;lL~}Ew$9USWP%E_&iok(hSoIy}kk8eP>7K zf>$rUC}Vl?;DP-zN>e8I=fZN~%4vt?r*#QVW8ovBPa+yTlq5h>HW2USt;uwllMFeb zAjvZ^5vS|$B*jcEi9f;b)045-$+jR|^ntWEj$EZWgK%T2vQ`OeX;r_r!G+D;T({62 z8ymUO{7`3)J^uLl_4Cz(4?Y+H1DRaZ2Kj#ZalDOWCW;YX=Uvlk*_;7FVTx)$)sV$_WNO zS$kJ*fUalJw}v9YCvh=*b0Vx+$%1sCi19DMDk6ah zHUjL5X9x*CbLK4KB^&|54X^#O%P)rydGyGU%dfB(b|nlE4s!PFS%kA&n_J__IPfjJ z4+pxG)H*#m%}h)wJ*7N^BuUPLa1dDgfuc;7E#Z8#L|w~zMOHT#l!Xywq~P2|feTj+ z^!%lL^q};pcep3<+dL(*B5jW+4-3p(f?c%46$gRElcHfQ!qd&z8^?|v#}&rL!_n`( zcYg&_7rMhM-lmL@9zmdvBd4p&bHmC_BCk=-2`)_17A~fH6ttclmuhcLB)zVn zDtr>S@EtLy4vx3j(e&k%7#O-jmFy(KvxIjv2Q0ANQjJmhpNuE)5Ak@hk*?+oZVZ+d zYjp8N7s-ZTuRxtMYTB93CXj|BM-D6SGhdE<3uAgX*bfl0K>2!+L87Mp#)ui;U0NC) zJOE>Gpt3rS39cN!O}+61vkO*b zp?ZeHfzmQikX|1S*dzU2{Qs#_r$iS%Tm9Yh-4PB&w9))D}Q^nzj% z__knu%0QRQ5NYpW$#n|-7+cG$-7u#QKXmfsNxa#&Z=VDmZ}9vtz3ei)$G0FloAhF_ zL*SwuKYkHDhF{7Gjadj&F<1@>M1ioMxg^irZcB8`R8(n9eH-ow2id=WKWx$V_NGOC zL>vel1=k+?ie|7CfG41iJw7yhn5-XVN%!Nof^g!YTzulh<%m6w98tz;o7oWyi^pSJ z4DJq(S9_`Cck70c@w{bH--;;MLHeQ>{_1*pc?nlbmC+7}Wx^Av3_jI%iv8(C_OQv+ z9KaG|_ItnkyY}Og0ZAr9`*J<9-+AxvsJ!f&v+btc6o=LU@yU0;``ubRrJuW$+KZZ8 z6w>tp#Rd-E@7%Xme#7;&WmoY3bDeY%F1Og;q64aTVQ)@UnR@P`OT*1(ZeeTS&Q0bf zV@E{Soh&kT1hM#)d@3xDZ#)+A!`jAB_8W~<#fb;A2!e6hs z>YBXF6^7FK_r3aqOX7abEL`cYuIz)*mnuIiQEM<5yJk3|IG1{(s-nWtWWki`fenEU zhQz3VZyBW2^I(~l@i@!I1+?1g^i{jvc1K79F3uc{& zH^HF}9XyCz-jQ`>q#1Yz74mQwCeT#yc%47L4*jL>1votT5q6@&)^ycA7|Prj{t2op zpX(9>FJWFCML}yW)uncU-6S1Vpeh1dQ7y1F1R*L-kd1Ve32}VS9J8rg&e2 z9@FH_pcu$R$Q^p1#sy>f;nPp&)2j9E zHHaxh(=a*XF>Xeh7#_^IwKd2S)GhNiZ8+<=Rcsg>9KL~c1U`U2;a_Fq1GOgSLD`|e zeo7B^bSIQrwakfm9TvANEiWVXuwWy3=Qt+rLO@O{%FbpMYLCabBm5q!d39waU~!77 zqwIyNqM7or2cDkY`*aGI1P(SV>hjWZWrZQ-$UMkUmZxC|Tp~tRy-k{iKAe|S%7x0a z!10K4CH<0hSh1R(99#uUlw}szr^!BPm^r9MaVe?GAfdjL~qkHz$JnQqe?a5ceFt1oCtnwjdcui`&CuK1E)s z`_2`F<%@PP!;ITnWtL8zJ`KUbF(D{NjvP^W^1#7^X7P8npsy#BDU`0k17>qXuDB6M z5B>7_`uc_Q>*sg2cMQeAvW^@u+|JtCIk>ggUH5c@7PgiL91~A?RIQ)_+ZLQ;zxWP!Y#>m7p}{O zBP&_;s95nWNWAwODB8@jLBe%LtyhH|YWfmNI%iBmSaMM*E5x<2=s@F?fJnYShs(x>@G;%*pJ$`cZ@kr|iLRKW~ zF(05i>)I`>^bNIK(Wf_O;k`~>+mAf*h%k=`r4AoD1c|hUsg)Ic(JF{pF{@jsZA%>0 z&4K;2>BImY0@r_K3M5cDN6S+Jg^1bmf&-s!d4Uee(FT!nWObI+0Q@ z=!o~zhVSS_;Jx)vZET!7ckbG2ul1w~_p1e<%x1RMEH-p7aMN6T(FrJE$i`?e*xnwm zon2eMux@RTDy|W~fvXa3WxTVqe&NDoGCpzfiGgi_mhA_HihYU_cRM_CLV79vlbxNV z}<;4Sw&N>5j{>e>Dk$53_?n1zP&jSw!&;O z6N0==UyNos_{XYSc}Ep|N+u$(kS&2F%ED9GTlzvK7vHi9e3o5Uzwp2V4?OnRV>p5e z*z|%-Nh3t-8$hLlykRqJY;M9^TE6(=f$GCmwZX!+pnkMYGdWRm!Bw(>T7|sA2Y}It z?jqFz@YrxAW*k_VSLm_`hwL*g2#@8#lPB>Rob#gN$AxUOCQsWQ1#hdv^(j79@H(Da zFpAG(pWp(Z9jqInsu1mT>;;o9fZGF?X6^j>vuDp;b=B3EoVY|VHD5(S@G}P1dFBv| zhaP?y_o9?Zb-u#3!G^D}y>xo>md4|`_m!DWnk6ANC!PYH+CCWbnFN?@mnpzf3$C;} z9+wnDmppYsH0@Gw-BB3#94)s8o|x&=)Wc%F6LY#|%86lYl90;5jrxl=WGej>Y}zdo zrlpLqat}@MJJxrG%jE9!dE8m;e;p6c6;x!33JzyE$1 zdZ=?qxm~$!Ha{?TFh;3i1j^s zSkFx&C_fHz@kJLc@%TbIK?u#gdE$x3iICYvT`MZJhiLl7Ove8G`(-TfNfijAeQUAQ z5*-7ona!p%foAP)#}oC)Ne;3y6Ho_-N7z!+wiqNj^A?keKq!k{6kifS<#k+MTju@a z4U6jLBCGB*olJ$s3Aywt{hpjCp{5KUCMBX45HoISeQ0wgd~&vCdq0uokBi+%*Pbe4 zec2qz3Un&;I-D8&h~+?>3fY2;UV7=J`}Xe-@Y3eymX=0U7(ta9c6kdc=5RN5QK=2W zcWGrwi*tNgt%tz_KD@cHxkG0FpM-DiMLHr&9m1ZH0ZM2Rq7SPCU(!2otn;d8%8VNRZU6V%@WuDO_q`=K5)Ay)*@f_tF>G&z`Y&aDW%vxT zW*PBTK#}MQ_jsH*j>&YpRBe*!j&Q-fw80-&u*>)4M0l#b{&G%w4;?Dnl-yIwE%quB zo?Feq`25(=GG!FJa6$#Rey*-V1b6b}NjMwo-hdEW1)#3YqxD{s5-tj}>Vk0fv|+{$ zI-doIKPtQCpi}zi3^WO>8Y^F{WD!1NoF#orkmED(pjeVMGKC-m!0p2n=oCc?L-F~e zM~>>26{{%Dw&;baq@dQp9VwG&;dO%Rr5^J-`jzko`%r)g{Cj@=f)w$9XW7kjpC_ta34D<9TLqBApL1Fo=78Vvt(AmoeRtF*kd}B1LibUr<_hER)L#O ziUheXnIez^@N6BW6LO%&oW)9woDy95-kivGMm;6&s!>N=6xa)*P!#6Qlh&s>ZjB}- zb+`x1Qec~ed->MMlMg-g5dM1f=uv3&OD?(O!2ScP`&KW%>rPTGPxw_mQrGvXV_4z> zS=95#lRw0SjB2rms)Mt7HretjDKsTK-G=GyN=d*3i_m^Et^^{{Q=D#l0D=NZdho#q zmHx|#OjiiYmW#fE0d}#MDa+>@vSETxb_pMb{aL?oL2-^8{XoJwj^DW18WM-Js;NnW zmAa4v7I>Cym)Ogm01hY=9lW^Z3qB`sC}-HQYK6hMDz%oV z!(7lNDgZNcWSFrAWCREJ^1}~54Ea!cA3Fg-!)HJHS$yF&uX#1Xp!@E-|L_0)?-5Jk zvW_1={>oRr@}`?^vTpyXJac;Oo$q`nmg+ZtuqpyAKYcO8;Bu@Rp7ryX0&v_2R36q0=`saVT^Ugc*SKK5bwr4%-Suc6X zOR#ZM=EPEpxK4c7LjDR-PImb4;b>eiosn>nLJ&+BRFpU_&Cj-?K^=WwT7G$P-{nMt z`;yJAWQNlFr%Z4e6Ub?dUS^uzC$+hF;LFl|P8r2YKXCv3C%<)44K!C@eKoW@;;_R< zj$C==mCH*@yoQ2La_0S3R>{v*Q8L_K&no4@5+?2dTXCy6B3kS9puZ6ns04fD$l+!9 z8+;-;Bm2gp&(q6%3AG!vF^+_5o9*qLM<0Fk-h1yw#3@G$)>7Op-IM8S%(q-!)$!-V zh`}j`Y^d)?av%LPDh|$AdpddYTe?DQc-4N~hsW826aE@r!(x$1X<{^&wB}`So!f+QK``E|u{>3kT@yg2Tr#|)RzxkWLiAW1~ z{=pA^5ElnY#i7Kyam5u^&{kMA;gA04kFbjId6?->e)5yAc*QHA!+z&?eh2p!e?okQ z6G5KfFF{Z~@PQ9}<};s(znc{Y>$Dq5WnM`pAKZz;Pfj(2UThSQizN z1qHwdMx&uo1}#+jb>-0g;uV|`8PIPUi)o)8CGOUtC&I_3 zIeF4(9&j`N<-hzF?CFnw^rJZYt+(Ft+~+M~~ocp{=3su`A&7;4^P})0>|5w5RQ3A0VFKpZw{c{@vgG9n?RT zP)Pc>yyY!W>f@d9*T4St&wc)LII>)4lTIt6utKbGjiz(mpxaKol{)B};b16OqUu4) zu8>5t7u0{`geon0Jg+UUPUOsYIg#NnNu+k965qnc~(k{0U7JCOS`1$p9E8B^l*K;p+r;6?H6-X*}3pBJG z27Gdd?SJ>OO#~u~BVT*%wFeID7nDVnhncDKVoKr)Yz&C<;X{Y^?cZUt|cC)RqnNAK_MDmp&&$dVy;APYU|9|vnnPm@g=7hiVs!` zf}uth{Po5gZ^UxboTkD^WrB*^nJn-J*7U6v?AG&!>>FevP##7a&WasuaVV&V*tl63 zeZpvjGa0|qWP*o|PeKIo@5^8Q@)H+d3?ByPzP})54CB z?YXPNQBeali8(vbeqeV&u5giX3UK6O$E?>@0CF50Mnjed2Y<#ho^ko*m*cU+`_d!T zBa`_xs0{;AMce!NQoAZXu(7#mS&D{ns@U!FEb#b5GLhDIY`u)u<&I-v7vgSj|I(Lm z1u$4}KX5bfK=759z3gT9jXZl5-W3{S4PX{<3ha2?9`rH(^wO8U)PYva5-8Gwdic-y z0TC<9<$cX-UIR<=FkdoTKm5Z#jNKyaSIPaU28%X*GRG<*v3@Y= z*kI8SPCcxw7mlO}-tO?-Pvj<%8K7$(ohe#RWR1r= zP!o6Dafkfoi!Z(yx|x;KA%0xlw?e-nlg|S?9e9CgpHm_L>!pnc(SbaPtx0`)0@>=r zP|3Hv>}8i;c9{bViB?yHT3T0>B{!h0AA9ss$NqkHKF&yP}uX~-S zeWj8OHwPodh5y1AzJPzPyY4z@GQ>bQAmr7mWmzY`PzEbP9&2gK3(;Tw)^GjRkSS+k z(X(hTl3c#{MK6LI1D$mC%-Q=9!QFp9{G6Bl;LC8g2KkzK=X`FshFOz1--2~sC+ZLS za%l?Ty4dY6`)18Dg>&~PqXN4q#!R+~Rp0$YO){YIB;{($MO>r^?o|dTh^BEpGlrH@`@|`iBo6h6eidr#^M-%U_P;{M*0&>p%R%Kj5%G_=7(PBZV8l7qL`Q zgjg*E?|=Q*fBouLzZy$-VPoT-yYGg&f}O%~u)h)V!cf3*hj#&Ogfo8go8SDIpZOVl z_isP>N$eKvHyjOa%q5qcz`=2m2;-&tRdQiRH34la>NKqCfOE`j- zHabgbgd*{tDC+<2C-Nkt+v`k3aEv>vC8D3z)+s2gkj8SdmzGCr+f&;+)XG=yvhWed zgd|;a%{9l59}}7F@ry2kC!;Ed!35UUcDA?Sh5M}~46~plEyDnu3hQ!rm721{d(0=R60y;`FuGUSN4hcu#>Eu&Gw} z?JH6*fnZmS$KN>;c7X>yjwj9(V#2t!HYk@0N=gRS8#}6Goj@XzYRqHGYdCDk1|#Q0wfz__ z5G0Ap5c@z2hlsUA5q`H5i9|L_1fpJnN~2?1vazZq6z7|eQJ@RZDpL!vvRH4JM?4?M zB~$<$40yB%taG9-dqkL6fRW`FHVm_M_Vn4Uoh@8k-*AQ7&T363#7i7J!}9Xd)z@5e z{SDWv4F!@s=nssyp0iv2&!733_rL%BER>otgjn?q;?V1eQzsY;s%n2(9J=Jh30kvE z!zsM$MPe-_nsWS}O;=3GEV3veiZsihOa8Y&huF#3lUf3ys^Buo#W0@xdEKRCKOz=^ zVWPX>9q)L@+kWY7ZPP}MKcO{S5-E6@-16>ld3rHHMXeZ#50NDm>pFvi!7rhG)wlZm z=RHr=Q+x*Q8l>p+pZ`482}i?U5sBjSGd9>NPKEy9)PwwmFMJ_B{ICD|uaI4w4yx;x zTW&dV!un-zy7?xA{D^V!72^gO4za7DjlTZ{FHqLesqrg>vO?e&SQN{m9b;VF>?(=tvun^4-S_smjZ_`9D-i5Fq| zf-*92L}ox}d<7eBlj{#$?6gjZd4=Ta=drLUaYm}C3i?Pc=xbm5nis$LB`$WU9whsZ$gSCJRclyS$h8OX+xzdk@8kdL zf59)n27cu$U-`V}J(ro8S!$x_DQzX{`tS)OZEt=@kqam~7!E{$)vJ1>ckVRF=fou^ zrZeMWu$<|E132V>yky#t7l_ffXq}0hCTw>Q0t)a@GEIxe@aw<+>q=esECu1j?Wz|- zXWw?)ZG!L7cZ6p)lF+=6~BDRtYg?`fp!xLBO)EeGdfl}0)3I4?tJrpf5Jk|EjHUt9R9dtGvysNId z>gubnQKlI}2?uY9tt1oD#TZ`qg1wv+h@c=r%60(@OaMYDVE>4z^9x`60yHRsRZW#M zHQ6?)Im?7^notj-K8N&-&5~rl_G`cP(1Q>D&%gMKXWjU0>xW4(UY8_Z7zE=$6?~to z24k90nm_d655Mt^Z$zxQe*XL?|L*T@zWL@5Hc^I%Y}H%<(oK?BrgXX^b)2dCmKzs_ zvw0Fy*6&qW9%DS5g;NRsf_qZ9Kraqfd_berqa?~9=QQLurFc~DG+La@xXJCfSvT9+ zi7vi~xGMtxm4lO~o6~hOWy!rkLM5x%6YXtkpiL+dCoU85Pa&253{TO(XFk`lMg<4 z`|Y>mUmWc)U)Ve&_He)g!}Q^!7sx()fzAJr_=ZuM@p2`GR|_;}2z*yf^tmWE-*nSQ zKlZVgzx?G`s=MyG>$R_W&0Sx;>o5Q6uW+27_=%r@Hz?I3(l|W|>%io0EZLT6z4-?Z zZfxP?V3)-JUUrluonYw%DN%0o*i ztARx|C<~ifbEoSU{{&1-yS=?7gtrhihB2BMQBH(hJ`s+p#c9n*({&uvOW(}7wQxEFXWx3@TX)=f$G!L7i%%j}G4_~CFNHxfX(ln4tqc}Q5cq4W?Fp7e82I|&YS_bv+gHnx0i-xIwh>N2IoOR zQP)lzBBdqbT#YCZzCOyi&g;Vc5zOdfOUxIBKoNLkL1i!Tlc;+zOOc{5>kd6lnLeLF zNQ@yX@mC1t2S511r(gSYa>h522Tahq z#P3;*#}k#?U?qE6a?Ae?3W>OIIm&0{DOAY0Vor6Wg_sp6uhcnG+EqN5aG?P34rwwzIt>=2>z{;C-I1&#jm^Wx+|`{(h8{i z_8BJZnrn_6IU*NUebyr1vLtjO_6S}+=eMy8U?cyNX^jrH0@8^$@Zj;~g9i`7RZut- zm|KCa;AhV3*<|YAc-(9{eCC&a@t4Mv@q6Fh7(;OE! zcZ~jVs~`H%hoG}pmX}psId<%*ocl)}ei+Ze&RRl z{2wV4t5n#QX021-$<YAA(pI7Wm?k{v@cxk|Nfr;{`}`ZUu_S{ZRk1M9)@#8QHdEr2$$dYzW2ea#MXt2 zQj;JFudm*9*PVCXi4a2BaHS4AVlChFrZ@f7U;P!FCH(UDe)o3~^nd>gUhs#1_&zv7 zHs@<;3Ag#W*S+p9{^BoS5Hx>aduyxDY?W2?eVDG#|C!1^|NYxWC?}mU9lj_QZLf=pDr_CgQhDDIiM=<{BX{{iWnYaFjBcXgL<)1;T}^ zIVKzb{q}GF_AmVW&u4@f=usDG7PiXyK2(NjK;<+QF$RJ)+JAB3+uPRP_}PE?mvd`t zx88ayj0w~Vo|VQ~pE`XS_Kl;235?)+)VrfV=W}dgi8y|dk=#snQ|u|f zk(osmj8RHXhAI3a3(dfhV}s9&r^zh?Q~srpn4Dpx#(s79SEPu+*A4Zi3GNhA?%jEs zp`OcMVy4d|(>Z2ELc1p?sy!N3(858UiCDDYSq5adf8x}s2OfCf?z``P^wCEZab9xC zB~N?W(;)H3jvj*vK79Bv;#4R?xI^$@5PZ$2(~Zpy;z_JZU<=XAImCFGf6~)fh8g3uG*qWh13+U_hzDfzYsC*!k&scwxlbUkBOsQRRJzx+Kr1TqT*AGH z<6Dd!WtuH6Y4L6kYH|72`0>EOgMk}!y3C{^HR4L0Q&_Bn2M-}ahsx080t&qv|9!l3 z!wxKE2Bs5hGq>9OWJ*e$ISkAC`SnWRUg8kEy()TY$RR^eYvQWaH7T1`(jQ2eu!-u! zQ1)Un5nifek-|xA+Rlkw=;~OCmwusiQkJxW_&g$YV+DT+D62xtVmDxPQEM!tT5cH{ zikH~gnW;rQPGA{zFHS_sh+3xHiGs19k;|>G8#wXQsr&D{?_olTgf)VcYnl?|TU6`n zG~HlF0zAU?jSYAj`0f^IUKCu)`b&tVfP?O)l}F0{x;C*~$>vC%L3jy)%O%jNbHT{? z3@O?NnFVK!6<_QE|4QalX*p7p^~BT)*UANtx=l>E3ejP1(udB$K2y zse>`Hc~KgQei6?j6Rl@e0wU(|T3uaH4$bt%tXt}hHhVopt44_`%#6Bw%JfnnyVS5~ z^nwUZiea9Fz=#nI%hhd9w>3FlvjAvrj3Qb2AhCzGjcAvBM58dPdJxh9#lkQdH9$zP zdMx5fH%}KRb^|h@Qwu-TCQcZo%tbD;2Pbm&HEIei@MJoHL$fp9fjfJOB8!)D{D|=2 zZbFM+eBuN`M)>Ra4HVMRW5=M~MW8OU_x<)x(ov`|8Ed>WS~_;@=oMF9DOm5p0|!^AjWX^%GrMbRr_Y@I z*2!<(amO8xKlT_L{UAHo9pb()di^Pb*#CbHS^v*Iwm8r|%J_>zqrQDM{8NU(FYc45 zRK{c61$V@34?XXc`PCX}pz%`<_>?uu7oLFLKu18VamLk^71l93Gi6B`nSVCj+&p{k z?Ct+?J0hoVAHx*6^Tocy@A8UZeDTplJ9?I9PkBr+&Em=T)^=UWgC-@qXu{&=pCYNj zClQJb@1J<$iM=_|qM!uBmOAm&oCZy^KaH_I#256s@jf#vIyV6~h+9&-OO_mGlIW~zVcYmij?@toqIN)MlYw?WVzGt3tJ>K2YG~aPw zJ>{6+We0|@_@7-~Y)JSK7hQA_92bce;mNlFldJ zdHfhOCSh>nwRkhp+tG$eP4v(T0kefZd^y2+3MA=aFPJ{*udoBsO7&&3f_pe zxHo6_9Ho|s^qL)f?i9PKFK^nrn@_cJ4;+sBhUc<2zMdTYxEYg&zYI5d_r z_~h&Cam3$n^8zj-cvZ@&O^K=nCR)iukwy>_UfV{mgOdblc9fwH$jPX=fnK6Z)RQsL zK1*Y%yA;N*#l!&vNg(ekFP^q1S^?QFJ9h!Qi5Mm@3 zmZmEEOnRuQ#muG#rOZ`a^qGvQArR01ipwuop|@hlB{9-$Bh5}@4V&&38NUcVv;TUW zuVj@kj>=jb2Bxf0DjU1|ex8I2zN0jAA(VwT!Ib_c4Ns0~ zKLR;(##|WPYOK#nE|~^Rb@cZ3zV8S=<**bW{o5SPM(>A+Au(ORxoWSb-<#B5sP1;! zKr?euhNPa-IY|arFT-l33A`7R*$cPFdbh8~C()|oA~liIp+7m(g)vSlfSod6s=S5& zqR}WudDol?OiS6=Aary)HdjdvlGCH89BsJe9yClTIVSdwtaZ|788tE{fY?DLq`N_W zfvbfDm#;r7Smf#NEU~93{4NXk*3;&B6!q{577gYo>Ax3m@wZvC5}Mk;UP}}y0`24P z{P1znRc1I~9iMMSTWP9ytu7`tTH~=LW4P_L0bHSL+ZMUFKTqM7I73}-ovS(2YCb>c zoV|fquPemCK!6mJIHI8ea-O)qHg^!Gl0VId(>X6HMUI3oH-x(FXlT%arAWa6^=1fY zVb2RDoDT|Nn38>@UbiKDD7}RMpabZzWlZ(J)6wtBztlzGF#@;T``gRRyjU0YqOJa2YH)cpG75Wr2A7ISsYuIJ9R*H-autiL}pI3`;$*T~R|F zd^(s01F2L&=HGR<67}o#wb#fCi-s>Ou#&UHFb3g`p*CsGralIfOt~md- zzX%*j8jU+6ppeibZ#%@6=p(~U+142F&zPfBW2vog3oy5s&(%H2qE(i)}`J6++ zURK(nb2*IcqOj30N$r0!7!F>d`)VF4W+^ctHh=GeLB?gKrNgqnDg|ZAF3+hCOxOCd z0%zAhJI7>*Gw_AIsL9FmV)s3X3KciIR;#9jk;n;%?S&dh*Yy~oI4|BBRS93eBLRPX z5av1TJoR6^Ro+uUuQIKx5cKX+8)aP3f>-UUF5$As)tKEo%3%Gk_}3gw>D?xCHS5x% zL$NKXGH1<3aNe}1M;r~MdN6;pN7M@_2#<$-uAoi4tCu-8?xg_vVpDKwp*n~}GB!&S z22WBG-s#u*>l_57{9`%Ihg|ndo`A?yv))(iquH3+MrDz{`k;fk$Qc7choNKa*pgTy zjzk@2g;XkGW#48xd|oIxc2Fx`NJdv_>E}-{WL3UG)@y;$i0-VUVXvkLc_E$UCD_c` z5{Vn?f)9%)xZtaJSlhUEU8gR3+>Ouzu(Uh0Zfd_jm)sH~%!(aP%tzzXHV^9E(RcbgUyZx#i2cWou)N3- z<_`ao*bUL8y7e$iUY_TjE&-=gL_H8cH;yZPH-R8Yt*JZ*#36`rQ#>wCY~*3o$k2;= z@gc^Sl#U})qB5{r0Gs+@dBJqNmkk^3LCHL|!BB)`&L%QlC7TA6anBc^6tb>!aM^!b ze0f*F^vGiZ@Pi^Un+4p0dnC#Xyq0&tA6oX~m15Ulj66l&Q)wMxSR&htx(+$)7um|c zR`E7>Haf1UQ_qu@U3|(OyvjaSNzNkw(|nHnJ`x{6Irub!8fkJLu4s;8Cxr%C4MZw_fb4x| z@-R1W649rB*mOXx>v$Gl($mlJmxb9*q-NK%Xw7-gYhK*(;)HpzNTRQ&$1w9SM+cN0 zCa;5@$y>a^w<#DLBc|@rl~MmB@`D?2u=_=F2 z_XJ-VC<_f*k@7wADXe%`Wvwh^-MtB<(f#freh2x>+uk6i5bA`7SP1s_lG`~4gIl?R z6RwCn+NOlw0|NgSII>yG6k01=Nl(3EiAfRWY5ITQ$rW&Y0gw#I)pK-LrCW717cq?B|P zJJ{w1AEi}4``_@&NfI7L$q8-b-Sv~|%zTdv_tRtoF?m>}H)Z3brs1KoJ`N@*onJ7_ zn9_3w<#ad}?HGzICt9pCwmbQCEcShQ5SWlboXZWkq*|=(z{eH1q4!$h&>qihA@1q! z8aw%_UL8|WjZIFlNOapKL2&3;75DNNsGi~<=r)?62>Z{-wECK7JoH-&z^5yKlX$U5 zU4cTkV&6Agsx$A4&T^8$_C+Q$YC$|qPI+0r1`643OxvpO*1nUTyrgzk8owlt48jD& z%^iQ|r{t^tk<*Pbzo2cIwlo85P90JSx2gLUN}*j}Th^=3NjUx2YVl(Bp>-rvFUv#N z#aCD`@~c#GuW7{FWy>qaM;^^G8T7 z46%^U$MAj!EYW~LMumCLL1lM!m6PL5z3mq&(LqI9wW4@2h+$h>8)r(LAkz`>A0zZ$ zSz-1(Wg0%i!=JkmbB>n*N8JaG`V-cr@5q`%cF{(lxG1oE|nMrOR zJD7347tH9U41m^cR%~+a)Q|_cs}+u1alVG* zSVrJNz@0j7fkjpK5c)dyGaKGQHs5p|6hTz2l=!q18G9TBS@jn4F09zOIrgGYe%GU? z4|@!@t}2$I7aukn(fa9{R1|7wdNHVC)l0K8)OSdLL z`nB4ObfJpFkIRBGoCUN+npyh?VQbOL0tTt<(iiEX%$On88}YUl&VMb;A!ab*VA+N) z*{U=Fp5FR?4FW95#K@t&Q;|~`v8h9pB3#g4gNo1cL?(pR>QfROb+z=|P|?p6uv>QZ zZwd6?Jd3yyy8JzHs?qTto{!&p-ogBR207&w4zt>38v_*IePym;NI{u#!UHa7v1&bX zdw|`~j&SrY@`k@dwex%8rZ^M|_-d6O0hVO^rF=PmM`%@!#C;M}?b?ztDSdW%#DaI+ z1u3KFa~~5TdK*)EuSW`l57~Nd zg=91c^L*dOVlC-hxdNlmfy2XMZi+f~n74B;pU}sF*0s2Y;;*ENNq}-fkoI)Rm(}F( z)d~LktJ`S-yh#g4dVuA|4aGfHV+5Tf=8PjHX>lqMi2w$UB;$|jSbB$MXln#Hb$;d9 z*+ypOLIbDIw$vzRUus+jgTi-zyQ!Io>hxz!(st+ajFgP|c;gJwObzTHeX;XWm;E>| z@2JcX!#Q0J?(X20k~w39Gb6oe&Ve=mWYZQ+p__ureuwBf*L=YUD>d)95vA*{>9sg{ zzo^x2c`(-{Q|7mDaGNPR>PGq7_l6oE5i#!vuxa7>cFhP)8KxUS9Upx=yL`*>>S;m+ z82_f?Ju&hT-*%vpw1Y;^C6JF>nU1?`n4yEdxX;40vx!E~s<)t3TjTdPlhEvKb#@Yy z_oQaWlE+2XZoF}Znv{`$%>2l;QtW`uoNVDP(3`!^8*oYQz7ac|Uca=A+YkD>TjlA`Ax3-?rT#LB5RSJt>jMod@RB>9p!7*ZOPEyJ?c3`_01<$My18cB|TYv`fbQ zDe3h7sRO-ErxXh$AayQdLkH3j=Nef+OwZ+rRhcfX0a2J!_ETbFO+W zbk0z7?UG+OTI__{N$w08-C41W^}*z!R9{ec+x|Maa&_O^Zlmoo`~~&dsg9z$8S3*4 zE^@mA26$#WS!LyEEB3DAtU*;2$7xceNgra*2#Q$rJGq4atGsr`68Q_fij*ug4FHvm zLS6Lb1**5e$NPCZ1HCHv#Dl|piYFYg623xXfObin$n0lb)D1n=bh*4EGqq!TOzZql z3x9kGHE{Q37qf34Wq_P%tFB1PL7ruo*d;@vF4~C3uu65+V~Rs&qx~c984_>9bY?QK z_e{gl@_NX8U@CgdSS+sgP1n9i3OAYWp$yBiMKPQ1TYudR(;_u~zXDcw7C@hG{9(3` z0eG~IYiNC|P4O^aik6b8-DpZ7q`7SH9Dd)udX3TpE;qu{nm$|RoVV3pk;g@qJ?mjs zWpvW6+IcKIO{ymuD7o&y6Pb$`)s~zYt|bi ze=0nO*)Qcc=rFG`Z=s$FT!|coXQ4}3$~Fs2$i#QjL+002Nrfl5N<4!(p2|hP`q*#= z&6wf{nhLQwBN?o}J`j4#=F;&z!$Ado=+>QSnt8JCBo6FaY@1OtWmB zwiS|Mzn=IY7A&n7cY>+^tVHS2xu-ekp|fAz6H|Hfj3WNo4{xt3WUYOxvoNs|qVo}C zPsglSo;$DQbK)=bO1!~*@V{%~#jGKciDtj~A@wu#lVUsF=Xp7dMvo%Z)Qa!A^koDL zQjm316e*R*R?k|Be{Ho1o~1)=Ru(K=;Ci{K(JBoBj%Y3cJj zep{+J=*h|jVclPg6aPQj3+Z){H(V;=&_DigVpdWE%Mh(wNT{CRfZF`HjE!}83ZGq_ zIbCy;b9S?3`Bz0oH=PZ+!R0^fss%)C+LFx~b!a+PieBI-?W`^bcO!79WrTzGdpDSy)sS|05O7SxY z$`4-=-A6xCHg83$rYiPG4cSAgpDiOIvC$>)Qy0o~2#(^$&Y)@rpNFc0D=ynqZdDFv zRg04s3?-NOYceY(g&zm6^d$=v1hdi)tHKAUE0rW8eCCmJh!<5g;%e7lz_GvXN1cNi z)rD6sZRMIw{f>@CDw$sRCG7t3>2*po2}uQD;4;~@QKwMo6yQ(BiEdj@P)YwR=wL-! znM}T9o>Y+QSDcn&ICCi%U20OnI~ns)zNu9;W(sb5814ne8sl|Zh!mUAAbr&nH9ve* z(#4(nqI`X)JYTD zv-**7(<^LYuA-BspC|CkmZ?QCuZPlhjEFB#Ru;>UMQejz<-Yl0-{JiE*B_ASE~QT` zd*%b()!AMgzgKD@tW|mFYu2XsDaK(m{u40YBB_5+3~ zo13&TC$kUOyoxO-Q{)%TZcqGvy!hHA>oLbJ7PJ@_$cCHXz)>OG&^WtuLC(4oY@}$c z@`!FhUlJGHrdqTu6}2)=iGS&HwNgjHBsn7PC93yTF)~9&vBWIz53hRHg~a3TC99m= zliY#_>BM`G$1Q(2iODyP`J07G+CU!=o*aNQo4%fLV6?XXcuK&;qc>;PpD+O%mn;*+ z{Fe`~*2*%XLi|HEajrE6K7G$plD*!$6GWFMcNy&zZ7O+*{wc9vz4U z%%)S0)mw6$O4)BBM4$BC;okN1KE?h`M*D=KXlPG}PXl1Q zQebhuPi_%6c^{1`;LDwRq``!uN%tNFr^tM-=z&9Pb8VD9rr;Do6|A5UO@Z3@c$rak zL<|loK2f9`nNl<)P^QV#rGb0`CLz<#!t}NiG>Uw0a&E919=hM-J$M1AC0$1H#21J& zT`*OC5j4Z|V~i#n)p@NU_@>%oYmFru$U(7&haH3ubi_(Qbog!NR1x7cR^O~fbGZNX z(dS^*9!aT43z>zj?I#YgvP7h8PXTYG0V^uB4{O7Mq7;#M)pOd7#&(Xh_7M$n?@)Jomr_wG+2;)=h=gt0>_e}DKIQM*|4VEJhbtd-D~y{w={k2hIF6t6hePTS}X+R^Qu-=RpC_stqb zYQS#odc3(wbIaG1YdRgBj0vZGS)ux#DC?C=pg9%fh_;*@;1*koPZ(_eJ-WS!QD#Q} zCd})KHF6deRp+lEm0ke!oNENS-vx&I%;x;|PNf)?%F$Gh#G|q>YBTg9p0ww*NYaTy zPOjDrS*l4@1nC0BN+Eh_O;tMX(Tq{14Ai~cs#~A4juxXV|B6_v+RF39ra2%=jX_5r zb?G0N56QJzzT2NHNKyG~ZDeUTWoZbn8CCbxiXLC#^+DxFG!65KWiJTKq{S#XSrF;= zKa^7?j%O#V+jAV<*Q6b(;ra@#N%_uI_V`3I_CMp_!a4H&ZMmm&iAgIJGfFFa%uLfa z#P+%ifrVT`ZLGSP7%jXJa)ZOOtF4*(gx0+a+kKI6B>JB(m+7?2jE$pZQC?+gw`paV zrH(RxgD~+H zwXEgw&gKcxJTLhV^$3HBuSxG8icZc|n|Cfa9x~>T4 z-OrY3v&xvNxAq|-Zrd?&AT%wmeZ@RYS!W)a%U_Pe`lHl|^UYdTyt(Kd;W5&_)ZL;* z;SoPAnMq>ZR5+KAur^i7len%yFz9WQsE*qAd$7OAe#wRKYoKJ^VBtR_BI z7b~K$ulhy?AzsAJXBzJm%uH=Nd5ouY>8PV4yjN16vz;BK{8A3u=?UeqljPpvj)>p)dMyXj zyciBQb=O?2WST#k=ymGzu}i356qVJUUU877Ljd!>FdMHQEZRG|>nbBVqvk7x(=mpB z0*=3u#s<2(v*)*`Ida$?j%e5)0z#^d)+Th$vg-ZxmW!O=>{J^dLbaC-YqW4OeBM7@ zQgG3-w;Z%cF1gv=W(6Te;I;&7Cg24Fyu^O=+M!ot6VZR@&@-Jym`}51U5cU3+#gXh zS!C*Zc2IyDc>S@r6;B~^-nZz-@o)yB&F@i@%o3K($(f0AgKvwK=|NP2bP$qr_*Pw| zafN$#R)qi(Z3md;d4+zB2$iQXtGBNpd4V*Bj%%$-(g97=;W;mE45Ahq^4W)HSGiy9 zHzM8~gqRr~A&ioEN?tedL~l#^V-BdkoY~EWr`Vc+GJ-K>1pgkuBg#L)mcW`%f3%63FHGDtcvt)-if-0xO4 z#C9>?6M1Qqq!iaN1%g)ObAay};4BGT*)IH&9SkQO{%*+5`P@gO5K?8w!2E=%f2}Fs;60)EKpKzF8&5Jvuv6sLwXZrdIx* z<{}-~CJ&QZt*{n@CsNV0EgZf{>9he|y8KZuOZ%Sjl)NL*^Ha4}PURDZ9~ZFA5^kbH z3*4xzd%en16CLQDm6nu(NEgG3nYv~=!-WS{M$ERB9F6Qun-xx6B#<;0>wdOr{Nah-Lu5l7Lhk%yYQ+y*nPYOkVKR?>5- zGg#-UD&W~91TlB3w=ZKSLwq3zxID2ftd97HbY!H?3)Z@3)#Q^onSt8kGZzpOQ%|Iq zo*S7LG8b*2N1(Sk)v#KPcGaf{$C2f(xOb%^cgY3vDHky1ExfgpS2 zaTB{^l*MDJi!fk?(M*}D>dq*Kvh2!#M8qa5+?bUd&Y|Izw(Sj=+Fw1VgupK0CR86NuCX2*V6q$e3RZBZpD zPrh{UJNjI<)3Lg~kd7yRzB=!@pn9jO)~M6evdh+4wDVtr9y0l_=?QT#v_Fq(J^EX8 z@0;+`zUnxHLBW0e(dh!a%7m3&TTaho(_gTBNmCl)d@loib!SCY#azAb=EbaKXL(%Q@Ftlj@$yCXQk?P`yU zm{{Dv6@47%wdSl)!e-COx9Xxp(EitVyBfB)`WNqBQCWiP_w>tu9t;eB`DalE#0_nBSr4?isBH_?{B7E-`~B13HnA$Cd;9l@tk z45~+?uSu38cNqx%MOsW;v6Wt}S<*e+M6iq6e&R{=-}qVY9zc6?Ft2Y(i-mcj#0YSrlnEboz|7r#85Ur*VAy@sZUfMx!5aeTL2IJ(vN#2EY;r z?@-TN3_jXvctYJKv}#|p58IK1SB;U{NC?%oLcvm(`(Yz&$#fl-$OX}*@;IlplswC4Os{0$8!K5wVe-)sL!UzL$?K%8@i-{j4s(z(POuJLvF%k2|pBba2{6$f|49) zi%+BAvMM)C2eH*o@Y=;UTc&+BT9%C*}Ld}4mo;VC6?ax~%Q z>?FU%lW~YnUM&9>n{_}8zW$quS>`PB7DsI6f!9$paP-&2gDs~weEj*2J9HtiE&+4+ z9wXylTR{!xBfpTzXQ2S~-I?`1w?s1TI#zc$B!6&Q#3%htFYM8ExX7h|b{u8mtW=!(+Bpx&+O zKI9ifimlzf?$PQ->bV4AENyvJV+%h|jKo)%s1#@|&?CdN3we1zp|mc=dixqpM0@&O zjaidvvAa)=s+{39nj~lorP)1&i9r2$v_k?xW~US+w`FIAe>Ix0rjmMsJXGtCq@=30nB z7c4rjjnD(h@E3|9i;^#8MAm$tjE?P21*{#r8VE0*xk%B}ImwHeyvuWv$DTiWUmmTl zdd`2F1nBE!)vdU*w7-V+Oq8m%?{u{~Z$JGm(Ib+uk$5LQnoX`@23HYM5}G4ZKi=u& zsik$SyF}Mn zuZqN7s2EroQr^H}Lfe9*xb`~zPYux;N6#cXTGDMpGyIHA!PU z5%wyYyv9=&J)+T_>RhU>@Vh`V_a68x=RBRJG56DcOQ0boovpsoo|GW2A?+YauZA#7 z0AJ!wSa?oes1KVdAWI=x1C}p^KUvEtng_(oFxIT3O2Of>L~+c&Mq7+A+~Suv_blIV zoT(`KwGV1vxSP=noZwjv@+eC}l${z+nQO~*0u9w{#5sDAx2g&#DA#rc;QatzzQh2J zwHJQ23TBKae>B3gD!qD9eeh5t`Rsh?SDzum=e1j)saX5uPEg zxM%FkEY!t=_n3KeJ#s+GnL#50EJ3T{;BVka8Gn+^eyP$735Kd9(1luoi|4;_Lp+g! z99niYRusU_4OzgV1EOigJQT3z_dw;U)5$D2yEN(Qrgaa`M*B*TBj)7ak-0C|(TRpA zOYqlIF@bVXhrq=Pk|6m$2loF7D5U5NOBi`>JlH;x(~L3GiLM|i5~Wv5M6iCW;w9BG zk2sT)juBrqZAFlV9I3giYxsyc5n3wrkjT2s6{Fxj(f??6vw9NQsQ)U;luLz{NydP!3?Uvfr#e%Dg{*cmWejrKbYL zBmowQ?)B5bhA27{pL>?+=uz{d!hnd=6QtpnSOiAelzrZkXOktHnzr}DU4`6lZvSqv zoA!iBmmvTEV|kDMC;PvO)o~e~Yl|W;s$~XF0^yxDVEc>&L1ssMl+_|MS_cYp@+kY` zYF$7k38FrucYGvCcyw|?=&gOe5I4KIk@rt-a&d7@SfiL7&xB4Ll2f zR3&L6o#o4ej#jas0f_0vL+%a}E9Z@+Ru#@Z@03o97Bls_)NQ5R)~l9xMj(hSyynU^ zb(M_rVG0)v$3Iw5q?Tcvac$h%jtP=Eq9(!UrM)scHS*D(5-L_UVr^OLb0={}u%FTE_ygtLvTflrZ=hmX~$9B97|KI5kwbfpEM2IETNS16#nvHR%pLv zZ5X$MJ~q|rM#eWV4YdLuOPbOd^g&gQrp4 z6NNNwo1-PCa3oqyrTqBPwS-=&Oea%*2mSwgs&w`rJ(sL7*Mt?OT zZ74QPyy`KnDeWAIn-&L=kgw0IZ(u@-K?HN$w@@7?2>@o9(}~t*D(oUttB>vMb$FRY zONPXjcfvd^$5qi7*}jd08MX-Kaf`XBvl9{6c>O3p5atal z^oU`~eh@0-cKn`BRxHw}JKjivxz@slJd+zgp&i^WxidoPKERqD55sblLI(eEs0lR8 z6OAI|Y}t{_6S$zNwkQC}0|rO|(58awk@(jZcbWk8w(X?j9i8?M>~(eEGX=vRtJ8%A zB{pav25nsGEw-{bgE9~AzKawATprlZ`$aGwn#$)lZ%*ehqzI!QP3n_YaWnQjj=dPJHpnWTgpNr(2R-2Q5N|qzw3A4pUI8QAUmc@@C zqEBIb3Hh4D$KH_kG3r+e^i?1%bi&F=N^#GW=qml|IOlhR>(%nE7Ez0Hi_UG!ye_ysTd6YK z`!^Mt!DtcUZ&%Jm)y*ABCu|5m8qt^Xl0?X!N}KC%Q|=?n9u1Ih@q+#BvDF!Fj&rID z0%@BAsg^3LGHKanLX`FJ=l)}q{g6H+Ff15gtC^=JaKW4)ZAuZ@Vz6=-fnY){_v&zL zTcP8`r^GS@v#uo^e8#jGvV_ia(d$ID*C!ddcP_Wdq67ebCDKac_?1{Xr<783fU5Lg zDOiM5yX+{|S{}zOT}`I;FFbF0?*1V?0A~btkq_XRju?&BRTvb>L7|-If}Ki2hJzCX zEI3ixOrLSV)+`c^@-RaeH*xJ52 zM(F`K8FcNR#dwNt8j&yJeRniFi$Uo9)7lpZ72|Q;9eLTR(I!XUif<7sX@-b;)1AjS zX?F+^q#XJye@Pj5#ZdNyXFR?NQipp((J_A%(PFKxTh^GWCp_siNm=c&$uWV&h^n zB|~)sMPm<{FUz5;_4Jrbd=(iD*2X+VAgT!_)5aN)*pF-gFSyasqqnZqDrZ(orz}(gNF)GDYp_~Z2R$As&V<^x4hw2-P3Gh`RU{+#b6&FM8BF#yB?;=8wAejV z1#*~=O7g@nteLK>>xV2p^n#{V0ra1@GMg)o+lzv>M!ccBNtcuMxMS*jRsHWo(4D@a z4WjNxaR2%}ED&vxKks$9efgiPBsThT08-EOHJDLZj_lO)&@I0p>k<*;mlW)y1-><=UF{E|1b-kipMp}OCQ&}1^@O0MX0IEs;dS3s5NglF! zyrhAXd;g!Q&+{pEzLO^&2K{7vSVz2(Eoyjt2oUSEG!P1d21vxa(S-XT=vTpyUj>h@ zT|CnSPrGXy$7?$J1HJd8;1`tDRgu>niv_B0SrOjp(vxF-NYSi>a`V+% zM3()z`Qbw)bQqe~>=&(vZ<>&}JmZcfvVX6B4SC8t-LZjHody#)+2I@vcY2zrjyV*k0MZ0WAY=;?&B_A3qcj#9iRt85+~#mv5o z3eEaBC|fk#KKCk=hYW7<`m|{}C-xANk~E(jYuR>6j!vmgOb~Fa*3vrf_n~iKV-DWM zk`yXS|9UJ7xIf|*EKn$A@EMCqj?U%Gr|SG#Uy%2WY9N6>O~v4xNO+gZ@QgvJ`xRKD z7k0djC!I;aN87`DTIx{pe)?Dt#vU!+#X4`t8GjG8Z7&nfF6w`u-pBk(@w5S)uX*s~ z@ut=eVMF@6EF|&B((kVA`%qPKGQsU$Vk*q)@0NR`y?MB~Q0`EC_tm3~vD3YcAT|?f|><7it#fJ{p?c zt!gOY#<}NU+$%#@tRdyX9pBH3)Mk<-1Ob-WdFZO`Cc>>2W6>R7er?>-S|p*$FpFhc zEG_V2jC@Dh9U@WEYfhhrc!$5O+4~ra*Pr5^NDHrat@-?Lp1piH1OS*7cd~9lgISst z>FPAngb~^6cp0B(ZATnUrAW<zNvFi zjH5T%E7>Yqd)tm#HwwwMzO3vJL1@ZEJ2x~Q@*z^Vh*XIEJKz!Xky*U30>acrE0>l9L3ga#ohCtu`PyaFUFRkJ&8S*C2HbR| z-K_!q>SRC+|6MO~7Yf%ZW&sXyr~Xb7K%DG_03AV<_62qf!$8aK+S|ltr{T zMu*vn-^7Q!pRg@iDJ2DKir8;-Ze+xQotW~TdqpAW5S4citt7>Vtai>du^WN){21(` zLp`9&^@S--3~>4!YfBATq`?a;UfLr)hj*0Ph1qU7a~mFU&w@y72m!=!ewuk!d)V zpOgt2$nTeq#8V}?^nJ3~|4s7ikfb>#3KL~q&gQ9?h)>xPu_?cY55@Ll)LDj97pio| z#2uN#*Iu;w-uj@Nnd986K8($^6Yt5T4GWMs-c82>wHVS*K=QA7@C)feTB$mwt zSRM{o0U);VJdWlss;VLU_CGVlpenvY479v$!pmcH1CTO;Sq>fs9lGTScsrp&^okG7 zhCJ&<6Ze{*-R;#Dq&ws6KtHo25HOm7529fHxNB+k`@#Ip2z$xh+;8Iv_GNpSztKQ7 zlgGI2+%ucVOj|&)wAJ+lQ`aurypp8L(c&})rzv#6`*Ka(*npRk9)ebRXZpsR-b-F7 zr!k{Nz!7S-AQqbg(?O7m{XIhEpfOdGqonf$G-zey4@XP60W2PBIi>|E%e zK^o0vCubFI*kOwZgx_$71?%H|f*r-)4diD@7$y%u+et*uLuQ5kl6cwyO@Cxmh$F!R z0C=U0hdVp>`v};$>(yfR8=GDU9Jq zF1#@foNRojTAFqIdwrK257ySXp{7)g{zD=cWr>M#tn{+B|P*M ztoVVUp=zbBqo5$~9IH+SpEp&PvqdoMZr4|>z@j~TzjG$yRw}8|tbmz=7l9yYtAMD! zH!MnEH3o5cDTzsK+xFl_-8jJB-90*SE-tLdhbwo32tN*H&&v*Vm49@mb5O@GrzML` zir-N6wX{@Yc=(VgU!kXLXJ>cjXG=nQ)_Ur9gt6*4Dk1E{r0Ke86u==5%ht2}0yGH3 z{xGMswrv1#WF}HHYsy|EX+JkH@^M&|Y$vv89nnJnZZ;>XM%h##5y8+7$ zMPSaEvr^PIR4Z|ehLIR!%0*Rm#ANEr-`hyFMsE_B`?}>VpT7(WBu{_lpnyC+Vj4}s zuo}QJwes792V6b1s_5nLklhTnllO}qr#QI!<>Arnr<$*9&je)dt%+=!L_I%NG?KT3 z*;RbEuOMa_Zw;^9qPD%JCE>a-iTN9tr|Hj}E@0I{FQ7wM0{?egs3vSeF3wcvbcc!Q zB`13;7f;C`;pf}zf1lRk{wS2;v#O*ve)k-gjm0J8C#>~I07`M@20pB?FA~ljYj54K zMwXvW`dLk;#lYVRuFL*6NCDa9R3YLiPXKcXJo-6-IBw{B}`T%d^28)Gg*rhrvcKRx&OcC z6Xj0_2nqkUQZf1c|6auLKcDk1Q}2HSN8$gLPwmP}+p6$;s_=h*9FVUVRp0zy6`Z4u z4xo3T0lW{`?|lycM;#bQFW_nRzvaEA^Cq_!MSedf+XX0u zC-#Vl-1^=f%_{4czcV-rq2Jlk{v4Mbp@*R+QBm}qa?46ydcwezrv)`J!X#QPey?@& zW=-`>G@>OQNP+6+IX=hX+SNB-9oa~{CxAQXde9s1>USw>^3FSb0JeKKfuRFv(urYo zDy`IWWT7J6hkZ&@P}&K4<0x#Cm7|Oj>Vr4*RbBu=I|;Eu$CGeUkud8gIRR3)kp0#B z&V`QzkTE2P5vN%qZeaLpqT3o^R>YqzVrZ&j2SQ3fQu8j6u7%=#q5;V}p4Cz+Svm=> z(|PAek#Ji`Y;U{U|KQ=I%Q8mEtiQo1Qpp_RezccEXn3D6yK?*)Kl5+~J?&ajO|$Sj zBwMjvYXcgB81g^68n-7xkwh{`Xx1@Lr1f%e(wLOxEO^M5`!$zSrywFDCo=fqPPHt* z7A8S0(#SiRW&!q|u371~u(y)44YHRo;8s%5 zoN!*{X^E3p92)m+I0~BaVv$sJz#0@d-|_vly@amxC7y3x)V>blcfx#svQ z7I84{9pYYRPvbC?6|(n-ouLw~m+q>Uf>}pzr{tRKi)-O8yuwGkGe?cUYKO7}otNf@ zFKsWw)?0N$oaW^scB)r|?w=CZ?^mU8m*9H3T4xl$CZ8}$K$AU^Sn}k8fs}sf{M%v3xHlwe5`8y0qtr+S=OUGH{$8BgBbw zct}UiX+}bhVtXM9X(B;d!=I zk(=<-sjrUX;{643wLm%|w5@ps<#=KL7?x8>C9`sh)522QNDdmmYAeA(bJ7&?%#{8Z z?MrvInh{BSn22)+%>IyNI#(vYKE3Lzum*Fjb{eDpK>$Q+ShtM{tvkNja@d{EZPql% znTw7Pt{p~~ALG&sw;x9C>p4s+2Y!k}15MCOBv} zXXF~>est&(lO9bf72(36?-#kQC^Z<7%I1bRndsHYW6`?KF0<1zLZa3&e~*LpQWRZ; zkHac^P&8vVgKfE$nMlM$^98)=AbM5Rhwd@Nb(4|cm?JYWq)J)~Ug^g26*QXVS^Ma5 zP=c=*+os@t6~Er|ggMvDwK`TH_1pxY_AQ=p-HK3S-;I-;8WHdGAeHDNArUsV42o>) zqQW-06+Zo+!f39lkd>o2w86u2nza)ryqID0YX(mKl(!mt4}@{i>azb2CPCT0R^ES* zUs=VKqyEq$wj!#ft1ByQgrR(G9D-1mYYc|=O_2AF#ff5}MOt6AT5T8g&Ip7wT5w4X z)I3`Kj2qeB$|HQjT#}(nYtuUjDS{!^co;uwvw713dY2hn@N=e0JU=WGx#zSnYW zfHyc+Seo=vrP~X|2l<$IBAJRgvOs2&e5^9HcqM2CgekV7;$z7*@g=USjHyQ*#Vpudd=T)a++_X>F!{V<*|FX{X z34|6WUerya;#-D_7-c*#!U9(v4RcObGB2Zu7L1LC3$Blq6Kl0(`LndVT)MLl2eIA~ zt}0sDtWMG$$T}cdEAqUkLP9fVJZHvCMac)C_F)AnpCqAbUuA&)<&C3S;#_(Rp4Dsx z2rpvg05Tkd6NMDTSp5RQG#4O3?fFz8teLYi7Q`Ua{vD1KaOD-uxN@GcuJgmKAo?w3 zF^Fng^k=lJo-Ie$mZM>M-8#ODm_@2Cv9Pe9#nIK((u=Z@;W61_H8ff|bp-L z5+@~|I5VxcxY%VH!r5u2-2>f)p-~KbAab`c0*vPq*s{zDI*bii@l4q#;QC5pKi+hX z#Ay`mdV)Gw2qJR61!(FJn47MWcQUAY6rt1}6!L)3@$Jm4pE))s;@83Oh}qJe=n~Ww zI$0b!>~h4kk4iMxxEN7E2+qSMqa17263!GI8^%ZlD3_$(f)mUvLvty1PTD}d2b4p% z1)2PmumR=FGLjMuTsDNcBoMG4wP#rxNG);U@SIAKfpH6mx2CHMRDLKqqXc}x;3knY zpU64geKRS!EOF0aU#(Jr(Wo4TqZN1zDt4E)k?*7MOk!mb{h*N6=VCBYMftIA1VN7D z3=bYxsG4a^LNJAkNf<>xJR5IT6cftawEICvgRSlE{qZty;<>a^D#GYU|X? zpezj3^*w_dz}S+^vT<&S>onhlngCOXU+|l%3yqmPJw45qLQ9z_Hme)6GqdU!)gNfb zbvTspZvE`+ri~l9t#fJ2yh<3Q2C5~F_c$n5r9kN#^B48_Sp4|b`4SpgqbjQ2uxB@k zsIll3fge3mFtudF0FN&;jj1y91SaLkF#L?WhUr zMpd_uv?N3ps3lOkPD&(p{O2(^Q5`iMRw#AFtJHgMdi+r(f$@;svD0YiEN(!#uMn3Fi5i^2-JISl(u-x~)H9hA=b%17BXhPu=6X-NGka!&`2K8?MH*+@NnWIHNu_D|$YKjJXxjWbWiq z@}#V#)ohJS{l=m|RuxBxYP2lVX-66mSQk&MQ>H~@ZWOaC2QS1b5`>^A;YHn}wmuo^ z25_jf+wHKGn*j|{ITVNMTz}9f%QLq4kuyhG+M+aU!=?0@DaI-oUL$1B5NmX7PQ*9M zK^c#Qb{chMo~92B0@;(ACaW!HGzvi8tVkbzQ5JQ=O+Bow=a3VHBFMs%)q% zJyCC9RMLoweOhY>%ZH}dO_Rmv;#E4iSpNLjoQN9e<6=wRU~_|gYkzlE`3@ZAk$~QjjT|VM z(F%%#B!PopC~X9tEiywVUmI?vu1w0ZGL^YxUznet4^2h3L`PVEQ?FDcT4y1oj9s5ipFnqm5aO@z3BQ(B(;7B`K>4fIpCM;tm$U5vN0gg_>|qOR<(%6h=a9-lrb%zL z$9rqFTL>hY@XAR?M$O6`?WqWv;IrvW)e7#A*oUaf$bm|49V=n6Va9PRZUhooBXYoC zO4HX)Di=Oxus;sEEXiJ#Z+5%fl=;Hs_bkDknw&)Ce!w^t#hIe?rWKu6@aFXOur{gy z2p7=Q&f0Lq-UkZ;u{%dGL0yVQHmOkg9+4)ZsyOtng3TILK;$g-KvDjYcu_0HC`Xu8 zPF*wER5)GdaBhC?*qq2>8+U1!Z_p)yvZJZTcp%55=A;MZHhsug^+S*+I(Pm4AoF0D z+mWof7EXh@8KDbo%GYxfAbhP3Sm0RF7^W!HXf4Z^%Ze}_nm`%uTn6sOjT>cEKIN2C zw{6=-M6UDd3)V?w5KK)@FDX{280ehjUmXpU>eiJ+SzJKMxD!esY<)Btft!&?T^mOX6Zs@0) z=swPsc^ncH>1cz{EU8{W0wBd4VIy#-cUl{mC4Nl9r^L*jT8$>yIt_R?nk)z52Hj3q z+w)rbSKDBgbQ&_}nD3$evxaH6`!64~n*g4)4g@SvbwY}6709r1Zq z?Sd!+dRo0fW)^%kc8H~T=&5oYkr~-X{g+}VrAs_hXo#zfGCmvG;?kmQ1(eWPSy@5c zl{A)@S2(>C_lrN!}#! z{Q;73t(No=E6X^SZ9`=$%2708Wn5YJ(B zHvqsPRyzg~R5om?GiJ-SLHw@rGPAVPZ8x%R8oNINFUvjI)Px_FzM4`VU7sGyB+GF% zm3Mbw|NdihqBJzJUEG*F0Sp+)soH=ljp!GtZCZ)8hrdW`(eD!?L`u@1m0uZPF0c{)rLUGDv6}GD#vBxXk}?h2OD-g4J5L(QHO&rEicIl z4tnC~qTp4)LcFP~ldGv%oCG#(IpqzgbFL#&r$J>)U8*cvK242Gl)o$)k7B|W7D^|` zq;$CLImy?A$r-3Hwf7)uWqG-9C>&!d2G9|@xc%$6?1*b?l&U1o>TCfajf@`TEZ{VJ znJ+z^k84|4Sa4v1woXmDRvR~Iu8YcucpIwS>br3zGnpO?(u$}ypw}kf8Ww6Ru00)9 z>F5XTkYxns3=G>$a|=0-@ur|9Z?@?CLGF?3!QuL0B<`y9l75rn9;4^i1BUhwu3C5_BtE9Xa zt<11F>LNr5{K~SZWAJXtm7=Ja=A&S3bLbHFFCQRIIG$RhbAnHQnt1P6BgRMz6H4#u~*OJO^q#jipjev(giQKM%-Zd&&{xs_(c3zC3 zTf=djBE1f1F_s3p4vD!Tl-|k>ja+{O|U5o z(;0^Phl!(-c;%J%=lMJ{Z{UY~slNgzRUDHOg_9XKu`wN^G&K*Cyz^sn4AimQ=+9IU zzS{w9{P0-uoKwCjTk_I0hDYKHxeW&JBR0^FPa~ zYHRxV){gpT?GYRSl#RQygK$AR>M^G2QI~qucaDA(NB)VYal{VvJw6d3M)8C4$j_&~ zKOYql#bZC>y#C_iB_2IOo^mxuzu&*(O%X4&al?l5_v|_SwA0qFUym#$Yb;8_h{Sva z`cK=oZawAHQ@c>JumrKJ(#-bh#KQw#PG&%hj7*lg9dU{lQhKDVjY(G>NzJOkvP-9* z77=ZSvJGkTnJe4#xOIwmKvlox&6}r9G^E0Y1>La-$I(X6D{nfqlWB2Pb0%VZZ-P*g z{m|(Ib)nqNgDQWQp=DXeP8*+w_0u%1=LwZR?bO_uQ_4=5k8ach4Azo+h#VRf-}4iN zsI)mX;BHIz%s|>u5TVAW#1KjzpUJfQcrePpkB~92-gB@N{hX*un_5oDUlVC;l+io} z630dbm!XXtH_pz^vfVZ}H>VY5J`Sy0Vdyklt?k>kZQQhJcK!O9_3Ni5C$*fH!9C3l(T9%L7B`DVhI2+SwoJP zpqF44-sn@1=SyK6>fR8c&{W*mkfOHC(7Amn`X+;&O%r}3D!h@f>O%2XD|9*w!8(Gp zFVy@j)V3PEUY`Q9jb>xxhK=2BH=GneLMh2_Q~hQ|*Op0Gin3e7Hv( ziEahDtk{QiY>+bHLcCT9$N_vvuo&^Yu=chxF_V)a=oTx>%WAmPXv|DcYb&7NZ+AN+ z3N{WOKAd?UE2IZn&E{78p>Miw1g%y>?e2%Tt7N1VR&B>juUkh-6&o&j4EIpGl%dH~ z!w(+F9<9V{g?`A_!v-yyQyH-VS(T2|7krdMgil@;^`+@strhOWLy)_)!^)*zp(6_8 z?rYH?w}zsNPBu|+R#a0#y^um%N%AJu7Bw-!DC*(JL?mNFzBx59k)Xy5q57Rg{K$e0R+dO5I=z z8a{S9`oc1dJcZXQ7k*S)Q8;b4J0_sz>-PZOTy-$K*r8)Dv3lVPv%`2_9O2jo7OKQZ%R9 zQtbN?{vtM&b-iJ{2SAjjT=ZRHLmAcci;E9F^w1-ZKDuSgmZ`}p8gsMlrNV=&s~k5H zFIo~(fV`8Kw*-}6>6{_^yKD#TZrgRBMr0o!Ja~|N_S9ojHUt{5aLb)nS6XMcap=&Y zV{;-tWNY-Gc(21fOD4OM1#%dme)UkSXop2>Y!{V7%}AJRVj@jUOsJ9AMVU9orU`-X4WmgH z05gR>bg2>wYNz0vGBGOL4T2Y}ydl%KEdW?8YSug{-A~JK9B@~1HYT{1FzlqHRf$eS zAo4PF{(=D%Y>!ZzdGxWz_U+rZy0SuDS$P^u3yX@NRJ@QOIx0AWM^eRKAFAjRj_*H;u9gj%?TgEu8P;ivJ!lD>Q<|Kq)GHt z6O$9)>r-slumK#uku7jISL(VcLI1bMHSB9b=mr*n$L8srYth2NO7h(vf8vP)`}fNN zba;M#@4mg^gUO|*(E)*@@Wv3Oj)+-bRgtlTan9=M3Rre98&joL8LBElk-NTY?p&A{ z&DN05u==z?Q)mvyBY7N)YxrLk_b&1P0rgI~*$78lbH)Q%v>=nF7IbTVbe zxJCZ2J=vB_V`6d=F{=Ld%Ib>5B|W!qAn0EN zq2*K)h{dIHa-F(Ew^|sBy2ui30a|T?s5*JVRQmoNpJFBRFqmZG%vCA^JmQ^KV`W6? z3F~9R<&3Eo-Z;P=#5gdoU@^nRMxkHXURiD{xUg_N?Wpd-t*+v(K`f<{R;th}mVj$e z3|h<#u)Fcq23I2l+8Gq$@zD)0iO7NBBPog2{g#0a38d0}B+b#$bp)tK3Eq<#o~b+{ zZk0qSE0!q~t>Lai8e4UzrY0vQ+N$_0+xI*lk*aSOKl;WsO9 zwv!>I%?kO&Uay6ox!DiZOkhY9GBP-dfZV<~XY_#XDXT?csODO=3e+UB%v87v8=$SJ zAwHU$2ZPpOz<<*h7n1xy6NUXUm5t-^Dwtovdam*Ey*~w`8H*-reh}O%g558P=6BpH zAkdj}4U$)2FBGIimfjWY4t|0>{AR1!nB6dor<_W%MIBeky{4z9H*VZ0hiKx44TOL- ziFF?o4Kup$CN+IFqv!%XQd$13*R;}G#dkQ$O<-1*J?e=XJ9`A`q*2fqX`VINeJs*!6)QlZH=RvM93 zb)i4kO1G>|u3w@)!d&Ia5RDYvhme4cZMuo74$G`Xq+ebDWk%kmh8bab_-QBW@B%Oa zih7eM9JQzd&~OG>SSE!e_YvZFib7GP3M`}rT|{$NVE&$-;=8+75S*6~77vBm0iteZ z5Da5%XJ|Aff^Y2IyN|2L;rTf=t^hlGa&qFp!A=1Is)hsEg6~627*!NQ_MqOR%*KYP zDT$kj8??Jr6Yg4dKN?ingJE4xDXE|a8)yk~@64sSekAZo)sQ_YJB@bbI6HcWCGI z18!S4LD6pdzul z4*dx~>%zk?(_|~ikIbk5!PN72fB*Mi`-{KGDWu&I@IoSFXBeleX5RSi-}$fq`>*^; z<^|2M9=_9U60b{=&V%~8i)A-kGNd9w`aB!>dSM7q1AfM75McaPyJU}wESj~(R95pvYX(DmNy zNOEgh5cPe)o5O>5XqBTCk*xXF<>8l5_|n6XlZDg@P$50j_`& z4kap^*&lF!tDhqC8Tj2j#ee;s-+AL3-tgVpD**g#bh`@fm(NHdDl=C8UUteGP3Rdf zw74%2u|S|ROw)CLkr~uPF){ZGBJ+yAjanG0QU>B9XcChhBQLqt?Y{M`Z++>@UbbQV zdJ;+A^{#jQ!mD0I>>GD;!rxS~u%bPxE*ro7U;ay^ga78&fBoP8=5PMmzxr2o5KiTn zF-9d&Mvt0MNP3v{msvpo@cQ-ZB~4jcSy4B&!9aqIAxk|Fh@)OOyMQt)FdQ*3>2^r$S$!+{4ZYn+F;^SwKGfssKa5%{>&QKEf{tD(I5Y@eDl?>dKI@So=z*y z@ahP^?2y6ucBeqL^WEAjSWnY@b~svva*Vt+%7odQO3Y7zf_{yDx{}qPO@|7&aZy;tLLA0o}A+=U-`<;UAq<+mr7K728}%S z?um&BLpWfz$antjZ~O+;73I(W_3!>&wCIQw{jJ~ntv9~@^`pd;IEjjmg~3Xk4qU-8 zHMyK$SYRROz<~oY+*y3!ij_hCweaDqik`imjBlA6Teoca)TchRal?jx`jbC-^WXf< zZMWU_13&Nst-ML84WsHtdY~mjZ8^*1US3*?#s^tl+LOk+3;+eWZ8Gv?&-ttOzW1st zuVi_=l%h$=sK~ z@cnK=VO{}gZq6l%R>rO5;gG><>baL)CKvJ0!w-MowbvdzbnyBQeo*fA2VVHX(@r~$FKl6c!IizNa491)B*%X1 zw}1N$uX`QGjbtIe`+L8aAOw=Xf902d`Qb+%`N&5;B7^CgYpyx{w9{mg$d6>Dl-czw zZ+cVoZYShw<(e^LSBkZtA}K@Bhi4{7HFy=bU}^ zd*AoIE3dpVY^EjH=%bq^9I!M_s#on zxZwu*=a0SUMe<N|^#Axb|3?0P;K2v4zy5l8K`(sa3(q>^3;KFhZn&=Z~4PN)R*$6H}Mqm$*Z6DJh=t=;=um>e|_VP`}XaVXCf!!ZX+S( z*S`LBdDL=U0P3h~cC}ayYMEttzkU0?B4$Eblj%)O7fv&TRr)41wNB9Ob{a!pAWhQ? zB;4iYrGTK|SVn;SJu^N1zW2RP2KwaW znqP?w~rBQhjA!EiNs}N+3Ir>;s!O zZIY91-n?0Ef5Yr7vuefaXrr#90Eelm9Xoa?_zcw;`R5RIq1Yt3kdHB&No<*kOkjCX zKlxAoiM4Ob@=d?=O9u`feD8bTd-25=^H)wh@x*h^Ip;6_@-HvG=py;W&)jy~5B=Z| z%3<%k^G>djH{Ep8kN(Jy$mwqS*vDkJ6Ek5TWQ7Pww4&-F4T=XYRP; z4jC=-yTAD#|KqR!>wnGS?Em>2zwz(>?Z1_)T|vI_uYc{=4jwr0u6Mut$}6srQ{3>^ zf4yhVo(uNuAqyGe*~z{4-M6r?aP13Tz}+AmT-sPG>)X+H+$#b;z#qvsC77YB7lSKS zJLIls*RNNFR2OY31KzH~y4jeVn#vRsthItRSm+e@0Qc7ZV;g@MMube3Q4cxo)KedQ z^ilbzEJczsAD)|&1u}Nwqfpl|Ab#l$Z={KM2pnf_oj|!FXi00#edy33d5gg=W1cNf zmhxkqODu<*-6`!l(mGU{VUMjJCV_?GrtEa2smp_#ot>SZo1+6nrf4^lQi|}eKy28` zl%9(YNKV^@Sez;%`aJ8%oYDM>pMS;ex8EkAf*f2f>9e2v+?T)nW&TKInQ=Yawr-QR z1q(4v*JQ??d+xb%gb&?#Bl~gkosF9|$~DXSvb4M;Yoz>^tS{^so_gx3^pCFq^-Exh zPPv}D?!H@g!XN*!ADdg4mrdr-;lqFap7;3kY!dD(fwdf8-sAuMpZ*gc&Vvs;ux0BO z4H4(&xFpNhPd@o%f&!Q9JYV?Y7a6fo{bB!s11Fz+^3uvOBLa#P-SOGa{%=3~vjlj_ zZBoO6J%@_W;Vd=fP6V;c7*Qa}Gsk$FhM{-s*(U1a?zFuvBNlXTmQG-$+FMmK1@jdt z1ILIq$Eup2c<)JvIO6@5nTjRk-WFvMpa5b}L&RRzq}y)4U5;?oRaeUKH*DA-Agw*@yKlMm)~m0&O8%BjT=@V%L=Is2$*z!= ztpKMRG1emP80mphvisOORg4H;1cYvyY|{^WsseH)>#saeesK5{OOmx zM85xL?|PT4`kZ|0*U!|ArDRCmd+)ubdVq4Zd}r^z{Uv@x`yEE@ZY@3F;G>ld#Jjc6 zCHaYDBQJjOi)A~~Y>R*B|=OPyG0g(;=?i zY*9A_T69TBGEvZ!4v*+jHXsm6AvE+fosE#X1qdymi3uY@Q6|u+(413C5pt)i0IZwq zv{ocb!fUm!Aun=eMMYP7J?JCr)yc4cOoF!hSejG;u%?2II;Qxp8Lxx^jM%29XXfYT zC7AojO*fG(C7BJMk&KeS(r`3P&&)8{=b&u3?|lP8>=FgN<4^xoF7MU9@G9AzKlzDI zy#M|0XDH8@!8o!Q$TBOmK?8kOnGNgY#R3jWUJVK0r9&G=KnE=?E%gBQB78+6W?4kv z^47QR+O~{ ztD+t!D;&iQNf2pxU6Sil_^Go<54_!obGvi~glV(6@pstR%MX{9mgN^GCMQy-e$&7( zaj?TtYvdwIQb!REjjQg0*P+DA^>S%($puGCzU~f$9iPtWWU+WUr!aFxQ#MUZH=M23 z8ntiSxQsHFgM=xy676cX#)yTH_b8dhSHApZc{TD9uejn0896fNCnhHk95`_A-S=o6 zhJ!=Pf-aHXgju)zvP2g;X%GppcLmAT1j9ae5!o`}19bFrCXIPkf{!;cU6<1Ipy?kA zYfP0KvwNTqFm*#T&u9?c--h)HeJQwJs;Ctj{+2?ZKj-jNL#?XD<;cX{DF>Q zEL}TM+{@TbP@;LN1-wDw}wVT%|*Bz z$}lxKW8}O8#kCd_6O%-lDWb4_^y<#(`|VbDoH9O1G+NL+AS!BpO!^=Q%tFq=)m^7S zmeg1GDB*QLcxfOAj?m(%t2<)`tu?KzWQcG&_`~_b#;qiIvZz1s;DfSzcG~T2TenJ{ zijbokhIS3k7_0l3xmK&Yv%(ldq4b@qauQ=b%}Ra3X}1tk(d0~+j4-kSrn$z}#dxI$ zi|X28BGuPO?sc(7M%wd?Po$&=L*72E(@8|2%HZJ0Mc_161PYPlkix^`KwTJd7nX^b z-u2=P_X;bcv9)3fGr%eYl;0gp>J@ zEZ}o<62wcu1{E=VNwT6p_~3(&J^na%&r?o4^^7ylST{Xg^GiW-w%?~G*;7|{L?%rV zjfti#8i%ipa4oPp=3DA?XFTu z@2Jux&P=JD&=)cTY2@khU93+8nHqN`n|LL2D@j>hqU2FXzgt8%(rw2my&8F^Bhwbd zY$0o%QWyvZOZKJJDQ#kM{rdHiD9dm^fX)kdp8@)y2JdM$B^AEx(o45)-C7!LxF#h) zI4(xU08H(~TMb;@xfYJc5S~Z7)ehBMc0-Ajq*S6@xojgd>u0*%3AqobEL$Z>UW#_I z`u(~j8!8*}g) z0JA3#`XDSjv}In_efm^t<0J>LyXFhD07y(Ps=d^^v|GT z2|QNw)RjuZT$6g)6gt)QX=0-Ek(f9IL>CXmc$GAnV0k;NBsqEHN+c?k{~mti;fEf6 zSR!>6p`(1eWy=;B>$`UDT)%$C#mrJFo3SQfk{+sXzdB;~-j&s&tGap1mPoZ30m@v` zMav;2g#OES*d(8toRlPC0<|NwXbYn=pnB7D=Bu^au(&Eq-;n6vd5sLQjc0Zuxec<| zp62QBs9T9^tV-OtadvhBeK!j5Ca_wOu|CvDxzBn_U=~s&80txiU6E>MeEW1~L9w_n zy%x7f2(`8@?rylW6m-D?Nh$*y_DR)FxeGm2ozU2b)qfcxGfLAQjwJR!gg@#;S(+~u zqc`pbwxatsojye?4+eA<2n|`7T8%MY-q1AxG-J)Cw(7e*`Pe?m^EQ3NfH5g4cw`=T zN0=p{Q<8Z`!S6^UC+pnyZQINn+5M*F-N-w5=pmU44|}sC3FUI*vqATrmm-gE2^*zc zOmtPD?A>4WQYKYQG@!~;_}#Uk^`IbIS*d2$ua_i2PE4I>dGzwD68;Yw4b=WY1j+FF z!9=F;oqUIF2R%NMmeTe7A>xoZ1?<_M2zab~{p{?~C-M}PU7n!fo1-d5kt49ewfaF zT+UEEFJ(uGxO`@MdgF$T1Kgk-c3JW~A|ex?4W|216x+6MS2W1sL-*cy-@W(V%dO{I ztCCR$>?y)jPZa=*PadHn_O1TJm>%m<)x^fep7A~|>&b^ZzSk7I_*?al`L7dP5!J7w z<^C=w(!(DIv~pC3RzNETEQiDbQ4URjx%nw(m<&Rp01u+sk24@ z(0B_x{Sk$NL&1u;)+KG8EK_X;h^AGhOJTUgll&cJ|39pEO*J$9AdXUPj&l$$Xh4S>M_RxWjsyWaH^KlWqLjY<#ode>in{mWkZ(ul8Qt0A~jvcqS2BKfq8q(6AeTL{j( z;_}PSJNMi;QRZSN)~|K9CPRN9sg#hpi^`ttA>>9{yLWXp#?la%v^+mA!*SE5O-ckS z^t^xkwzny;9)&xdco@*sgJ+3?(_%3oyO?M(#W-X5q7>BtD~rDUXzL+#6D;; z79$Dwmv)|fvOG1JcBh?j`cQHU1UxE&M|TlIxF8QU1m_B;Pjcip%qN^Kkg^b4fxQ|) zp8~E_j6vCwRC}E~C8dv%g^7yblccBuvXb|Et3=Eau54Rd%`+(U0{Bw`Gn5S0A8^ex zO(+K#*+7K!SK$H*GImF9h>7|JW!&_|v3Mr|-ko3jnmkPn%5e)MNu`+KsQ9inyjQ@P z85ViuZOAEPQI$oG;eNn?OXJJwrOpfnk39P5-o1Ne)jZ{tQyzcfi9LJv$XO)9WWhA} zZ^ZwY3K9f@p7DuhW@h-YH@@NZPdxGD2d=;V;)^e4i9K^(vO=Urg`@Y>@{Z+H)HkI2ZejdS_t7 zQ^B*zs071F86N!}@pwr=rX*9nnox z0GWuGB@48p42G`~c?IV~8}=29!`NBYlVG;UhvoWomq&Yo#XI*|*BwC1^}II3;C

wqVyG!I)RW6OmyO1lLfc==M9bpHoCN*qpuxXEvvHZ$fas}`V>rt{?G(hQ-2#<~~ zZyE*5+#Sv-ZMLqZ0U}@>61Xid9rWczE6JglLrqSlJESB*S?nU#!r0W6L;Tp z&xP`5&z=kvFjXCFHrk!8{FbbhverN$2fnS~NU$^x>%ZiQC!dtzE(B%l!Zsxz zl;`>IqmRldmaPGu$0U85+&&dv_BXd0VHTZz#>mZW}fn8Q-mz@+@1w{ z?mLBwm1e{nI)FrxgC)gN5il0+PHe5;!X!_%Jg;qPeTAf-syxHcfSFv^*+`doqrrj# z7`v?bq%Qc+vH+B*GIUAvq2qaswW)!eiYgLd^X0F6rGx?xlGn1`?nqdy0U{l?hUF+R zUUmyG0amf(&Uz@{sGx(Bs<`K*Zl+LE@TQGY%6((UjuRxOWN}Si&8erH`iFn?)*pS* zizX)~|LT43ea?j!GNWEUGox+6;piEk2)F^=82|9CZA#+Z}>uylDOZG|m+f7Ri znM?7RMzeYAt+)R05B-pgrN92rht53X3~t>g?${xd|ARN&aLGj%D?2+=KdDL+nB@Wd zwiK|~?QYz#0sQ8YR2bcq7@XuaMQwI#4;?xL`y?6h6@dnYmkSN>Z34%+I~Z4q!@o=f zD@z^rltr_sf>AP~{IOiMdZw0R)g(jbCKQ7;u!o-}RIN)dO|pVUa6IXWi3i+f&tw$D z+YdF^9=ObxyPo zt+h7U={SWbiO9w;x8oKFkS(}b1@?g(u5CDIg|Pj(qA=}Mv~*RWch|06U;EnEZuaI)It9V`EN-wIW@HoNa<&DBDUCG|GL*vD3?2fobK#1&$Kase z-(TsiF3d0JMWZ@Tg}TZC^k%qj{DvHQ3AVr(U!Ts-SosMm#ODjI+?)Om9slI~5;7Aw zVf8Zj4@%ZCs4_L)2JO*0f`$YB)OkN@-y>fo;utc}C&XZ|&{+>Oz z-FBOt?&6CsT7v%Yl~-N4cT1xX?1Ch$$Yu%pJ=QC3)NPYPsMnFCN&}yZ-B9?!*q#W7tQ)3KN zVT?E`+2H`>y4h^u_Pd>KXck1DfdcR{My4hvF$hK!sA9!{;5K<&U9=O~H38~lg&WkQ zt}v4_zW43jD-U+(&Yg1nANrvmy79vwmT*)K@@v2PtGrrCw-Bl&&*nsY;M#j~QBFC+ zb=O@d@yus#yA4_F8={#?+JoZnqkIm*ACtC4fdce#3UuZucPZOp0oild+{V8B=0ErY ze({U1d5sbqZoZibi6jj4XJzR;6y>>KDZ+FAkCNf6)%4|%Pilx>#o23 z+rM46Zryq3p1WaocI%cc^7^>|pz%9gKf7L%7$(9A8W06{NnILcNmv;`<&}(jYSh!V zAewMQpW;!PJ5@mE64PTOSi;E@_0@ze zD8w8V$9!!gqz9BAq}qqs47OVGF?yDVJ303jJ|$kTjDx*<_uh5)-H$!?*hIH`@x>QQ zqQ*+AyazMvWuAclj^e)!hJ$BwA{M!2dqn$u3?Jg)_L*EkHX~(LzsIWqbw zua0M%qkuMK{e)N*nYUm1@|Pca_+dHeMHgSZd)KbGc=)LC0ipm;h)?z;dC%LKxu6vV5rS1duKtTF6?g+UE#)fLdDc|#6Tg?!D}Dcfy;7|a;9Q)g$R z)9uJH+lXOu#7QZlx4y=2{ZKE`R?1*7y>6X6Ytw2)SQQ>AL4hI8he145ZKQa~E5a^j z1#g@y6w6RyUdiwk7@SoCU}c;cPD^Vh9qK4*lXY(H{s$g-;>joF>)9PUHgDP_kI@=C zF3SaRIO0ncCP1ED-3FLroufB2Jz0D+iX6d`NHcU>sLBSBLk1yal}c5~nzCCfqz;mt za?$JHSSBY_pm|xWuB=Kz-G>4tt9UGJ_9TE_T$CrWZQC}oSGiVmLl|LZ$JWD(4nmW9 zwN{1{w*Ua=N}&HMF_fG?O`G53~bY<_-DhM%IzTMY>S<#uHcBx(hBXGrTI z+}WucUSi3Y$Ti=$PeuABC$xT#r_IrDcz*uTM;`g+0}sgZER+1i9Xlo`CstOL;UE39 z$QD{-c@`()x|S;;rbQm$$X}cVncyH{m#|8JREh+S)RXyWU=4|O_^Iz%LyEHW0<2n$tsTu#(Wy{TQ!?& zO`>G7>+r>{VYbM4+1hQE2L>`S!?F?Z$|Dt*o0n%KGq_?4jg1?hWRu0Nnl9x?B4sL3%${3H?v+rxHh?^_?WB!XqjU>z zc{q#6;RrU|x@D_!L$&?U>U5T6A(e7!OaeXnj8CM+7EI~V)#KRVFP)Pf z+E}z{3)^_$x<<0;&Mz!1E-c8$rf^n35;WgaX@kcelhC3Mm2k;HC5&08J*FctSHa{Q zsVrWRIyxOCGANdn=6bZUykZ2=My}=8)gB{Zc}fTO?}z`C?(niYs}g}c2ugm+C?PN? zbwm`~maTSc)5cAlEAph~=I5r=%BM}5Hm5ix-6&`(|CFGXqAu@!-}^WPf2k=Rm*k zf(y<%>r7M1cEu@rLZpsR2ys^9i#QgNi2SNbJW@=#OK4mHOE;MSvK_9jQ1hIApNWS&?cKX~pLyn))WDJbqZ|}ZlWZZ0;Ildr z3Q?iQoz#qmtoTraZ#)(9C)@JIjT;BRwaZou=;GLxo(ZMAQyJ*;zg%~bCdosUg+?i> zmLZO-a#T6tjJny%@I%;x!bYnMl~N#9G6TD}S~Al(SJgmC5^;IaT+BKW8pET9giaZq z^3guJKPwlT@3$a6x`=c>lxa;MGBF=Rb=#6`36&*Yz|a27 z&+Oa3|Kp$d#O__YY4GjUgOWHTc`idlJD~&0b;OW>HN0yAadA@qqR6G4Y9J{zZ$YG6 zI14*-`y= z$km6eU=PemWoBERS%sx|gR=dOm}+8SUV-4c1W)ozmK6KA5|Kt5195s&na{}S zuDty6oe(XNh~@0F&bsH`doS3tXV3ZP%hB$>=bl?X^BLJ*iGCs7Erp$3h^m>7aRUU7 zLiap=hoB{i#3(yKd>r5$UA8>l_V%~SDV}@TW#^xFp7sv^=#S1m`|Nw}x#u|-UU+?0%*vYGXrS%o*)J z4-0iz21~)VVg#i_R~*rL`Sdh(gbvTmjXYwEX(q2@+t#gWkAe^|mBf;7}T`IJ*`y6GlPfX{#73zT$| zvqLv#_~~12x%|1$l~MkwPkl;)^?{ZAZ3UH66;NgR`|@Dewv+W$v;1C9^Kvk5Wi)h9 zrvI)viID{StOa5oRp&-Ja9nHoBFS#msAUP){PrdNWTJ!Y!M(xSglw5|Rmg;^v#j)c_~;$n*IJ z!h@;VZXPd$oAG3R3iC#Gr&CWkWoG?)_J6t)6Efdq)id&*b!GiGvD-CDdL)eoWYmsa z1BlJkh?b&cK7wF}q(rNT4(mO~dG0UOs8=Hmvx(oO} zZ0*y`4IUZ};UD&U8p~kqk;V1Nefv0vLsaO}OD>TKCV`X0HDCYw*MIy+e^l=G`WtT0 zyDrl@goA}bNnIX!^pU#MnOwug7hSY{+qN(!F|vKTy~cz22l$6LIqk&~0Tt4fI>4jnwGqPr6l6#V|v z|Nh^ZhD$I2S(x+%*IXlUutYKt(EA0>Te&i#&u;@zGE8B%KhCn-L zBL~oGjO2?fAbLV0cO_BEzg#B$^&k8o8;8(S zXANs?{44h&LHuWKyKRRGr=;u{NT7fF?YFc3_~L*1Pic%Jm$7x*wtpZz7?zBWE5Z%8 zj^SWvE$|xirrVv^f8c-&ddTICI2g3^N3NHA@wGd@_QfxKNyexoi?WPK?y?GCJ~#IT zG>>wC>pK{5kV0r=9{fmLKR>_l(8CYkefQlmIwcFaaL*nY4Q9CKZ2TzMMwl4M7MuA2 zqXP=H!IvjLl0h#MR35P`y%LHM&l!&+!4@X5#6u4~bQdn*8 zIYzcccM@YlRTdbNNx(wfqTUVA4LOvODD$Fl&_jpdls2i|X*?-T8# ztW)J50uM&LI*v2KjW)mYgbL$FF>fT5+OS~*mi#K~*h;E}ig^7aYNt4soic0O3P(dQ zO-5>eBk|DU;({7{Br}pbN{AuR!ohx8WI}UH>x#Q&O9MqG8d2!u zo|p)duh~H=tsZuNt_K!oFE4xPOUF5%??UQ*2Z$K^CW=OGcm9F!U}PCM-Uv4=K&9q) zbOiI}@y8#RwP|U2kp}1zkgQ^F(Vl!2#!M!EWz-uDttgR>eR*C`sshAqe7-9MXZKriiY+xASC_zKx!sU1?>wq4U6D3~qi+ZIDg4A)s zoJia!N9>Xk7l;w2heExQ!jxmXaOb=Z3m2=CR}YvS7agnpW77zMRg*OIyW^6IG;?vN z)-+v6dJLkds$hqSZkGdsT6=uK?0rTsqvHw?1=%ro?AW0k*e9NpNIm4k`IuxZ?%KKY zq?1mfoIaC-?@BO3@ns2|)=f>N+qaX%AS-&mrcO$qJqe=Zf3naL#gO>C{rd(pmTP(( z`K^N)iR+pj%h$=H|#X zvvLMq>KjY2>B2;kRxk#qcBEH@0W>o`&7_K<9xs5@1XwICm9`k$ViN+zm3Mze{?5Yv zFR3+Um~jSK(PSU_(g4I?g@%M|niuTZlk^m#oN;QkP^QFPVe^sDV!*dc2n}B|l{`ic z3d+18|BiRQ^TG=*IOpuMK!-+togOKyN{0Z zk7_*}-NC6}OznWt5J|t)DUQyxO-)MZM?z5^)WU_Rt*>_ad{^%_h@ zRN*Sdk%0MTgKJRiQK@V5MLANT$Uc+#W&tQPl4M{yWTleZV&)dFzyNsTE+y{S2LYUtE&Ue1* zm9LbGKYZxWr*66B5VSX5`HEK<(Gln=^Tex45+k$90ua(ll=+@Db=)Jb4MZUR9&3t1 zoSLf6g~?E|=t&&%aMZNj2H(5BRPr&Uvz94?whViq+H9X>>21k+8`LReXn z{jLo+P`Q5z8%9K&)=;34XmZ7)c3B`9;$s!f=$QKZ`Wky;v@J5HbcCOJn4(n94ffqdg1#*L*|H2o(@7inS$hX~bhm3MQs8e_EzHrZ;_g{bgl~-O7 zVY=Ml-+cPhXP;~bp?9L@W~=^wIh;D3HqFyzFfW69-LP?`3hS)WtH;Rd%8JCn zv+LJS!&52zp@OUN_~TEko1T`4 zf%W5wZg0hvy3*PoCM{7NlIs~5wh^$LChELkOw%!DYHE^3494kB)jDtYDW}NR@v%>Q zBC?K?PCl86LcDC*$2V`@EEl?nJ~S_5>y|BY*C4H$#`kHbohC~Y^jP#i32n%f{4@#|*4Q;j`cy0V~8m~kI)(FJ5wc%4%d6Af9s z2@{vcnxTdzi`M$}>m^l{$8E0gnx5x~xeN!V)Vs0_Z?`C8MIE4YetwC@L~bg~6&0CL z=0Wo)*Hum4w}fmNjOh>`W&{$l*~Sik?v+aJjHcm%_Mx>xlB947W;rU8jD`q>)_Ar3 zE74&Yh#&@unz@^Ui)3|uTg1rFv9cPq#x=oLaQt{r(@wLR^(`;;ND0T7Ab*zueXzH< zgy#;n;mVXyhQ!wQ%+PN05IUo#Bmaybkg<6wSJfgwz>Ka#7bX&@*pt#up=>^9vSUh_Jopnit&sH#bvz<2A2- zH8<^5V6I5B2>BQ8o)oc(Iz4Bge8=Fc25mRcyb>z7e!GfeZ041BLITcckbOKQ?!8PO}jE|3859X7dWOFI{wk0{K+qsTJ8(jBBC%AOU}{+*lHhYw0#u?|j~<|3{_@=1 z+!a?`arM>D(;|DXFA>iE0|!3#@sF$MKnL6$dg#bM+nx5L_UNYyAlfz3z)%>G@s5(h zKq&&%DnON?sgk*iF&8blPZ>?b9@%Ja5@6F;%Nhr-F(%OkUS(WlD2-&R8)DnaS@|jp zs()EtQWl(S(LgpyLE~5@kbmluLu6r3TG4`v(D~93yt*F_A&8lJPQoC&f@zRyib$a4 zYcOF?IcQ)9fy#Jt?_L>ys)L1t(^Q@)WnI8f9Rq>AL3$?-#myZFF5g@kOa&%YT<|$y zxW>1k@-)rzSn?;Q$xfOc_=%0g#hyHjVec% zs+AjCoYh+}zjE*8$t&+-;8j)?Oj-5!Mnpz|kdQiL_sZyng~?6Iuc=Cae~czP*5cHF zBQH~w@DrnGHM*TH$5Bv7WT*pm*pVlt&`orpXxT;VAqJf>{6m`$QFv+SHarD=D{f=L z;S%}T5TU+yX9$)p4a@sFB~;`FpkAW&bo?lpa91MgZ z_TB>r4rt9l1@49exl0ac`Pst!Ji{PaqE!4_$^R=^#+Zkv_1zovcVeb2grG>W*FFWZ@AG&-h`-- ze9`!f{dRUgI8iAk6GhCBY=6e1=P;3E-|0jFXQv`d#4WJSELq0p^~*t^nO;Oy7f+x- zjjoK9Nc~)4Ga4v5t3RSl7p23@ll!p~Ag+NKK95A753Yl$Q&HuN6tP={WakLRZ%r>M zs{Iy%mj*ZAI=Z{XB*+*r{B(KHu|6|Hg|v}luNgcjYp}HTHBUsj zT_XB5kF*A83N7J0)_V_dbGDar+7x=SZ?6#WFVkd$v}%N~+*Ml^d{>F@>@hU?HNp&? z5-9wnuyIY(y1O|xL=}y}!4ntLVmg&X_1DS;1)Pj3mT_2gDK+C|CuCGlvvL>0t+L7| zq3O|6=3hfF!4cci? z=$*qYY(K2nQYH0me_XRl8v$O54P1WKLNz=HC1kO69(jb&d}1inm;^e08fZ}|E_L~7 zj}O#nPPVf|1^81ov_|8gdh)@WPac%6?n5Zf5xhXqx5L46maZUD(Bifp zGl_}+?Ck8ety?9}l*b#6%!?55qT&*7W)&@qF#-AJ^Q}e?OO{&Uw%W0D)s4t~nM~@h_L+?y?qE;n zM6TMEl8WF_ku6ek?G#@2=*5h6L*ga}OMzEHh(QqliJCzOUWLYg{D`2gkbE0&gC6U~ zT1f(axL9i_J{U;sPF$yHgJRgo(k^3C%iq5DIhhH06-x?QJO*YcRSfU|&09=sU_K?_ zSvNJ+Q-YuN6lLhhKxeC#HlNK_(;a#8gJ2<@eA3BH5c`#N+OW-3J}FxgnhPBZ2eDX1 zvy;_jIpoMu-TY~&GHH(qkBRmB)C0|-OPDj3AiCO2QU?Ru)9_aGL-r&%+S7Kc9r+gL zIN1Y~IJK8YtdYELL=jW{NYoz4T`I6&Vr?Gogk`GDM7j`lDIHTDj4+}-`k*h%VfD34H z7Nu2cRtrkP%2~jT1c_u*?%Txc2UIxl3kB#Yst$%y|B%4}}|b z#F4DQl#Ya`?cn3ja4sbnZA~Be5@QucZ>EaW=mRs4@X|8tU$F1ql- z(@s0h)8(|)qGN4Zk89z^4Aa`m1=pdR#t_^B20A-)A4idFqT6Lw5F8vxftoc)MDy0v zBp3q(jw6J_5t&4r6YY#L^ExA)OLz*sO?gl*Hbi9Ds8-)>VPaUoK#w4AC{|{&ZYhd} z3QB@8G!f4=7_4&iy!$=x`KcGb_?e9!LQ1~liK1v5)0MXnz20aoaRF-J`O|TU_yxOn z)R6!iF|8>+c>;1V8gYM zfvnE7gS|A;;h+RRfOdtZtr6kzZs|=d$C3DCaeiSHB1&nk<3LsG#AO8Kn3BTJ&*&dM zM0sZi4<7u~Ew`L_;z{jxOV%ouR5SVrV1G0cO`5#pPyh54FMoO7ux>);5gVn;tmED3 zn4W|~?JHoNy-cgip~@&Q@`GY9-`QWj_q{*vz5T-SW@45?TzQ0F{>x5!3P)T>^Bl zXVI2P;bEaMLL$*(gPb_ap;0}=+K~bM0y~zf3dU2E@W-aVV-@m>`z`I^t^ALPK@M@{ zi~Rs?#1ZQEYEiEW767hxW!?i^--J6RYhDe6wv6OFtJ5#kuwdP~9%M>Kh^5+Q4w$lq zP6=7IHn~j7)REx64{?|}!-JJ?`K>3OeB$;y?vQ_8@!aR0c;bnw9r;exj=bycyZOnt zz5VU-_bY$?&!Fng(RgM;g8<-HaYC|H{3wUv4S;i!GXMKcmr;J4h+3y)t>ruYJvH=%N?X4kx0Tw~txSS(cbo0ea;E8t4gT z2=UDn9oF7zuL;BfT#AQuBg@F*1+2YvE>|KhLyN+!m|&v_1$+An_bi&tK8h5YUpzWBuxckJM0 z%+Aif^d&znYu}&#*`NLV&;6YBOw#OCuXyF5xx+Vp_`@<@`N`e8cAtChdGCAw`@jFX z?>qn8b3gQvkDPbzx$^xxKKt3{UV5p#+E4#~?Oj`QT-B96x9*nIt&5HB5;(F0R5IaW zjIm>esmc^p6HHR!k_)lpsgTtCsZ`!lRGt!Erf{ek4;PO~YQO;}F@{h$w!w}q3Cpsi zw)=9<$y)1MYn?5@B$WsB6j4RV-Rj=w?6ddU>+-GdJ9X-gojY-ZBO@dK^4Mel`^Fm! z3txEl>8F43;)~yT_E~z1p4?lfPe1(7Lv%}To<2P_HKk{|V*Pln=6Tg z86iQ-gi{{>Jyg1vFEC`6SI|u~A4{H#!)|95~TCdd`3Q_S^6O@sBua7Z(>*NukxkU$mMnRJCZ) z(6>_<4V<8ALdb|SGc$B;l4+?R32iHHtD|G1Km7&1_5gE`z zkrq4U9AMup7x681g=0W#gi*eR8kzSI`@H?)#a|A$T8}^eIGvv~V{gCn&ZCD8(TK0T z{`#GA=tXi<^b2j^hxhHH1NM#I{AO}u0y9aoN;m#Lue?GVfd2W1vuA0a&LNxX=>{AM!(ms)f;44h0eSL zDVaa!TBBZC8e3Ql_^1_5(+u@a(L3Pb>DgSldX<)uHxxw}f<)$y^hFN-sr{C$2p=ggAN0O9*G$xs%%~q0W zl~Jnt0B#%sMyQ*BT}`JAEv%)*MUXSEuCD&~i4&%(*F<15HaeO}Ig?fuHVMli#?f!z zeuq8__keDkhJNhPN8denj?C~kpL~+WrEh!b_;KygUR@0rpOe&LW+o@6+U;AoJbrd% zw6VTUvyF_Itg2|E-JYABV`u%;Dcn@Z9ZL@m_F`^+o}-#>M}uQ4!78}Ti2h6@3)=vA zX)SkX#zJzt;%0LIm5N-5ceV3Fl%=cu?le5bmV$(X(hmDkj45TvA&Yh=vTz5bpMPYy zb(=9W>R&29jv08^`1Q55+ag1532&`yR0%K1lF}l$wzx=BMnmu;EXY|GTJByShzRN3 zO7}kS0G*ZeS+ZF0e9#DtU|{#c0zD_1n(u$_d-VJ9mw)v|;dzAMM`Wp4C@tcV(4MC6 zC%Zzv`y0Z1^yBBBM=6oar$)C8hTY$D_ua=|ewl9ShsXY%JfBm7=ic|wKJ0C{9FmZx zeV!^&5pumooygx4$3xAbA}{}NEN5~_I2Pz?=`fj_ zokbjJ;tLVPv&0=P;Msdb!MYgQhK5u}6dQlUpg8)jGL0kwyqZXfYZMu(&=rG2R@Li5 z`z;Z|W{UDd&dAPnmli>BT4awRU&m0H%T+@#5y~=VG=K}`sAzOK(4YnK-_=)1`sbk2bN4?leHzyU0mg9i@M@AL8?81{d@ z#3A_39Xlo`C&}E_g79qG$kbn?K`Yu6P})5ne+k;tHY_q}uEinZkECm(vp*cd&`Z8dh+hoYu7GczD#4&yEHosyLLe@1OY>p?J-22r^8ji z%tXTcz{S;jY`q22=qyI7RK` z)at~iR}W9!|Fe1!4gbx7u*d;y#KfbRK?9MS{`<3Mzj64mqx~*lxpL;rnI{h)mX3lH zjvpopZB`X`kO2WaP7SHcu(}Wf1T0r2=yV`Cz7;b2uaT7+uabn1y{8QW-QD@N7@>FT=lfYA{~&v-?s z%394P)OOH_KvsQeX^90p<+;)UH#ajwK}?0L;POH0sob7;NoY1Tz^&^3NUJZ%#`x^( z-0o;I3pyYr@#LEa7*TgdxhBU_x~XAx7|V%62$_CyQKVs1TEdwg1JB!ra9*9hwL8T& zzsN$$vVc3swxH)Fh*Zl=-o4=^-dHvpaL$ozX27x?#DY^-;)BL~i^PkfzbQpptoPPh=3or012M%a9P!=Tu43SUt zVr?Aif-wJ#xT#8JEwL#&E)wNq%iXr33@o-uYQxY7F?S!>eJhYLS37!iIB~)dl+vpnrV%G7b~g z_7&xLrtCJ}sE)*{20@Vj* zKLwAMfu%hCg4oDHLyh7?ytq%I45tePSr@dKqBXXHh;bpE9KZFRaOMLIk8{8+P-#u& zebqLM0dV(RoBPmN4NbaQiU*$plE1=~RtJ_@M$~F?Zc-&%1_B-_0+;XKIS`CA22x8` z@Id6|p=FF*N4RRojvmEjbgh948HaD`Pwz+7z%hB>5nOvzjJNcn^8wskB zRSukLMttkCtfW%0L!eXHXr#_#=)fif<_K<_{G@LFT*w8Bhk<%6paH%~9F5~Q-beqK zs)Tpo*;5>zfTym)bHoTlYr;_q#lt>2Yq?ccdAeNiC^1sY*t#?#BSF)GX{TxzvJ0cz zk9`8SVW1G>>6@*vhGRUwn#q($(o|4ysE0E+IA8(`iS-rq<-a`E?lV3pg`^;c7ERx9 zvVa46&y7`!Y2PMrdWEyP=5$89=xZrsnnc`B)<&FJnIkGps#BS7!4PD(;dOQ3?|>s^ z!v+;f?8a&@nEVo`HR|qRjf65yI9RcE9RGHX#tPfZd-) zWWEo9?ak8RFLtOV2|cWB z7|3m{*#aDi%3>!ErH?{QY`WwYA!saAuh$@i!D(yhOrYfq9IUop}a&t@t<|3CL z)Y^{hkV+N_9g;@N#XZEJMwP@Glk9ThNeX=8&qdw{1EZHqBfbOE6!j|3u~%-Tyvh#G z?96n?XAQ?1i@IxsM{v`lfK0t~9bhZd1kE1^$PiPqcd4Do-bB@UY`d^%k~W9p+3?Busfxp;^1Z!mJE?^RmheT zE?|3va%tWX<_|8lzC^`niBup^nSR1>9Bg%KNHUU()n?KFhI!C)LWZ4|c`VTg%iwV5 zXcSk_ivVcO2_G(?sC(^O3a%jzN~CY;3;4i9U@nNL)FQLOsF6GqkM?8{h0Lur7y{>! zNdqaLsg&GGK~5qz~|3;5{Qpj_^r2Xss&^vzi2?OHpvfI+PbDJ#ryv43D7rY&^r3 zdQ#$I2U^;F6^7&I?J9u^W1(xcx?%FHOLJggu;O8qVFwxwkbUAYuisc*zW#|CEpv9A zAVKM0jD$Paj*ZAxl29vJsvlEt-13FHl0n#4DjB|#;+CQ3=k3kywu5FI zRr#sdfW0{l8Y#wq>yp-$K7>&gnt>_Y$SH-iJZ##38yg#!KKkgwg$p;=)~eaq%u!r! zk$`ljJaEoucw2+6n z-27f}eW5sJ9Nq}XKO`X`kuh7V_B#96h2T5Vu({C1DJfcASy{P!<;tZ?m)1ood+W7s z5$W6_>iO4cthY#GI*fg@(&uL|T-(>ipE)l9%XY=Jy+sgo6YsWqZJQXnef`80{d`62 z5vc%AM|dI0g(D7_%2H83!oa9KZ*EpyXvJ_5fu#<% zxG{--dXzYzFc>TwF4eR_H{3f3vhv5}Ga`T2!i zyXIzR;kc9Onx2>tN^SOpO06~W`YeR|rEjbODd-8RkWzS0Idz>zNrXll^y7dwqHvTC zx=ySaNA>L`c+%Es%L(Szkqz>EZKyN#8;(jOy`U_IE^q}W#rVY`I0{w6Ly1ih?@pLa{C ze=r~z1V~VHz57Wv8}1!UQl-^gwqc-DL|9>lYTR5GJ8LJy$ho-KH?2uw_qUe$9JGp( z2m)eJL8G8ewK$ta-ISC!kUa%mo+bMSg(fzj4J{mUf|^6YIPfN_Z#Qpps~ug`&K+Y6 z?ZWI#OiqqZPEL%EgOMY$G65D@0+vQejxv!-5_egitY2Wk#I&pWSnAr!DvYO^C@}g~ zJs%|0MZgY^iayJC#e5(QF)ExB>4_*xWX^mh$(BaFCe5#Lnhk~0%%!X_D6a5C3u0Lm z_7Vq(x&ju1byJh&Vb(~Bj1>sfV@OE?GHyFPBB>~89NZJTf>v&%`7`H+mPQX0+XoxK zCM0fw3be+Uh%Ul%Bt)_QBda@Zh+K25gqvhsVux)-7SQL_i60@aJbuR=+cS`EZwYlE zg;#~Ym>JP?tqC%!a9FP>R5EFEEh}xAYL3Nn40wEOTLt0BcoQ~EoU#K?53+UAsw^;I z6V3FE;i?&+3jmUDaB!gAZqqwsqhs;YPkk#Yy*!zYjEs`wE?iR)ZYC4snX2?Amt{p& zS%_ij`pUf5VWKa$D^k1*1hG%WoPZ)$ zgk%#D6316bL78!2=-SGqH6+Jr3%XO8KAliGL;6y$z0J`&GOmnx%lLHWG3kC2`Q`+v zE;>&J252j?z)-GKL_JaZM4DNjw6RE|I;)O^5wWKx8?Pcn8fr_=CBK!^w!;ZVch{jA zHVqd9&j#a(-Mvkf@t=8&={0B%ZNoq^Ln^CeVms`pAc1Q`X%deiPH8*<(I~P$LXnFP zikJeK(afp(m5W?}WibTr;j9~Tn`GG|I7lIRI{pCX6@;HMX_Lh%O$+4u^_8B;WoN0i z{Uf7%{rYtzZJlw!9agw83L-#K*&KSHR-pZW9fGv00RVL>OUZ}>Kh!q{JS`Cea~Hdx z9pumCw7`0DK><|kWb3O}1aW61PvO-#iKH__fTut)TTw;a2m;jD@V&7tWybVbQ!s6e z^|eF~5;1{3EoGqL;{t+!0C~qMY^s)fjr+v~?)>_3G&yMpVBE3Ik^?_2B86nCTBWhE zvF#ZMd?%>*xH4;Dbr}N}D03jX3q0I(u3Trk2=j?(5b+v9Y(UP`$d&vVMU{vw)DY6J z;niuR;=p0XBV({wVWmv~KA}UzfuqD*g%LF=gcW;HBjQ4sMEhDWTU%3R4pSPEFgY_t zbwD!cJ4;jOO&r1J#Up%`GrL+@l-Idb#B^DEtpK%sl!bzbHuf$dg~%f5uG(~)7=ztZ zIG?D&UkjHD&aJ`+geD#sBW4pNZV^)TJ^M1oGfxnQU$^r3|TT`;C4#8)Quk9zu&uIw51TmEFqA9 zp@e8=VJa13Ow&m9R!bDQ9D5Qbb{y25StE&3UX@@!6Ue292wDYo?sl9Y)_Uyl#+qa# zaM79cwxsCdl(pNaH=NS3FOELUIcv+HoF*~>*pTgZ7XVsDv00Cwmqi&jo24!V!(NOr zCioeruUOs&F{r>W3UGZX4YY_ESf(se?kg>SMb^U=qXUNC?HD%QU=BSs@cdPDQgc=z z7Yads263cC_<*@PvAi22s6o;q8lpm`o}rHso^cvzjyoV05M>z5%z_{K<;Lpj_6&rj zR&|jYJxSl1wp?OKnciRlBh7RtuC;Ac;P`lAC};=6g!hsc-MDY^4VFKJgkEBNSRsWL zD{I`o4cd<=0IkI6+`*9n@g-o&!CMOrXxUp_u@@L{65Dok%0kB{Vj^(wSa2c1T5jMi zkimNrDzSX3?uWv;`U~J6D-!3(^RH1EG3+{dg6!+8g#_Lq+0g3K3u8a~L93Vco4*Zb*=% qI#0rOf{OSOj+5n@3R|Ugd4B;|g0-`MmO@Sd0000 - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "engine.h" -#include "note_play_handle.h" - -#include "fmvoices_instrument.h" -#include "fmvoices_instrument_view.h" -#include "fmvoices_processor.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embedded_resources.h" - - -extern "C" -{ - -plugin::descriptor fmvoices_plugin_descriptor = -{ - STRINGIFY_PLUGIN_NAME( PLUGIN_NAME ), - "FM Voices", - QT_TRANSLATE_NOOP( "pluginBrowser", - "Voice noises" ), - "Danny McRae ", - 0x0100, - plugin::Instrument, - new pluginPixmapLoader( "logo" ), - NULL -} ; - -} - - -fmvoicesInstrument::fmvoicesInstrument( instrumentTrack * _channel_track ): - stkInstrument( _channel_track, &fmvoices_plugin_descriptor ) -{ - model()->vowel()->setTrack( _channel_track ); - model()->spectralTilt()->setTrack( _channel_track ); - model()->lfoSpeed()->setTrack( _channel_track ); - model()->lfoDepth()->setTrack( _channel_track ); - model()->adsrTarget()->setTrack( _channel_track ); -} - - - - -fmvoicesInstrument::~fmvoicesInstrument() -{ -} - - - - -QString fmvoicesInstrument::nodeName( void ) const -{ - return( fmvoices_plugin_descriptor.name ); -} - - - - -pluginView * fmvoicesInstrument::instantiateView( QWidget * _parent ) -{ - return( new fmvoicesInstrumentView( this, _parent ) ); -} - - - - -extern "C" -{ - -// neccessary for getting instance out of shared lib -plugin * lmms_plugin_main( model * _model, void * _data ) -{ - return( new fmvoicesInstrument( static_cast( _data ) ) ); -} - - -} - - diff --git a/plugins/stk/voices/fmvoices/fmvoices_instrument.h b/plugins/stk/voices/fmvoices/fmvoices_instrument.h deleted file mode 100644 index d24046d06..000000000 --- a/plugins/stk/voices/fmvoices/fmvoices_instrument.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _FMVOICES_INSTRUMENT_H -#define _FMVOICES_INSTRUMENT_H - -#include "stk_instrument.h" - -#include "fmvoices_processor.h" -#include "fmvoices_model.h" - - -class fmvoicesInstrument : public stkInstrument -{ -public: - fmvoicesInstrument( instrumentTrack * _channel_track ); - virtual ~fmvoicesInstrument( void ); - - QString nodeName( void ) const; - - pluginView * instantiateView( QWidget * _parent ); -}; - -#endif diff --git a/plugins/stk/voices/fmvoices/fmvoices_instrument_view.cpp b/plugins/stk/voices/fmvoices/fmvoices_instrument_view.cpp deleted file mode 100644 index 59808bb9b..000000000 --- a/plugins/stk/voices/fmvoices/fmvoices_instrument_view.cpp +++ /dev/null @@ -1,110 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include -#include -#include - -#include "fmvoices_instrument_view.h" - -#include -#include - -#include "engine.h" -#include "gui_templates.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embed.cpp" - - -fmvoicesInstrumentView::fmvoicesInstrumentView( fmvoicesInstrument * _instrument, QWidget * _parent ) : - stkInstrumentView( _instrument, _parent ) -{ - QVBoxLayout * vl = new QVBoxLayout( m_topView ); - QHBoxLayout * h1 = new QHBoxLayout(); - QHBoxLayout * h2 = new QHBoxLayout(); - QHBoxLayout * h3 = new QHBoxLayout(); - - - m_vowel = new knob( knobSmall_17, m_topView, tr( "Vowel" ) ); - m_vowel->setLabel( tr( "Vowel" ) ); - m_vowel->setHintText( tr( "Vowel:" ) + " ", "" ); - - m_spectralTilt = new knob( knobSmall_17, m_topView, tr( "Tilt" ) ); - m_spectralTilt->setLabel( tr( "Spectral Tilt" ) ); - m_spectralTilt->setHintText( tr( "Tilt:" ) + " ", "" ); - - m_lfoSpeed = new knob( knobSmall_17, m_topView, tr( "LFO Speed" ) ); - m_lfoSpeed->setLabel( tr( "LFO Speed" ) ); - m_lfoSpeed->setHintText( tr( "LFO Speed:" ) + " ", "" ); - - m_lfoDepth = new knob( knobSmall_17, m_topView, tr( "LFO Depth" ) ); - m_lfoDepth->setLabel( tr( "LFO Depth" ) ); - m_lfoDepth->setHintText( tr( "LFO Depth:" ) + " ", "" ); - - m_adsrTarget = new knob( knobSmall_17, m_topView, tr( "ADSR Target" ) ); - m_adsrTarget->setLabel( tr( "ADSR Target" ) ); - m_adsrTarget->setHintText( tr( "ADSR Target:" ) + " ", "" ); - - h1->addWidget( m_vowel ); - h1->addWidget( m_spectralTilt ); - - h2->addWidget( m_lfoSpeed ); - h2->addWidget( m_lfoDepth ); - - h3->addWidget( m_adsrTarget ); - - vl->addLayout( h1 ); - vl->addLayout( h2 ); - vl->addLayout( h3 ); - - setAutoFillBackground( TRUE ); - QPalette pal; - pal.setBrush( backgroundRole(), PLUGIN_NAME::getIconPixmap( "artwork" ) ); - setPalette( pal ); -} - - - - -fmvoicesInstrumentView::~fmvoicesInstrumentView() -{ -} - - - - -void fmvoicesInstrumentView::modelChanged( void ) -{ - stkInstrumentView::modelChanged(); - - fmvoicesInstrument * inst = castModel(); - m_vowel->setModel( inst->model()->vowel() ); - m_spectralTilt->setModel( inst->model()->spectralTilt() ); - m_lfoSpeed->setModel( inst->model()->lfoSpeed() ); - m_lfoDepth->setModel( inst->model()->lfoDepth() ); - m_adsrTarget->setModel( inst->model()->adsrTarget() ); -} - - - diff --git a/plugins/stk/voices/fmvoices/fmvoices_instrument_view.h b/plugins/stk/voices/fmvoices/fmvoices_instrument_view.h deleted file mode 100644 index 233e949c6..000000000 --- a/plugins/stk/voices/fmvoices/fmvoices_instrument_view.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _FMVOICES_INSTRUMENT_VIEW_H -#define _FMVOICES_INSTRUMENT_VIEW_H - -#include "knob.h" - -#include "stk_instrument_view.h" -#include "fmvoices_instrument.h" - - -class fmvoicesInstrumentView: public stkInstrumentView -{ -public: - fmvoicesInstrumentView( fmvoicesInstrument * _instrument, QWidget * _parent ); - virtual ~fmvoicesInstrumentView( void ); - -private: - virtual void modelChanged( void ); - - knob * m_vowel; - knob * m_spectralTilt; - knob * m_lfoSpeed; - knob * m_lfoDepth; - knob * m_adsrTarget; -}; - -#endif diff --git a/plugins/stk/voices/fmvoices/fmvoices_model.cpp b/plugins/stk/voices/fmvoices/fmvoices_model.cpp deleted file mode 100644 index ab3adea19..000000000 --- a/plugins/stk/voices/fmvoices/fmvoices_model.cpp +++ /dev/null @@ -1,88 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "fmvoices_model.h" - - -fmvoicesModel::fmvoicesModel( bool _monophonic, - StkFloat _portamento, - StkFloat _bend, - StkFloat _bend_range, - bool _velocity_sensitive_lpf, - StkFloat _velocity_sensitive_q, - StkFloat _volume, - StkFloat _pan, - StkFloat _spread, - StkFloat _vowel, - StkFloat _spectral_tilt, - StkFloat _lfo_speed, - StkFloat _lfo_depth, - StkFloat _adsr_target ): - stkModel( _monophonic, _portamento, _bend, _bend_range, _velocity_sensitive_lpf, _velocity_sensitive_q, _volume, _pan, _spread ), - m_vowel( new floatModel( _vowel, 0.0f, 128.0f, 0.1f, this ) ), - m_spectralTilt( new floatModel( _spectral_tilt, 0.0f, 128.0f, 0.1f, this ) ), - m_lfoSpeed( new floatModel( _lfo_speed, 0.0f, 128.0f, 0.1f, this ) ), - m_lfoDepth( new floatModel( _lfo_depth, 0.0f, 128.0f, 0.1f, this ) ), - m_adsrTarget( new floatModel( _adsr_target, 0.0f, 128.0f, 0.1f, this ) ) -{ -} - - - - -fmvoicesModel::~fmvoicesModel() -{ - delete m_vowel; - delete m_spectralTilt; - delete m_lfoSpeed; - delete m_lfoDepth; - delete m_adsrTarget; -} - - - - -void fmvoicesModel::saveSettings( QDomDocument & _doc, QDomElement & _parent ) -{ - stkModel::saveSettings( _doc, _parent ); - m_vowel->saveSettings( _doc, _parent, "vowel" ); - m_spectralTilt->saveSettings( _doc, _parent, "spectraltilt" ); - m_lfoSpeed->saveSettings( _doc, _parent, "lfospeed" ); - m_lfoDepth->saveSettings( _doc, _parent, "lfodepth" ); - m_adsrTarget->saveSettings( _doc, _parent, "adsrtarget" ); -} - - - - -void fmvoicesModel::loadSettings( const QDomElement & _this ) -{ - stkModel::loadSettings( _this ); - m_vowel->loadSettings( _this, "vowel" ); - m_spectralTilt->loadSettings( _this, "spectraltilt" ); - m_lfoSpeed->loadSettings( _this, "lfospeed" ); - m_lfoDepth->loadSettings( _this, "lfodepth" ); - m_adsrTarget->loadSettings( _this, "adsrtarget" ); -} - diff --git a/plugins/stk/voices/fmvoices/fmvoices_model.h b/plugins/stk/voices/fmvoices/fmvoices_model.h deleted file mode 100644 index c99834f36..000000000 --- a/plugins/stk/voices/fmvoices/fmvoices_model.h +++ /dev/null @@ -1,86 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _FMVOICES_MODEL_H -#define _FMVOICES_MODEL_H - -#include "stk_model.h" - - -class fmvoicesModel: public stkModel -{ -public: - fmvoicesModel( bool _monophonic = FALSE, - StkFloat _portamento = 0.0f, - StkFloat _bend = 0.0f, - StkFloat _bend_range = 2.0f, - bool _velocity_sensitive_lpf = TRUE, - StkFloat _velocity_sensitive_q = 0.5f, - StkFloat _volume = 1.0f, - StkFloat _pan = 0.0f, - StkFloat _spread = 0.0f, - StkFloat _vowel = 64.0f, - StkFloat _spectral_tilt = 64.0f, - StkFloat _lfo_speed = 64.0f, - StkFloat _lfo_depth = 64.0f, - StkFloat _adsr_target = 64.0f ); - ~fmvoicesModel(); - - inline floatModel * vowel( void ) const - { - return( m_vowel ); - } - - inline floatModel * spectralTilt( void ) const - { - return( m_spectralTilt ); - } - - inline floatModel * lfoSpeed( void ) - { - return( m_lfoSpeed ); - } - - inline floatModel * lfoDepth( void ) const - { - return( m_lfoDepth ); - } - - inline floatModel * adsrTarget( void ) const - { - return( m_adsrTarget ); - } - - void saveSettings( QDomDocument & _doc, QDomElement & _parent ); - - void loadSettings( const QDomElement & _this ); - -private: - floatModel * m_vowel; - floatModel * m_spectralTilt; - floatModel * m_lfoSpeed; - floatModel * m_lfoDepth; - floatModel * m_adsrTarget; -}; - -#endif diff --git a/plugins/stk/voices/fmvoices/fmvoices_processor.cpp b/plugins/stk/voices/fmvoices/fmvoices_processor.cpp deleted file mode 100644 index ee470f736..000000000 --- a/plugins/stk/voices/fmvoices/fmvoices_processor.cpp +++ /dev/null @@ -1,51 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include "fmvoices_processor.h" -#include "config_mgr.h" - - -fmvoicesProcessor::fmvoicesProcessor( sample_rate_t _sample_rate ): - stkProcessor( _sample_rate ) -{ -} - - - - -fmvoicesProcessor::~fmvoicesProcessor() -{ -} - - - - -void fmvoicesProcessor::setControls( fmvoicesModel * _model ) -{ - voice()->controlChange( 2, _model->vowel()->value() ); - voice()->controlChange( 4, _model->spectralTilt()->value() ); - voice()->controlChange( 11, _model->lfoSpeed()->value() ); - voice()->controlChange( 1, _model->lfoDepth()->value() ); - voice()->controlChange( 128, _model->adsrTarget()->value() ); - m_delayRead = m_delayWrite - static_cast( _model->spread()->value() ); -} diff --git a/plugins/stk/voices/fmvoices/fmvoices_processor.h b/plugins/stk/voices/fmvoices/fmvoices_processor.h deleted file mode 100644 index 9c46047f3..000000000 --- a/plugins/stk/voices/fmvoices/fmvoices_processor.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _FMVOICES_PROCESSOR_H -#define _FMVOICES_PROCESSOR_H - -#include "FMVoices.h" - -#include "stk_processor.h" - -#include "fmvoices_model.h" - -class fmvoicesProcessor: public stkProcessor -{ -public: - fmvoicesProcessor( sample_rate_t _sample_rate ); - ~fmvoicesProcessor( void ); - - void setControls( fmvoicesModel * _model ); -}; - -#endif diff --git a/plugins/stk/voices/fmvoices/logo.png b/plugins/stk/voices/fmvoices/logo.png deleted file mode 100644 index 93fcd1746131e93516a5c85394decef1d7df2561..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 659 zcmV;E0&M+>P)BB%v^%K{!OpGvZ5fKp)5fL#?O|eA$Le0=`hnTRw z&NAP2XGBCqM8p+UMnyzKL_|cyXEn``*j+PR>3}$HZJnjhUh$2`EjM4U%iQEaZ~461 zxJr!GENm6e*Pq$3&r@7UEwPH`r!hUf_O>>uVvDczH&-Y?!b>wOBYBlI{ z+N8^CiYH8nclFf;eisX>Bkzfas=+Gpb(LP*#H44doe}Y|>#GCbikqv!M)9TryTnQB z>SET5h(lg>pJg>GmpbD&bF0BlvB|JFYGuvFo%Wa%5i#Nwi|Zn85r=CQM#QK%=IZ)u z78$bHN5(`Px4PPROuSPKmWVMcoe~dJXL_wMEcR6!+r`FeFeG+Wc~tyrMg1L?i<8yH z0dadZ*eaf@Dc%;}8K}><6$h(@LGe>H=yTc`12xSx z#>7+A%4YXe8w(v4PgV=}iw~>8D)Cj#aJNYlZmSC%5MO%4b>`?dXoH`{uzA(OOX7uU zuu;5GEo>5_7T0;kMMOkI#6e4|ja}m2YOqs0TrIF$>@%m%af1zZ7&d0Y2}itdolEK> tj*4rm!H5{FHWvCpY^$!WuCD)&KLEu%@0qNKIFkSX002ovPDHLkV1i3NG93T_ diff --git a/plugins/stk/voices/include/stk_instrument.h b/plugins/stk/voices/include/stk_instrument.h deleted file mode 100644 index a88681947..000000000 --- a/plugins/stk/voices/include/stk_instrument.h +++ /dev/null @@ -1,168 +0,0 @@ -/* - * stk_instrument.h - base class for stk interfaces to lmms - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _STK_INSTRUMENT_H -#define _STK_INSTRUMENT_H - -#include "instrument.h" - -#include "stk_voice.h" - - -template -class stkInstrument : public instrument -{ -public: - stkInstrument( instrumentTrack * _channel_track, - const descriptor * _descriptor, - Uint8 _polyphony = 64 ); - virtual ~stkInstrument(); - - void playNote( notePlayHandle * _n, bool _try_parallelizing, sampleFrame * _buf ); - - void deleteNotePluginData( notePlayHandle * _n ); - - void saveSettings( QDomDocument & _doc, QDomElement & _parent ); - - void loadSettings( const QDomElement & _this ); - - MODEL * model( void ) const; - - void setMissingFile( bool _state ); - -private: - MODEL * m_model; - - stkVoice * m_voice; - - sampleFrame * m_buffer; - fpp_t m_frames; -}; - - - - -template -stkInstrument::stkInstrument( - instrumentTrack * _channel_track, - const descriptor * _descriptor, - Uint8 _polyphony ): - instrument( _channel_track, _descriptor ), - m_model( new MODEL() ), - m_voice( new stkVoice( _polyphony ) ), - m_buffer( new sampleFrame[engine::getMixer()->framesPerPeriod()] ) -{ - m_model->monophonic()->setTrack( _channel_track ); - m_model->portamento()->setTrack( _channel_track ); - m_model->bend()->setTrack( _channel_track ); - m_model->bendRange()->setTrack( _channel_track ); - m_model->velocitySensitiveLPF()->setTrack( _channel_track ); - m_model->velocitySensitiveQ()->setTrack( _channel_track ); - m_model->volume()->setTrack( _channel_track ); - m_model->pan()->setTrack( _channel_track ); - m_model->releaseTriggered()->setTrack( _channel_track ); - m_model->randomizeAttack()->setTrack( _channel_track ); - m_model->randomizeLength()->setTrack( _channel_track ); - m_model->randomizeVelocityAmount()->setTrack( _channel_track ); - m_model->randomizeFrequencyAmount()->setTrack( _channel_track ); - m_model->spread()->setTrack( _channel_track ); -} - - - - -template -stkInstrument::~stkInstrument() -{ - delete m_voice; - delete m_model; -} - - - - -template -inline void stkInstrument::playNote( - notePlayHandle * _n, - bool _try_parallelizing, - sampleFrame * _buf ) -{ - m_frames = _n->framesLeftForCurrentPeriod(); - - m_voice->playNote( _n, m_model, _buf, m_frames ); - getInstrumentTrack()->processAudioBuffer( _buf, m_frames, _n ); -} - - - - -template -inline void stkInstrument::deleteNotePluginData( - notePlayHandle * _n ) -{ - static_cast( _n->m_pluginData )->setActive( FALSE ); - _n->m_pluginData = NULL; -} - - - - -template -void stkInstrument::saveSettings( - QDomDocument & _doc, - QDomElement & _parent ) -{ - m_model->saveSettings( _doc, _parent ); -} - - - - -template -inline void stkInstrument::loadSettings( - const QDomElement & _this ) -{ - m_model->loadSettings( _this ); -} - - - - -template -inline MODEL * stkInstrument::model( void ) const -{ - return( m_model ); -} - - - - -template -inline void stkInstrument::setMissingFile( bool _state ) -{ - m_voice->setMissingFile( _state ); -} - - -#endif diff --git a/plugins/stk/voices/include/stk_instrument_view.h b/plugins/stk/voices/include/stk_instrument_view.h deleted file mode 100644 index dc161d3d7..000000000 --- a/plugins/stk/voices/include/stk_instrument_view.h +++ /dev/null @@ -1,181 +0,0 @@ -/* - * stk_instrument_view.h - base class for stk gui interfaces - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _STK_INSTRUMENT_VIEW_H -#define _STK_INSTRUMENT_VIEW_H - -#include -#include - -#include "config_mgr.h" -#include "instrument_view.h" -#include "led_checkbox.h" -#include "tempo_sync_knob.h" - - -template -class stkInstrumentView: public instrumentView -{ -public: - stkInstrumentView( INSTRUMENT * _instrument, QWidget * _parent ); - virtual ~stkInstrumentView(); - -protected: - virtual void modelChanged( void ); - - QWidget * m_topView; - ledCheckBox * m_monophonic; - tempoSyncKnob * m_portamento; - knob * m_bend; - knob * m_bendRange; - ledCheckBox * m_velocitySensitiveLPF; - knob * m_velocitySensitiveQ; - knob * m_volume; - knob * m_pan; - ledCheckBox * m_releaseTriggered; - ledCheckBox * m_randomizeAttack; - tempoSyncKnob * m_randomizeLength; - knob * m_randomizeVelocityAmount; - knob * m_randomizeFrequencyAmount; - knob * m_spread; -}; - - -template -stkInstrumentView::stkInstrumentView( INSTRUMENT * _instrument, - QWidget * _parent ): - instrumentView( _instrument, _parent ) -{ - bool filesMissing = - !QDir( configManager::inst()->stkDir() ).exists() || - !QFileInfo( configManager::inst()->stkDir() + - QDir::separator() + - "sinewave.raw" ).exists(); - - if( filesMissing ) - { - QMessageBox::information( 0, tr( "Missing files" ), - tr( "Your Stk-installation seems to be " - "incomplete. Please make sure " - "the full Stk-package is installed!" ), - QMessageBox::Ok ); - } - - _instrument->setMissingFile( filesMissing ); - - m_topView = new QWidget( this ); - m_topView->setGeometry( 6, 51, 237, 100 ); - - m_monophonic = new ledCheckBox( tr( "" ), this ); - m_monophonic->move( 115, 206 ); - - m_portamento = new tempoSyncKnob( knobSmall_17, this, - tr( "Portamento" ) ); - m_portamento->setHintText( tr( "Portamento:" ) + " ", "ms" ); - m_portamento->move( 19, 218 ); - - m_bend = new knob( knobSmall_17, this, tr( "Bend" ) ); - m_bend->setHintText( tr( "Bend:" ) + " ", " half steps" ); - m_bend->move( 12, 190 ); - - m_velocitySensitiveLPF = new ledCheckBox( tr( "" ), this ); - m_velocitySensitiveLPF->move( 13, 165 ); - - m_velocitySensitiveQ = new knob( knobSmall_17, this, tr( "Q" ) ); - m_velocitySensitiveQ->setHintText( tr( "Q:" ) + " ", "" ); - m_velocitySensitiveQ->move( 74, 164 ); - - m_bendRange = new knob( knobSmall_17, this, tr( "Range" ) ); - m_bendRange->setHintText( tr( "Range:" ) + " ", - " " + tr( "half steps" ) ); - m_bendRange->move( 55, 190 ); - - m_volume = new knob( knobSmall_17, this, tr( "Volume" ) ); - m_volume->setHintText( tr( "Volume:" ) + " ", "" ); - m_volume->move( 158, 16 ); - - m_pan = new knob( knobSmall_17, this, tr( "Pan" ) ); - m_pan->setHintText( tr( "Pan:" ) + " ", "" ); - m_pan->move( 181, 16 ); - - m_releaseTriggered = new ledCheckBox( tr( "" ), this ); - m_releaseTriggered->move( 115, 222 ); - - m_randomizeAttack = new ledCheckBox( tr( "" ), this ); - m_randomizeAttack->move( 110, 166 ); - - m_randomizeLength = new tempoSyncKnob( knobSmall_17, this, - tr( "Length" ) ); - m_randomizeLength->setHintText( tr( "Length:" ) + " ", "ms" ); - m_randomizeLength->move( 197, 180 ); - - m_randomizeVelocityAmount = new knob( knobSmall_17, this, - tr( "Velocity" ) ); - m_randomizeVelocityAmount->setHintText( tr( "Velocity:" ) + " ", "" ); - m_randomizeVelocityAmount->move( 123, 180 ); - - m_randomizeFrequencyAmount = new knob( knobSmall_17, this, - tr( "Frequency" ) ); - m_randomizeFrequencyAmount->setHintText( tr( "Frequency:" ) + " ", - " " + tr( "half steps" ) ); - m_randomizeFrequencyAmount->move( 158, 180 ); - - m_spread = new knob( knobSmall_17, this, tr( "Spread" ) ); - m_spread->setHintText( tr( "Spread:" ) + " ", "" ); - m_spread->move( 212, 16 ); -} - - - - -template -stkInstrumentView::~stkInstrumentView() -{ -} - - - - -template -void stkInstrumentView::modelChanged() -{ - INSTRUMENT * inst = castModel(); - m_monophonic->setModel( inst->model()->monophonic() ); - m_portamento->setModel( inst->model()->portamento() ); - m_bend->setModel( inst->model()->bend() ); - m_bendRange->setModel( inst->model()->bendRange() ); - m_velocitySensitiveLPF->setModel( inst->model()->velocitySensitiveLPF() ); - m_velocitySensitiveQ->setModel( inst->model()->velocitySensitiveQ() ); - m_volume->setModel( inst->model()->volume() ); - m_pan->setModel( inst->model()->pan() ); - m_releaseTriggered->setModel( inst->model()->releaseTriggered() ); - m_randomizeAttack->setModel( inst->model()->randomizeAttack() ); - m_randomizeLength->setModel( inst->model()->randomizeLength() ); - m_randomizeVelocityAmount->setModel( inst->model()->randomizeVelocityAmount() ); - m_randomizeFrequencyAmount->setModel( inst->model()->randomizeFrequencyAmount() ); - m_spread->setModel( inst->model()->spread() ); -} - - -#endif diff --git a/plugins/stk/voices/include/stk_model.h b/plugins/stk/voices/include/stk_model.h deleted file mode 100644 index 7a67c89a5..000000000 --- a/plugins/stk/voices/include/stk_model.h +++ /dev/null @@ -1,184 +0,0 @@ -/* - * stk_model.h - base class for stk instrument models - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _STK_MODEL_H -#define _STK_MODEL_H - -#include "Instrmnt.h" - -#include "automatable_model.h" -#include "basic_filters.h" - - -class stkModel: public model -{ -public: - stkModel( bool _monophonic = FALSE, - StkFloat _portamento = 0.0f, - StkFloat _bend = 0.0f, - StkFloat _bend_range = 2.0f, - bool _velocity_sensitive_lpf = TRUE, - StkFloat _velocity_sensitive_q = 0.5f, - StkFloat _volume = 1.0f, - StkFloat _pan = 0.0f, - bool _release_triggered = FALSE, - bool _randomize_attack = FALSE, - StkFloat _randomize_length = 0.0f, - StkFloat _randomize_velocity_amount = 0.5f, - StkFloat _randomize_frequency_amount = 0.5f, - StkFloat _spread = 0.0f ); - virtual ~stkModel(); - - // Indicates whether or not the instrument should use multiple voices - // when generating the signal. - inline boolModel * monophonic( void ) const - { - return( m_monophonic ); - } - - // Stores the time in ms over which a note will slide from the previous - // frequency. - inline floatModel * portamento( void ) const - { - return( m_portamento ); - } - - // Stores the pitch bend setting. Scaled by bendRange. - inline floatModel * bend( void ) const - { - return( m_bend ); - } - - // Stores the range in half steps over which a note can be bent. - inline floatModel * bendRange( void ) const - { - return( m_bendRange ); - } - - // Indicates whether or not to apply a low pass filter to the notes - // where the cutoff frequency is scaled by the notes' velocities. - inline boolModel * velocitySensitiveLPF( void ) const - { - return( m_velocitySensitiveLPF ); - } - - // Stores the Q value for the low pass filter. - inline floatModel * velocitySensitiveQ( void ) const - { - return( m_velocitySensitiveQ ); - } - - // Stores the volume setting for the voice. - inline floatModel * volume( void ) const - { - return( m_volume ); - } - - // Stores the pan setting for the voice. - inline floatModel * pan( void ) const - { - return( m_pan ); - } - - // Indicates whether or not only the release portion of the envelope - // should be played. - inline boolModel * releaseTriggered( void ) const - { - return( m_releaseTriggered ); - } - - // Indicates whether or not random offsets should be generated for - // the volume and pitch. The offsets will move linearly to - // zero over the length of time defined by randomizeLength. - inline boolModel * randomizeAttack( void ) const - { - return( m_randomizeAttack ); - } - - // Stores the length of time in ms over which random offsets should - // be applied. - inline floatModel * randomizeLength( void ) const - { - return( m_randomizeLength ); - } - - // Stores the range for the random offset generated for the - // volume of a note. - inline floatModel * randomizeVelocityAmount( void ) const - { - return( m_randomizeVelocityAmount ); - } - - // Stores the range in half steps for the random offset generated - // for the pitch of a note. - inline floatModel * randomizeFrequencyAmount( void ) const - { - return( m_randomizeFrequencyAmount ); - } - - // Sets a delay for the right channel. Provides a quick and dirty - // way to create a stereo spread effect. - inline floatModel * spread( void ) const - { - return( m_spread ); - } - - // Calculates the amount to scale a frequency in order to provide - // a "bend" in a note. - inline float bendScaler() const - { - return( pow( 2.0f, ( m_bendRange->value() * m_bend->value() / - 49152.0f ) ) ); - } - - // Generates a random number between -1.0 and 1.0. - inline float offset( void ) const - { - return( 2.0f * ( static_cast( rand() ) / - static_cast( RAND_MAX ) - 0.5f ) ); - } - - virtual void saveSettings( QDomDocument & _doc, QDomElement & _parent ); - virtual void loadSettings( const QDomElement & _this ); - -private: - boolModel * m_monophonic; // multiple voice indicator - floatModel * m_portamento; // time for slide between notes - floatModel * m_bend; // bend state of note - floatModel * m_bendRange; // range of bend in half steps - boolModel * m_velocitySensitiveLPF; // turns on a LPF - floatModel * m_velocitySensitiveQ; // Q setting for the LPF - floatModel * m_volume; // volume of the voice - floatModel * m_pan; // pan position of the voice - boolModel * m_releaseTriggered; // only play release - boolModel * m_randomizeAttack; // turns on randomization - floatModel * m_randomizeLength; // time for randomization - floatModel * m_randomizeVelocityAmount; // velocity randomization - floatModel * m_randomizeFrequencyAmount;// pitch randomization - floatModel * m_spread; // stereo width -}; - - - -#endif diff --git a/plugins/stk/voices/include/stk_processor.h b/plugins/stk/voices/include/stk_processor.h deleted file mode 100644 index d9ae72d4f..000000000 --- a/plugins/stk/voices/include/stk_processor.h +++ /dev/null @@ -1,363 +0,0 @@ -/* - * stk_processor.h - base class for stk sound generators - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _STK_PROCESSOR_H -#define _STK_PROCESSOR_H - -#include "Instrmnt.h" - -#include "config_mgr.h" -#include "note_play_handle.h" -#include "types.h" - - -template -class stkProcessor -{ -public: - stkProcessor( sample_rate_t _sample_rate ); - stkProcessor( sample_rate_t _sample_rate, - StkFloat _lowest_frequency ); - virtual ~stkProcessor( void ); - - StkFloat nextSampleLeft( void ); - StkFloat nextSampleRight( void ); - - Instrmnt * voice( void ); - bool active( void ); - float lastFrequency( void ); - notePlayHandle * note( void ); - fpp_t attackFrame( void ); - float deltaVelocity( void ); - float deltaFrequency( void ); - basicFilters<> * velocitySensitiveLPF( void ); - float velocity( void ); - void clearBuffer( void ); - - void setActive( bool _state ); - void setLastFrequency( float _frequency ); - void setNote( notePlayHandle * _note ); - void setAttackFrame( fpp_t _frame ); - void setDeltaVelocity( float _velocity ); - void setDeltaFrequency( float _frequency ); - void setVelocity( float _velocity ); - void noteOn( StkFloat _pitch, StkFloat _velocity ); - -protected: - Uint8 m_delayRead; - Uint8 m_delayWrite; - -private: - Instrmnt * m_voice; - - StkFloat m_delay[256]; - bool m_active; - StkFloat m_sample; - Uint16 m_bufferIndex; - float m_lastFrequency; - float m_velocity; - notePlayHandle * m_note; - fpp_t m_attackFrame; - float m_deltaVelocity; - float m_deltaFrequency; - basicFilters<> * m_velocitySensitiveLPF; -}; - - - - -template - inline stkProcessor::stkProcessor( - sample_rate_t _sample_rate ): - m_delayWrite( 0 ), - m_lastFrequency( 440.0f ) -{ - try - { - Stk::setSampleRate( _sample_rate ); - Stk::setRawwavePath( - configManager::inst()->stkDir().toAscii().constData() ); - - m_voice = new STKVOICE(); - } - catch( ... ) - { - m_voice = NULL; - } - - setActive( FALSE ); - - m_velocitySensitiveLPF = - new basicFilters<>( engine::getMixer()->processingSampleRate() ); - - m_velocitySensitiveLPF->setFilterType( basicFilters<>::LOWPASS ); -} - - - - -template - inline stkProcessor::stkProcessor( - sample_rate_t _sample_rate, - StkFloat _lowest_frequency ): - m_delayWrite( 0 ), - m_lastFrequency( 440.0f ) -{ - try - { - Stk::setSampleRate( _sample_rate ); - Stk::setRawwavePath( - configManager::inst()->stkDir().toAscii().constData() ); - - m_voice = new STKVOICE( _lowest_frequency ); - } - catch( ... ) - { - m_voice = NULL; - } - - setActive( FALSE ); - - m_velocitySensitiveLPF = - new basicFilters<>( engine::getMixer()->processingSampleRate() ); - - m_velocitySensitiveLPF->setFilterType( basicFilters<>::LOWPASS ); -} - - - - -template -inline stkProcessor::~stkProcessor( void ) -{ - m_voice->noteOff( 0.0 ); - delete m_voice; - delete m_velocitySensitiveLPF; -} - - - - -template -inline StkFloat stkProcessor::nextSampleLeft( void ) -{ - if( m_voice == NULL ) - { - return( 0.0f ); - } - else - { - m_sample = m_voice->tick(); - m_delay[m_delayWrite] = m_sample; - m_delayWrite++; - return( m_sample ); - } -} - - - - -template -inline StkFloat stkProcessor::nextSampleRight( void ) -{ - m_sample = m_delay[m_delayRead]; - m_delayRead++; - return( m_sample ); -} - - - - -template -inline Instrmnt * stkProcessor::voice( void ) -{ - return( m_voice ); -} - - - - -template -inline bool stkProcessor::active( void ) -{ - return( m_active ); -} - - - - -template -inline float stkProcessor::lastFrequency( void ) -{ - return( m_lastFrequency ); -} - - - - -template -inline notePlayHandle * stkProcessor::note( void ) -{ - return( m_note ); -} - - - - -template -inline fpp_t stkProcessor::attackFrame( void ) -{ - return( m_attackFrame ); -} - - - - -template -inline float stkProcessor::deltaVelocity( void ) -{ - return( m_deltaVelocity ); -} - - - - -template -inline float stkProcessor::deltaFrequency( void ) -{ - return( m_deltaFrequency ); -} - - - - -template -inline basicFilters<> * stkProcessor::velocitySensitiveLPF( void ) -{ - return( m_velocitySensitiveLPF ); -} - - - - -template -inline float stkProcessor::velocity( void ) -{ - return( m_velocity ); -} - - - - -template -void stkProcessor::setActive( bool _state ) -{ - m_active = _state; - - if( !m_active && m_voice != NULL ) - { - clearBuffer(); - m_voice->noteOff( 0.0f ); - m_note = NULL; - } -} - - - -template -void stkProcessor::setLastFrequency( float _frequency ) -{ - m_lastFrequency = _frequency; -} - - - - -template -void stkProcessor::setNote( notePlayHandle * _note ) -{ - m_note = _note; -} - - - - -template -void stkProcessor::setAttackFrame( fpp_t _frame ) -{ - m_attackFrame = _frame; -} - - - - -template -void stkProcessor::setDeltaVelocity( float _velocity ) -{ - m_deltaVelocity = _velocity; -} - - - - -template -void stkProcessor::setDeltaFrequency( float _frequency ) -{ - m_deltaFrequency = _frequency; -} - - - - -template -void stkProcessor::clearBuffer( void ) -{ - for( m_bufferIndex = 0; m_bufferIndex < 256; m_bufferIndex++ ) - { - m_delay[m_bufferIndex] = 0.0; - } -} - - - - -template -void stkProcessor::noteOn( StkFloat _pitch, - StkFloat _velocity ) -{ - m_voice->noteOn( _pitch, _velocity ); -} - - - - -template -void stkProcessor::setVelocity( float _velocity ) -{ - m_velocity = _velocity; -} - - - -#endif diff --git a/plugins/stk/voices/include/stk_voice.h b/plugins/stk/voices/include/stk_voice.h deleted file mode 100644 index 05d87677f..000000000 --- a/plugins/stk/voices/include/stk_voice.h +++ /dev/null @@ -1,364 +0,0 @@ -/* - * stk_voice.h - base class for stk voices - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _STK_VOICE_H -#define _STK_VOICE_H - -#include "note_play_handle.h" - - -template -class stkVoice -{ -public: - stkVoice( Uint8 _polyphony = 64 ); - virtual ~stkVoice(); - - void playNote( notePlayHandle * _n, MODEL * _model, - sampleFrame * _buffer, const fpp_t _frames ); - - void setMissingFile( bool _state ); - -private: - bool m_filesMissing; - - float m_targetFrequency; - float m_currentFrequency; - float m_lastFrequency; - PROCESSOR * m_processor; - fpp_t m_frame; - sample_t m_leftSample; - sample_t m_rightSample; - Uint8 m_channel; - float m_leftRMS; - float m_rightRMS; - float m_pan; - fpp_t m_totalAttackFrames; - fpp_t m_attackFrame; - float m_deltaVelocity; - float m_deltaFrequency; - float m_attackVelocity; - float m_attackFrequency; - - QVector m_voices; - Uint8 m_voiceIndex; - Uint8 m_polyphony; - - sample_rate_t m_sampleRate; - int m_portamentoFrames; -}; - - -template -stkVoice::stkVoice( Uint8 _polyphony ): - m_lastFrequency( 440.0f ), - m_polyphony( _polyphony ), - m_sampleRate( engine::getMixer()->processingSampleRate() ), - m_portamentoFrames( 0 ) -{ - for( m_voiceIndex = 0; m_voiceIndex < m_polyphony; m_voiceIndex++ ) - { - m_voices.append( new PROCESSOR( m_sampleRate ) ); - } -} - - - - -template -stkVoice::~stkVoice() -{ - for( m_voiceIndex = 0; m_voiceIndex < m_polyphony; m_voiceIndex++ ) - { - delete m_voices[m_voiceIndex]; - } -} - - - -template -void stkVoice::playNote( notePlayHandle * _n, - MODEL * _model, - sampleFrame * _buffer, - const fpp_t _frames ) -{ - // Don't do anything if STK isn't installed properly. - if( m_filesMissing ) - { - return; - } - - // Don't do anything if the instrument is release triggered and we - // haven't released yet. - if( _model->releaseTriggered()->value() && !_n->released() ) - { - return; - } - - // If it's a new note, we need to get a voice. - if ( _n->totalFramesPlayed() == 0 || _n->m_pluginData == NULL ) - { - // Monophonic instruments only use the first defined voice. - if( _model->monophonic()->value() ) - { - if( m_voices[0]->active() && - m_voices[0]->note() != NULL ) - { - m_voices[0]->note()->noteOff( 0 ); - } - m_processor = m_voices[0]; - } - // Otherwise, search for a voice that isn't in use. - else - { - m_processor = NULL; - for( m_voiceIndex = 0; m_voiceIndex < m_polyphony; - m_voiceIndex++ ) - { - if( !m_voices[m_voiceIndex]->active() ) - { - m_processor = m_voices[m_voiceIndex]; - break; - } - } - - // Don't do anything if no voices are available. - if( m_processor == NULL ) - { - return; - } - } - - // Assign the voice and label it as active. - _n->m_pluginData = m_processor; - m_processor->setActive( TRUE ); - - // Initialize the velocity and the number of frames played - // so far. - m_processor->setVelocity( - static_cast( _n->getVolume() ) / - 100.0f ); - m_processor->setAttackFrame( 0 ); - - // Initialize the number of frames for the portamento - // transition. - m_portamentoFrames = static_cast( - engine::getMixer()->processingSampleRate() * - _model->portamento()->value() / - 1000.0f ); - - // If the attack is randomized, calculate the number of frames - // over which the modifications should take place and - // generate a pair of offsets. - if( _model->randomizeAttack()->value() ) - { - m_totalAttackFrames = static_cast( - engine::getMixer()->processingSampleRate() * - _model->randomizeLength()->value() / - 1000.0f ); - - m_attackVelocity = - _model->randomizeVelocityAmount()->value() * - _model->offset(); - if( m_processor->velocity() + m_attackVelocity < 0.0f ) - { - m_attackVelocity = -m_processor->velocity(); - } - if( m_processor->velocity() + - m_attackVelocity > 1.0f ) - { - m_attackVelocity = 1.0f - m_processor->velocity(); - } - - m_processor->setDeltaVelocity( m_attackVelocity ); - - m_attackFrequency = - _model->randomizeFrequencyAmount()->value() * - _model->offset(); - - m_processor->setDeltaFrequency( m_attackFrequency ); - } - else - { - m_totalAttackFrames = 0; - m_processor->setDeltaVelocity( 0.0f ); - m_processor->setDeltaFrequency( 0.0f ); - } - - // If the velocity sensitive filter is turned on, calculate the - // coefficients and clear the taps. The filter cutoff is set - // as: - // cutoff = max_freq * ( 10^velocity ) / 10 - if( _model->velocitySensitiveLPF()->value() ) - { - m_processor->velocitySensitiveLPF()->calcFilterCoeffs( - pow( 10.0f, m_processor->velocity() + - m_processor->deltaVelocity() ) * - engine::getMixer()->processingSampleRate() / 20.0f, - _model->velocitySensitiveQ()->value() ); - m_processor->velocitySensitiveLPF()->clearHistory(); - } - } - - // Used to keep track of the level across the buffer. - m_leftRMS = 0.0f; - m_rightRMS = 0.0f; - - // Get the processing unit assigned to the note. - m_processor = static_cast( _n->m_pluginData ); - - // Initialize the pitch settings. - m_targetFrequency = _n->frequency(); - m_lastFrequency = m_processor->lastFrequency(); - m_currentFrequency = m_lastFrequency; - - m_processor->setControls( _model ); - - // Initialize the attack offset calculation variables. - m_attackVelocity = 0.0f; - m_attackFrequency = 1.0f; - m_attackFrame = m_processor->attackFrame(); - m_deltaVelocity = m_processor->deltaVelocity(); - m_deltaFrequency = m_processor->deltaFrequency(); - - // Generate the buffer. - for( m_frame = 0; m_frame < _frames; ++m_frame ) - { - // Slide across the randomized attack offsets. - // Will be ignored if randomization is turned off because - // both m_attackFrame and m_totalAttackFrames will be - // zero. Just a linear iterpolation. - if( m_attackFrame < m_totalAttackFrames ) - { - m_attackVelocity = m_deltaVelocity - m_deltaVelocity * - m_attackFrame / - m_totalAttackFrames; - - if( m_processor->velocity() + m_attackVelocity < 0.0f ) - { - m_attackVelocity = -m_processor->velocity(); - } - else if( m_processor->velocity() + m_attackVelocity > 1.0f ) - { - m_attackVelocity = 1.0f - m_processor->velocity(); - } - - - m_attackFrequency = m_deltaFrequency - - m_deltaFrequency * - m_attackFrame / - m_totalAttackFrames; - - // Convert m_attackFrequency to a half step based - // scaling factor for the pitch. - m_attackFrequency = pow( 2.0f, m_attackFrequency / - 12.0f ); - - m_attackFrame++; - } - - // If there are any portamento frames to be processed, - // calculate the pitch slide based on whatever the most - // recently used frequency was. - if( m_portamentoFrames > 0 ) - { - m_currentFrequency += ( m_targetFrequency - - m_lastFrequency ) / - static_cast( m_portamentoFrames ); - - // Sliding polyphonic instruments can end up with - // negative frequencies, so stop the slid as long - // as the situation persists. - if( m_currentFrequency < 0.0f ) - { - m_currentFrequency -= - ( m_targetFrequency - m_lastFrequency ) / - static_cast( m_portamentoFrames ); - } - - m_processor->noteOn( m_currentFrequency * - _model->bendScaler(), - m_processor->velocity() + - m_attackVelocity ); - } - else - { - m_processor->noteOn( m_targetFrequency * - _model->bendScaler() * - m_attackFrequency, - m_processor->velocity() + - m_attackVelocity ); - } - - // Calculate the pan level for the right channel. - m_pan = ( 1.0f + _model->pan()->value() ) / 2.0f; - - // Generate the samples. - m_leftSample = m_processor->nextSampleLeft() * - _model->volume()->value() * ( 1.0f - m_pan ); - m_rightSample = m_processor->nextSampleRight() * - _model->volume()->value() * m_pan; - - // Process the velocity sensitive filter. - if( _model->velocitySensitiveLPF()->value() ) - { - m_leftSample = m_processor->velocitySensitiveLPF()->update( m_leftSample, 0 ); - m_rightSample = m_processor->velocitySensitiveLPF()->update( m_rightSample, 1 ); - } - - // Keep track of the levels. - m_leftRMS += m_leftSample * m_leftSample; - m_rightRMS += m_rightSample * m_rightSample; - - // Stuff the samples into the channels. - for( m_channel = 0; m_channel < DEFAULT_CHANNELS / 2; - ++m_channel ) - { - _buffer[m_frame][m_channel * DEFAULT_CHANNELS / 2] = m_leftSample; - _buffer[m_frame][( m_channel + 1 ) * DEFAULT_CHANNELS / 2] = m_rightSample; - } - } - - // Remember the frequency and the number of frames processed. - m_processor->setLastFrequency( m_currentFrequency ); - m_processor->setAttackFrame( m_attackFrame ); - - // Keep track of the portamento frames. - if( m_portamentoFrames > 0 ) - { - m_portamentoFrames -= _frames; - } -} - - - - -template - void stkVoice::setMissingFile( bool _state ) -{ - m_filesMissing = _state; -} - - -#endif diff --git a/plugins/stk/voices/metal/Makefile.am b/plugins/stk/voices/metal/Makefile.am deleted file mode 100644 index 63a340767..000000000 --- a/plugins/stk/voices/metal/Makefile.am +++ /dev/null @@ -1,46 +0,0 @@ -AUTOMAKE_OPTIONS = foreign 1.4 - - -INCLUDES = -I@stk_includes@ -I$(top_srcdir)/include -I$(top_srcdir)/src/lib -I. -I$(top_srcdir)/plugins/stk/voices/include - - -AM_CXXFLAGS := $(AM_CXXFLAGS) $(QT_CXXFLAGS) -DPLUGIN_NAME="metal" - - -%.moc: ./%.h - $(MOC) -o $@ $< - - -MOC_FILES = ./metal_model.moc - -BUILT_SOURCES = $(MOC_FILES) ./embedded_resources.h -EMBEDDED_RESOURCES = $(wildcard *png) - -./embedded_resources.h: $(EMBEDDED_RESOURCES) - $(BIN2RES) $(EMBEDDED_RESOURCES) > $@ - -EXTRA_DIST = $(EMBEDDED_RESOURCES) - - -CLEANFILES = $(MOC_FILES) ./embedded_resources.h - - - -pkglib_LTLIBRARIES = libmetal.la - -libmetal_la_SOURCES = metal_model.cpp \ - metal_model.h \ - metal_processor.cpp \ - metal_processor.h \ - metal_instrument.cpp \ - metal_instrument.h \ - metal_instrument_view.cpp \ - metal_instrument_view.h \ - $(top_srcdir)/plugins/stk/voices/src/stk_model.cpp \ - stk_model.h - - - -libmetal_la_LDFLAGS = -L@stk_lib@ -lstk -Wl,-export-dynamic - -$(libmetal_la_SOURCES): ./embedded_resources.h diff --git a/plugins/stk/voices/metal/artwork.png b/plugins/stk/voices/metal/artwork.png deleted file mode 100644 index bd99259ec8f8d7e57a639ef134ece9a729e8cf62..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 64403 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�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 diff --git a/plugins/stk/voices/metal/metal_instrument.cpp b/plugins/stk/voices/metal/metal_instrument.cpp deleted file mode 100644 index a48025b27..000000000 --- a/plugins/stk/voices/metal/metal_instrument.cpp +++ /dev/null @@ -1,103 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "engine.h" -#include "note_play_handle.h" - -#include "metal_instrument.h" -#include "metal_instrument_view.h" -#include "metal_processor.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embedded_resources.h" - - -extern "C" -{ - -plugin::descriptor metal_plugin_descriptor = -{ - STRINGIFY_PLUGIN_NAME( PLUGIN_NAME ), - "Metal", - QT_TRANSLATE_NOOP( "pluginBrowser", - "Buzzy noises" ), - "Danny McRae ", - 0x0100, - plugin::Instrument, - new pluginPixmapLoader( "logo" ), - NULL -} ; - -} - - -metalInstrument::metalInstrument( instrumentTrack * _channel_track ): - stkInstrument( _channel_track, &metal_plugin_descriptor ) -{ - model()->index()->setTrack( _channel_track ); - model()->crossfade()->setTrack( _channel_track ); - model()->lfoSpeed()->setTrack( _channel_track ); - model()->lfoDepth()->setTrack( _channel_track ); - model()->adsrTarget()->setTrack( _channel_track ); -} - - - - -metalInstrument::~metalInstrument() -{ -} - - - - -QString metalInstrument::nodeName( void ) const -{ - return( metal_plugin_descriptor.name ); -} - - - - -pluginView * metalInstrument::instantiateView( QWidget * _parent ) -{ - return( new metalInstrumentView( this, _parent ) ); -} - - - - -extern "C" -{ - -// neccessary for getting instance out of shared lib -plugin * lmms_plugin_main( model * _model, void * _data ) -{ - return( new metalInstrument( static_cast( _data ) ) ); -} - - -} - - diff --git a/plugins/stk/voices/metal/metal_instrument.h b/plugins/stk/voices/metal/metal_instrument.h deleted file mode 100644 index 73b9bcb90..000000000 --- a/plugins/stk/voices/metal/metal_instrument.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _METAL_INSTRUMENT_H -#define _METAL_INSTRUMENT_H - -#include "stk_instrument.h" - -#include "metal_processor.h" -#include "metal_model.h" - - -class metalInstrument : public stkInstrument -{ -public: - metalInstrument( instrumentTrack * _channel_track ); - virtual ~metalInstrument( void ); - - QString nodeName( void ) const; - - pluginView * instantiateView( QWidget * _parent ); -}; - -#endif diff --git a/plugins/stk/voices/metal/metal_instrument_view.cpp b/plugins/stk/voices/metal/metal_instrument_view.cpp deleted file mode 100644 index 06ab9fba4..000000000 --- a/plugins/stk/voices/metal/metal_instrument_view.cpp +++ /dev/null @@ -1,110 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include -#include -#include - -#include "metal_instrument_view.h" - -#include -#include - -#include "engine.h" -#include "gui_templates.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embed.cpp" - - -metalInstrumentView::metalInstrumentView( metalInstrument * _instrument, QWidget * _parent ) : - stkInstrumentView( _instrument, _parent ) -{ - QVBoxLayout * vl = new QVBoxLayout( m_topView ); - QHBoxLayout * h1 = new QHBoxLayout(); - QHBoxLayout * h2 = new QHBoxLayout(); - QHBoxLayout * h3 = new QHBoxLayout(); - - - m_index = new knob( knobSmall_17, m_topView, tr( "Index" ) ); - m_index->setLabel( tr( "Modulator Index" ) ); - m_index->setHintText( tr( "Index:" ) + " ", "" ); - - m_crossfade = new knob( knobSmall_17, m_topView, tr( "Crossfade" ) ); - m_crossfade->setLabel( tr( "Modulator Crossfade" ) ); - m_crossfade->setHintText( tr( "Crossfade:" ) + " ", "" ); - - m_lfoSpeed = new knob( knobSmall_17, m_topView, tr( "LFO Speed" ) ); - m_lfoSpeed->setLabel( tr( "LFO Speed" ) ); - m_lfoSpeed->setHintText( tr( "LFO Speed:" ) + " ", "" ); - - m_lfoDepth = new knob( knobSmall_17, m_topView, tr( "LFO Depth" ) ); - m_lfoDepth->setLabel( tr( "LFO Depth" ) ); - m_lfoDepth->setHintText( tr( "LFO Depth:" ) + " ", "" ); - - m_adsrTarget = new knob( knobSmall_17, m_topView, tr( "ADSR Target" ) ); - m_adsrTarget->setLabel( tr( "ADSR Target" ) ); - m_adsrTarget->setHintText( tr( "ADSR Target:" ) + " ", "" ); - - h1->addWidget( m_index ); - h1->addWidget( m_crossfade ); - - h2->addWidget( m_lfoSpeed ); - h2->addWidget( m_lfoDepth ); - - h3->addWidget( m_adsrTarget ); - - vl->addLayout( h1 ); - vl->addLayout( h2 ); - vl->addLayout( h3 ); - - setAutoFillBackground( TRUE ); - QPalette pal; - pal.setBrush( backgroundRole(), PLUGIN_NAME::getIconPixmap( "artwork" ) ); - setPalette( pal ); -} - - - - -metalInstrumentView::~metalInstrumentView() -{ -} - - - - -void metalInstrumentView::modelChanged( void ) -{ - stkInstrumentView::modelChanged(); - - metalInstrument * inst = castModel(); - m_index->setModel( inst->model()->index() ); - m_crossfade->setModel( inst->model()->crossfade() ); - m_lfoSpeed->setModel( inst->model()->lfoSpeed() ); - m_lfoDepth->setModel( inst->model()->lfoDepth() ); - m_adsrTarget->setModel( inst->model()->adsrTarget() ); -} - - - diff --git a/plugins/stk/voices/metal/metal_instrument_view.h b/plugins/stk/voices/metal/metal_instrument_view.h deleted file mode 100644 index 751dd1200..000000000 --- a/plugins/stk/voices/metal/metal_instrument_view.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _METAL_INSTRUMENT_VIEW_H -#define _METAL_INSTRUMENT_VIEW_H - -#include "knob.h" - -#include "stk_instrument_view.h" -#include "metal_instrument.h" - - -class metalInstrumentView: public stkInstrumentView -{ -public: - metalInstrumentView( metalInstrument * _instrument, QWidget * _parent ); - virtual ~metalInstrumentView( void ); - -private: - virtual void modelChanged( void ); - - knob * m_index; - knob * m_crossfade; - knob * m_lfoSpeed; - knob * m_lfoDepth; - knob * m_adsrTarget; -}; - -#endif diff --git a/plugins/stk/voices/metal/metal_model.cpp b/plugins/stk/voices/metal/metal_model.cpp deleted file mode 100644 index 3bbcf712f..000000000 --- a/plugins/stk/voices/metal/metal_model.cpp +++ /dev/null @@ -1,88 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "metal_model.h" - - -metalModel::metalModel( bool _monophonic, - StkFloat _portamento, - StkFloat _bend, - StkFloat _bend_range, - bool _velocity_sensitive_lpf, - StkFloat _velocity_sensitive_q, - StkFloat _volume, - StkFloat _pan, - StkFloat _spread, - StkFloat _index, - StkFloat _crossfade, - StkFloat _lfo_speed, - StkFloat _lfo_depth, - StkFloat _adsr_target ): - stkModel( _monophonic, _portamento, _bend, _bend_range, _velocity_sensitive_lpf, _velocity_sensitive_q, _volume, _pan, _spread ), - m_index( new floatModel( _index, 0.0f, 128.0f, 0.1f, this ) ), - m_crossfade( new floatModel( _crossfade, 0.0f, 128.0f, 0.1f, this ) ), - m_lfoSpeed( new floatModel( _lfo_speed, 0.0f, 128.0f, 0.1f, this ) ), - m_lfoDepth( new floatModel( _lfo_depth, 0.0f, 128.0f, 0.1f, this ) ), - m_adsrTarget( new floatModel( _adsr_target, 0.0f, 128.0f, 0.1f, this ) ) -{ -} - - - - -metalModel::~metalModel() -{ - delete m_index; - delete m_crossfade; - delete m_lfoSpeed; - delete m_lfoDepth; - delete m_adsrTarget; -} - - - - -void metalModel::saveSettings( QDomDocument & _doc, QDomElement & _parent ) -{ - stkModel::saveSettings( _doc, _parent ); - m_index->saveSettings( _doc, _parent, "index" ); - m_crossfade->saveSettings( _doc, _parent, "crossfade" ); - m_lfoSpeed->saveSettings( _doc, _parent, "lfospeed" ); - m_lfoDepth->saveSettings( _doc, _parent, "lfodepth" ); - m_adsrTarget->saveSettings( _doc, _parent, "adsrtarget" ); -} - - - - -void metalModel::loadSettings( const QDomElement & _this ) -{ - stkModel::loadSettings( _this ); - m_index->loadSettings( _this, "index" ); - m_crossfade->loadSettings( _this, "crossfade" ); - m_lfoSpeed->loadSettings( _this, "lfospeed" ); - m_lfoDepth->loadSettings( _this, "lfodepth" ); - m_adsrTarget->loadSettings( _this, "adsrtarget" ); -} - diff --git a/plugins/stk/voices/metal/metal_model.h b/plugins/stk/voices/metal/metal_model.h deleted file mode 100644 index db3e3028f..000000000 --- a/plugins/stk/voices/metal/metal_model.h +++ /dev/null @@ -1,86 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _METAL_MODEL_H -#define _METAL_MODEL_H - -#include "stk_model.h" - - -class metalModel: public stkModel -{ -public: - metalModel( bool _monophonic = FALSE, - StkFloat _portamento = 0.0f, - StkFloat _bend = 0.0f, - StkFloat _bend_range = 2.0f, - bool _velocity_sensitive_lpf = TRUE, - StkFloat _velocity_sensitive_q = 0.5f, - StkFloat _volume = 1.0f, - StkFloat _pan = 0.0f, - StkFloat _spread = 0.0f, - StkFloat _index = 64.0f, - StkFloat _crossfade = 64.0f, - StkFloat _lfo_speed = 64.0f, - StkFloat _lfo_depth = 64.0f, - StkFloat _adsr_target = 64.0f ); - ~metalModel(); - - inline floatModel * index( void ) const - { - return( m_index ); - } - - inline floatModel * crossfade( void ) const - { - return( m_crossfade ); - } - - inline floatModel * lfoSpeed( void ) - { - return( m_lfoSpeed ); - } - - inline floatModel * lfoDepth( void ) const - { - return( m_lfoDepth ); - } - - inline floatModel * adsrTarget( void ) const - { - return( m_adsrTarget ); - } - - void saveSettings( QDomDocument & _doc, QDomElement & _parent ); - - void loadSettings( const QDomElement & _this ); - -private: - floatModel * m_index; - floatModel * m_crossfade; - floatModel * m_lfoSpeed; - floatModel * m_lfoDepth; - floatModel * m_adsrTarget; -}; - -#endif diff --git a/plugins/stk/voices/metal/metal_processor.cpp b/plugins/stk/voices/metal/metal_processor.cpp deleted file mode 100644 index 178f4584a..000000000 --- a/plugins/stk/voices/metal/metal_processor.cpp +++ /dev/null @@ -1,51 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include "metal_processor.h" -#include "config_mgr.h" - - -metalProcessor::metalProcessor( sample_rate_t _sample_rate ): - stkProcessor( _sample_rate ) -{ -} - - - - -metalProcessor::~metalProcessor() -{ -} - - - - -void metalProcessor::setControls( metalModel * _model ) -{ - voice()->controlChange( 2, _model->index()->value() ); - voice()->controlChange( 4, _model->crossfade()->value() ); - voice()->controlChange( 11, _model->lfoSpeed()->value() ); - voice()->controlChange( 1, _model->lfoDepth()->value() ); - voice()->controlChange( 128, _model->adsrTarget()->value() ); - m_delayRead = m_delayWrite - static_cast( _model->spread()->value() ); -} diff --git a/plugins/stk/voices/metal/metal_processor.h b/plugins/stk/voices/metal/metal_processor.h deleted file mode 100644 index 07e846283..000000000 --- a/plugins/stk/voices/metal/metal_processor.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _METAL_PROCESSOR_H -#define _METAL_PROCESSOR_H - -#include "HevyMetl.h" - -#include "stk_processor.h" - -#include "metal_model.h" - -class metalProcessor: public stkProcessor -{ -public: - metalProcessor( sample_rate_t _sample_rate ); - ~metalProcessor( void ); - - void setControls( metalModel * _model ); -}; - -#endif diff --git a/plugins/stk/voices/moog/Makefile.am b/plugins/stk/voices/moog/Makefile.am deleted file mode 100644 index 634c5b9eb..000000000 --- a/plugins/stk/voices/moog/Makefile.am +++ /dev/null @@ -1,46 +0,0 @@ -AUTOMAKE_OPTIONS = foreign 1.4 - - -INCLUDES = -I@stk_includes@ -I$(top_srcdir)/include -I$(top_srcdir)/src/lib -I. -I$(top_srcdir)/plugins/stk/voices/include - - -AM_CXXFLAGS := $(AM_CXXFLAGS) $(QT_CXXFLAGS) -DPLUGIN_NAME="moog" - - -%.moc: ./%.h - $(MOC) -o $@ $< - - -MOC_FILES = ./moog_model.moc - -BUILT_SOURCES = $(MOC_FILES) ./embedded_resources.h -EMBEDDED_RESOURCES = $(wildcard *png) - -./embedded_resources.h: $(EMBEDDED_RESOURCES) - $(BIN2RES) $(EMBEDDED_RESOURCES) > $@ - -EXTRA_DIST = $(EMBEDDED_RESOURCES) - - -CLEANFILES = $(MOC_FILES) ./embedded_resources.h - - - -pkglib_LTLIBRARIES = libmoog.la - -libmoog_la_SOURCES = moog_model.cpp \ - moog_model.h \ - moog_processor.cpp \ - moog_processor.h \ - moog_instrument.cpp \ - moog_instrument.h \ - moog_instrument_view.cpp \ - moog_instrument_view.h \ - $(top_srcdir)/plugins/stk/voices/src/stk_model.cpp \ - stk_model.h - - - -libmoog_la_LDFLAGS = -L@stk_lib@ -lstk -Wl,-export-dynamic - -$(libmoog_la_SOURCES): ./embedded_resources.h diff --git a/plugins/stk/voices/moog/artwork.png b/plugins/stk/voices/moog/artwork.png deleted file mode 100644 index 51be582c44348cf9ccb3ecc06c1a450230cef2b7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 64499 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�jBSy1C3sx$?0^)A3J=Q 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 diff --git a/plugins/stk/voices/moog/logo.png b/plugins/stk/voices/moog/logo.png deleted file mode 100644 index 93fcd1746131e93516a5c85394decef1d7df2561..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 659 zcmV;E0&M+>P)BB%v^%K{!OpGvZ5fKp)5fL#?O|eA$Le0=`hnTRw z&NAP2XGBCqM8p+UMnyzKL_|cyXEn``*j+PR>3}$HZJnjhUh$2`EjM4U%iQEaZ~461 zxJr!GENm6e*Pq$3&r@7UEwPH`r!hUf_O>>uVvDczH&-Y?!b>wOBYBlI{ z+N8^CiYH8nclFf;eisX>Bkzfas=+Gpb(LP*#H44doe}Y|>#GCbikqv!M)9TryTnQB z>SET5h(lg>pJg>GmpbD&bF0BlvB|JFYGuvFo%Wa%5i#Nwi|Zn85r=CQM#QK%=IZ)u z78$bHN5(`Px4PPROuSPKmWVMcoe~dJXL_wMEcR6!+r`FeFeG+Wc~tyrMg1L?i<8yH z0dadZ*eaf@Dc%;}8K}><6$h(@LGe>H=yTc`12xSx z#>7+A%4YXe8w(v4PgV=}iw~>8D)Cj#aJNYlZmSC%5MO%4b>`?dXoH`{uzA(OOX7uU zuu;5GEo>5_7T0;kMMOkI#6e4|ja}m2YOqs0TrIF$>@%m%af1zZ7&d0Y2}itdolEK> tj*4rm!H5{FHWvCpY^$!WuCD)&KLEu%@0qNKIFkSX002ovPDHLkV1i3NG93T_ diff --git a/plugins/stk/voices/moog/moog_instrument.cpp b/plugins/stk/voices/moog/moog_instrument.cpp deleted file mode 100644 index f707b633d..000000000 --- a/plugins/stk/voices/moog/moog_instrument.cpp +++ /dev/null @@ -1,102 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "engine.h" -#include "note_play_handle.h" - -#include "moog_instrument.h" -#include "moog_instrument_view.h" -#include "moog_processor.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embedded_resources.h" - - -extern "C" -{ - -plugin::descriptor moog_plugin_descriptor = -{ - STRINGIFY_PLUGIN_NAME( PLUGIN_NAME ), - "Moog", - QT_TRANSLATE_NOOP( "pluginBrowser", - "Moogy sounds" ), - "Danny McRae ", - 0x0100, - plugin::Instrument, - new pluginPixmapLoader( "logo" ), - NULL -} ; - -} - - -moogInstrument::moogInstrument( instrumentTrack * _channel_track ): - stkInstrument( _channel_track, &moog_plugin_descriptor ) -{ - model()->filterQ()->setTrack( _channel_track ); - model()->filterSweepRate()->setTrack( _channel_track ); - model()->vibratoFrequency()->setTrack( _channel_track ); - model()->vibratoGain()->setTrack( _channel_track ); -} - - - - -moogInstrument::~moogInstrument() -{ -} - - - - -QString moogInstrument::nodeName( void ) const -{ - return( moog_plugin_descriptor.name ); -} - - - - -pluginView * moogInstrument::instantiateView( QWidget * _parent ) -{ - return( new moogInstrumentView( this, _parent ) ); -} - - - - -extern "C" -{ - -// neccessary for getting instance out of shared lib -plugin * lmms_plugin_main( model * _model, void * _data ) -{ - return( new moogInstrument( static_cast( _data ) ) ); -} - - -} - - diff --git a/plugins/stk/voices/moog/moog_instrument.h b/plugins/stk/voices/moog/moog_instrument.h deleted file mode 100644 index 4b7ffe876..000000000 --- a/plugins/stk/voices/moog/moog_instrument.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _MOOG_INSTRUMENT_H -#define _MOOG_INSTRUMENT_H - -#include "stk_instrument.h" - -#include "moog_processor.h" -#include "moog_model.h" - - -class moogInstrument : public stkInstrument -{ -public: - moogInstrument( instrumentTrack * _channel_track ); - virtual ~moogInstrument( void ); - - QString nodeName( void ) const; - - pluginView * instantiateView( QWidget * _parent ); -}; - -#endif diff --git a/plugins/stk/voices/moog/moog_instrument_view.cpp b/plugins/stk/voices/moog/moog_instrument_view.cpp deleted file mode 100644 index 719f3a55e..000000000 --- a/plugins/stk/voices/moog/moog_instrument_view.cpp +++ /dev/null @@ -1,100 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include -#include -#include - -#include "moog_instrument_view.h" - -#include -#include - -#include "engine.h" -#include "gui_templates.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embed.cpp" - - -moogInstrumentView::moogInstrumentView( moogInstrument * _instrument, QWidget * _parent ) : - stkInstrumentView( _instrument, _parent ) -{ - QVBoxLayout * vl = new QVBoxLayout( m_topView ); - QHBoxLayout * h1 = new QHBoxLayout; - QHBoxLayout * h2 = new QHBoxLayout; - - m_filterQ = new knob( knobSmall_17, m_topView, tr( "Filter Q" ) ); - m_filterQ->setLabel( tr( "Filter Q" ) ); - m_filterQ->setHintText( tr( "Q:" ) + " ", "" ); - - m_filterSweepRate = new knob( knobSmall_17, m_topView, tr( "Sweep Rate" ) ); - m_filterSweepRate->setLabel( tr( "Sweep Rate" ) ); - m_filterSweepRate->setHintText( tr( "Rate:" ) + " ", "" ); - - m_vibratoFrequency = new knob( knobSmall_17, m_topView, tr( "Vib Freq" ) ); - m_vibratoFrequency->setLabel( tr( "Vibrato Frequency" ) ); - m_vibratoFrequency->setHintText( tr( "Vib Freq:" ) + " ", "" ); - - m_vibratoGain = new knob( knobSmall_17, m_topView, tr( "Vib Gain" ) ); - m_vibratoGain->setLabel( tr( "Vibrato Gain" ) ); - m_vibratoGain->setHintText( tr( "Vib Gain:" ) + " ", "" ); - - h1->addWidget( m_filterQ ); - h1->addWidget( m_filterSweepRate ); - - h2->addWidget( m_vibratoFrequency ); - h2->addWidget( m_vibratoGain ); - - vl->addLayout( h1 ); - vl->addLayout( h2 ); - - setAutoFillBackground( TRUE ); - QPalette pal; - pal.setBrush( backgroundRole(), PLUGIN_NAME::getIconPixmap( "artwork" ) ); - setPalette( pal ); -} - - - - -moogInstrumentView::~moogInstrumentView() -{ -} - - - - -void moogInstrumentView::modelChanged( void ) -{ - stkInstrumentView::modelChanged(); - - moogInstrument * inst = castModel(); - m_filterQ->setModel( inst->model()->filterQ() ); - m_filterSweepRate->setModel( inst->model()->filterSweepRate() ); - m_vibratoFrequency->setModel( inst->model()->vibratoFrequency() ); - m_vibratoGain->setModel( inst->model()->vibratoGain() ); -} - - - diff --git a/plugins/stk/voices/moog/moog_instrument_view.h b/plugins/stk/voices/moog/moog_instrument_view.h deleted file mode 100644 index ee3365381..000000000 --- a/plugins/stk/voices/moog/moog_instrument_view.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _MOOG_INSTRUMENT_VIEW_H -#define _MOOG_INSTRUMENT_VIEW_H - -#include "knob.h" - -#include "stk_instrument_view.h" -#include "moog_instrument.h" - - -class moogInstrumentView: public stkInstrumentView -{ -public: - moogInstrumentView( moogInstrument * _instrument, QWidget * _parent ); - virtual ~moogInstrumentView( void ); - -private: - virtual void modelChanged( void ); - - knob * m_filterQ; - knob * m_filterSweepRate; - knob * m_vibratoFrequency; - knob * m_vibratoGain; -}; - -#endif diff --git a/plugins/stk/voices/moog/moog_model.cpp b/plugins/stk/voices/moog/moog_model.cpp deleted file mode 100644 index 152cd179e..000000000 --- a/plugins/stk/voices/moog/moog_model.cpp +++ /dev/null @@ -1,83 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "moog_model.h" - - -moogModel::moogModel( bool _monophonic, - StkFloat _portamento, - StkFloat _bend, - StkFloat _bend_range, - bool _velocity_sensitive_lpf, - StkFloat _velocity_sensitive_q, - StkFloat _volume, - StkFloat _pan, - StkFloat _spread, - StkFloat _filter_q, - StkFloat _filter_sweep_rate, - StkFloat _vibrato_frequency, - StkFloat _vibrato_gain ): - stkModel( _monophonic, _portamento, _bend, _bend_range, _velocity_sensitive_lpf, _velocity_sensitive_q, _volume, _pan, _spread ), - m_filterQ( new floatModel( _filter_q, 0.0f, 128.0f, 0.1f, this ) ), - m_filterSweepRate( new floatModel( _filter_sweep_rate, 0.0f, 128.0f, 0.1f, this ) ), - m_vibratoFrequency( new floatModel( _vibrato_frequency, 0.0f, 128.0f, 0.1f, this ) ), - m_vibratoGain( new floatModel( _vibrato_gain, 0.0f, 128.0f, 0.1f, this ) ) -{ -} - - - - -moogModel::~moogModel() -{ - delete m_filterQ; - delete m_filterSweepRate; - delete m_vibratoFrequency; - delete m_vibratoGain; -} - - - - -void moogModel::saveSettings( QDomDocument & _doc, QDomElement & _parent ) -{ - stkModel::saveSettings( _doc, _parent ); - m_filterQ->saveSettings( _doc, _parent, "filterq" ); - m_filterSweepRate->saveSettings( _doc, _parent, "filtersweeprate" ); - m_vibratoFrequency->saveSettings( _doc, _parent, "vibratofrequency" ); - m_vibratoGain->saveSettings( _doc, _parent, "vibratogain" ); -} - - - - -void moogModel::loadSettings( const QDomElement & _this ) -{ - stkModel::loadSettings( _this ); - m_filterQ->loadSettings( _this, "filterq" ); - m_filterSweepRate->loadSettings( _this, "filtersweeprate" ); - m_vibratoFrequency->loadSettings( _this, "vibratofrequency" ); - m_vibratoGain->loadSettings( _this, "vibratogain" ); -} - diff --git a/plugins/stk/voices/moog/moog_model.h b/plugins/stk/voices/moog/moog_model.h deleted file mode 100644 index b1a2897f7..000000000 --- a/plugins/stk/voices/moog/moog_model.h +++ /dev/null @@ -1,79 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _MOOG_MODEL_H -#define _MOOG_MODEL_H - -#include "stk_model.h" - - -class moogModel: public stkModel -{ -public: - moogModel( bool _monophonic = FALSE, - StkFloat _portamento = 0.0f, - StkFloat _bend = 0.0f, - StkFloat _bend_range = 2.0f, - bool _velocity_sensitive_lpf = TRUE, - StkFloat _velocity_sensitive_q = 0.5f, - StkFloat _volume = 1.0f, - StkFloat _pan = 0.0f, - StkFloat _spread = 0.0f, - StkFloat _filter_q = 64.0f, - StkFloat _filter_sweep_rate = 64.0f, - StkFloat _vibrato_frequency = 64.0f, - StkFloat _vibrato_gain = 64.0f ); - ~moogModel(); - - inline floatModel * filterQ( void ) const - { - return( m_filterQ ); - } - - inline floatModel * filterSweepRate( void ) const - { - return( m_filterSweepRate ); - } - - inline floatModel * vibratoFrequency( void ) const - { - return( m_vibratoFrequency ); - } - - inline floatModel * vibratoGain( void ) const - { - return( m_vibratoGain ); - } - - void saveSettings( QDomDocument & _doc, QDomElement & _parent ); - - void loadSettings( const QDomElement & _this ); - -private: - floatModel * m_filterQ; - floatModel * m_filterSweepRate; - floatModel * m_vibratoFrequency; - floatModel * m_vibratoGain; -}; - -#endif diff --git a/plugins/stk/voices/moog/moog_processor.cpp b/plugins/stk/voices/moog/moog_processor.cpp deleted file mode 100644 index 958c1ca4f..000000000 --- a/plugins/stk/voices/moog/moog_processor.cpp +++ /dev/null @@ -1,50 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include "moog_processor.h" -#include "config_mgr.h" - - -moogProcessor::moogProcessor( sample_rate_t _sample_rate ): - stkProcessor( _sample_rate ) -{ -} - - - - -moogProcessor::~moogProcessor() -{ -} - - - - -void moogProcessor::setControls( moogModel * _model ) -{ - voice()->controlChange( 2, _model->filterQ()->value() ); - voice()->controlChange( 4, _model->filterSweepRate()->value() ); - voice()->controlChange( 11, _model->vibratoFrequency()->value() ); - voice()->controlChange( 1, _model->vibratoGain()->value() ); - m_delayRead = m_delayWrite - static_cast( _model->spread()->value() ); -} diff --git a/plugins/stk/voices/moog/moog_processor.h b/plugins/stk/voices/moog/moog_processor.h deleted file mode 100644 index 6bbc01ed3..000000000 --- a/plugins/stk/voices/moog/moog_processor.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _MOOG_PROCESSOR_H -#define _MOOG_PROCESSOR_H - -#include "Moog.h" - -#include "stk_processor.h" - -#include "moog_model.h" - -class moogProcessor: public stkProcessor -{ -public: - moogProcessor( sample_rate_t _sample_rate ); - ~moogProcessor( void ); - - void setControls( moogModel * _model ); -}; - -#endif diff --git a/plugins/stk/voices/percflute/Makefile.am b/plugins/stk/voices/percflute/Makefile.am deleted file mode 100644 index bdacf3b80..000000000 --- a/plugins/stk/voices/percflute/Makefile.am +++ /dev/null @@ -1,46 +0,0 @@ -AUTOMAKE_OPTIONS = foreign 1.4 - - -INCLUDES = -I@stk_includes@ -I$(top_srcdir)/include -I$(top_srcdir)/src/lib -I. -I$(top_srcdir)/plugins/stk/voices/include - - -AM_CXXFLAGS := $(AM_CXXFLAGS) $(QT_CXXFLAGS) -DPLUGIN_NAME="percflute" - - -%.moc: ./%.h - $(MOC) -o $@ $< - - -MOC_FILES = ./percflute_model.moc - -BUILT_SOURCES = $(MOC_FILES) ./embedded_resources.h -EMBEDDED_RESOURCES = $(wildcard *png) - -./embedded_resources.h: $(EMBEDDED_RESOURCES) - $(BIN2RES) $(EMBEDDED_RESOURCES) > $@ - -EXTRA_DIST = $(EMBEDDED_RESOURCES) - - -CLEANFILES = $(MOC_FILES) ./embedded_resources.h - - - -pkglib_LTLIBRARIES = libpercflute.la - -libpercflute_la_SOURCES = percflute_model.cpp \ - percflute_model.h \ - percflute_processor.cpp \ - percflute_processor.h \ - percflute_instrument.cpp \ - percflute_instrument.h \ - percflute_instrument_view.cpp \ - percflute_instrument_view.h \ - $(top_srcdir)/plugins/stk/voices/src/stk_model.cpp \ - stk_model.h - - - -libpercflute_la_LDFLAGS = -L@stk_lib@ -lstk -Wl,-export-dynamic - -$(libpercflute_la_SOURCES): ./embedded_resources.h diff --git a/plugins/stk/voices/percflute/artwork.png b/plugins/stk/voices/percflute/artwork.png deleted file mode 100644 index 5099bbcde8643664f01fdebcc6ffe48f83a72107..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 64581 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 diff --git a/plugins/stk/voices/resonate/logo.png b/plugins/stk/voices/resonate/logo.png deleted file mode 100644 index 93fcd1746131e93516a5c85394decef1d7df2561..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 659 zcmV;E0&M+>P)BB%v^%K{!OpGvZ5fKp)5fL#?O|eA$Le0=`hnTRw z&NAP2XGBCqM8p+UMnyzKL_|cyXEn``*j+PR>3}$HZJnjhUh$2`EjM4U%iQEaZ~461 zxJr!GENm6e*Pq$3&r@7UEwPH`r!hUf_O>>uVvDczH&-Y?!b>wOBYBlI{ z+N8^CiYH8nclFf;eisX>Bkzfas=+Gpb(LP*#H44doe}Y|>#GCbikqv!M)9TryTnQB z>SET5h(lg>pJg>GmpbD&bF0BlvB|JFYGuvFo%Wa%5i#Nwi|Zn85r=CQM#QK%=IZ)u z78$bHN5(`Px4PPROuSPKmWVMcoe~dJXL_wMEcR6!+r`FeFeG+Wc~tyrMg1L?i<8yH z0dadZ*eaf@Dc%;}8K}><6$h(@LGe>H=yTc`12xSx z#>7+A%4YXe8w(v4PgV=}iw~>8D)Cj#aJNYlZmSC%5MO%4b>`?dXoH`{uzA(OOX7uU zuu;5GEo>5_7T0;kMMOkI#6e4|ja}m2YOqs0TrIF$>@%m%af1zZ7&d0Y2}itdolEK> tj*4rm!H5{FHWvCpY^$!WuCD)&KLEu%@0qNKIFkSX002ovPDHLkV1i3NG93T_ diff --git a/plugins/stk/voices/resonate/resonate_instrument.cpp b/plugins/stk/voices/resonate/resonate_instrument.cpp deleted file mode 100644 index 39e81ef0f..000000000 --- a/plugins/stk/voices/resonate/resonate_instrument.cpp +++ /dev/null @@ -1,102 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "engine.h" -#include "note_play_handle.h" - -#include "resonate_instrument.h" -#include "resonate_instrument_view.h" -#include "resonate_processor.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embedded_resources.h" - - -extern "C" -{ - -plugin::descriptor resonate_plugin_descriptor = -{ - STRINGIFY_PLUGIN_NAME( PLUGIN_NAME ), - "Resonate", - QT_TRANSLATE_NOOP( "pluginBrowser", - "Filered noise" ), - "Danny McRae ", - 0x0100, - plugin::Instrument, - new pluginPixmapLoader( "logo" ), - NULL -} ; - -} - - -resonateInstrument::resonateInstrument( instrumentTrack * _channel_track ): - stkInstrument( _channel_track, &resonate_plugin_descriptor ) -{ - model()->resonanceFrequency()->setTrack( _channel_track ); - model()->poleRadii()->setTrack( _channel_track ); - model()->notchFrequency()->setTrack( _channel_track ); - model()->zeroRadii()->setTrack( _channel_track ); -} - - - - -resonateInstrument::~resonateInstrument() -{ -} - - - - -QString resonateInstrument::nodeName( void ) const -{ - return( resonate_plugin_descriptor.name ); -} - - - - -pluginView * resonateInstrument::instantiateView( QWidget * _parent ) -{ - return( new resonateInstrumentView( this, _parent ) ); -} - - - - -extern "C" -{ - -// neccessary for getting instance out of shared lib -plugin * lmms_plugin_main( model * _model, void * _data ) -{ - return( new resonateInstrument( static_cast( _data ) ) ); -} - - -} - - diff --git a/plugins/stk/voices/resonate/resonate_instrument.h b/plugins/stk/voices/resonate/resonate_instrument.h deleted file mode 100644 index 5024241bd..000000000 --- a/plugins/stk/voices/resonate/resonate_instrument.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _RESONATE_INSTRUMENT_H -#define _RESONATE_INSTRUMENT_H - -#include "stk_instrument.h" - -#include "resonate_processor.h" -#include "resonate_model.h" - - -class resonateInstrument : public stkInstrument -{ -public: - resonateInstrument( instrumentTrack * _channel_track ); - virtual ~resonateInstrument( void ); - - QString nodeName( void ) const; - - pluginView * instantiateView( QWidget * _parent ); -}; - -#endif diff --git a/plugins/stk/voices/resonate/resonate_instrument_view.cpp b/plugins/stk/voices/resonate/resonate_instrument_view.cpp deleted file mode 100644 index ca31572e8..000000000 --- a/plugins/stk/voices/resonate/resonate_instrument_view.cpp +++ /dev/null @@ -1,100 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include -#include -#include - -#include "resonate_instrument_view.h" - -#include -#include - -#include "engine.h" -#include "gui_templates.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embed.cpp" - - -resonateInstrumentView::resonateInstrumentView( resonateInstrument * _instrument, QWidget * _parent ) : - stkInstrumentView( _instrument, _parent ) -{ - QVBoxLayout * vl = new QVBoxLayout( m_topView ); - QHBoxLayout * h1 = new QHBoxLayout; - QHBoxLayout * h2 = new QHBoxLayout; - - m_resonanceFrequency = new knob( knobSmall_17, m_topView, tr( "Resonance" ) ); - m_resonanceFrequency->setLabel( tr( "Resonance Frequency" ) ); - m_resonanceFrequency->setHintText( tr( "Frequency:" ) + " ", "" ); - - m_poleRadii = new knob( knobSmall_17, m_topView, tr( "Pole Radii" ) ); - m_poleRadii->setLabel( tr( "Pole Radii" ) ); - m_poleRadii->setHintText( tr( "Radii:" ) + " ", "" ); - - m_notchFrequency = new knob( knobSmall_17, m_topView, tr( "Notch" ) ); - m_notchFrequency->setLabel( tr( "Notch Frequency" ) ); - m_notchFrequency->setHintText( tr( "Frequency:" ) + " ", "" ); - - m_zeroRadii = new knob( knobSmall_17, m_topView, tr( "Zero Radii" ) ); - m_zeroRadii->setLabel( tr( "Zero Radii" ) ); - m_zeroRadii->setHintText( tr( "Radii:" ) + " ", "" ); - - h1->addWidget( m_resonanceFrequency ); - h1->addWidget( m_poleRadii ); - - h2->addWidget( m_notchFrequency ); - h2->addWidget( m_zeroRadii ); - - vl->addLayout( h1 ); - vl->addLayout( h2 ); - - setAutoFillBackground( TRUE ); - QPalette pal; - pal.setBrush( backgroundRole(), PLUGIN_NAME::getIconPixmap( "artwork" ) ); - setPalette( pal ); -} - - - - -resonateInstrumentView::~resonateInstrumentView() -{ -} - - - - -void resonateInstrumentView::modelChanged( void ) -{ - stkInstrumentView::modelChanged(); - - resonateInstrument * inst = castModel(); - m_resonanceFrequency->setModel( inst->model()->resonanceFrequency() ); - m_poleRadii->setModel( inst->model()->poleRadii() ); - m_notchFrequency->setModel( inst->model()->notchFrequency() ); - m_zeroRadii->setModel( inst->model()->zeroRadii() ); -} - - - diff --git a/plugins/stk/voices/resonate/resonate_instrument_view.h b/plugins/stk/voices/resonate/resonate_instrument_view.h deleted file mode 100644 index 811455283..000000000 --- a/plugins/stk/voices/resonate/resonate_instrument_view.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _RESONATE_INSTRUMENT_VIEW_H -#define _RESONATE_INSTRUMENT_VIEW_H - -#include "knob.h" - -#include "stk_instrument_view.h" -#include "resonate_instrument.h" - - -class resonateInstrumentView: public stkInstrumentView -{ -public: - resonateInstrumentView( resonateInstrument * _instrument, QWidget * _parent ); - virtual ~resonateInstrumentView( void ); - -private: - virtual void modelChanged( void ); - - knob * m_resonanceFrequency; - knob * m_poleRadii; - knob * m_notchFrequency; - knob * m_zeroRadii; -}; - -#endif diff --git a/plugins/stk/voices/resonate/resonate_model.cpp b/plugins/stk/voices/resonate/resonate_model.cpp deleted file mode 100644 index c7c47b1e4..000000000 --- a/plugins/stk/voices/resonate/resonate_model.cpp +++ /dev/null @@ -1,83 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "resonate_model.h" - - -resonateModel::resonateModel( bool _monophonic, - StkFloat _portamento, - StkFloat _bend, - StkFloat _bend_range, - bool _velocity_sensitive_lpf, - StkFloat _velocity_sensitive_q, - StkFloat _volume, - StkFloat _pan, - StkFloat _spread, - StkFloat _resonance_frequency, - StkFloat _pole_radii, - StkFloat _notch_frequency, - StkFloat _zero_radii ): - stkModel( _monophonic, _portamento, _bend, _bend_range, _velocity_sensitive_lpf, _velocity_sensitive_q, _volume, _pan, _spread ), - m_resonanceFrequency( new floatModel( _resonance_frequency, 0.0f, 128.0f, 0.1f, this ) ), - m_poleRadii( new floatModel( _pole_radii, 0.0f, 128.0f, 0.1f, this ) ), - m_notchFrequency( new floatModel( _notch_frequency, 0.0f, 128.0f, 0.1f, this ) ), - m_zeroRadii( new floatModel( _zero_radii, 0.0f, 128.0f, 0.1f, this ) ) -{ -} - - - - -resonateModel::~resonateModel() -{ - delete m_resonanceFrequency; - delete m_poleRadii; - delete m_notchFrequency; - delete m_zeroRadii; -} - - - - -void resonateModel::saveSettings( QDomDocument & _doc, QDomElement & _parent ) -{ - stkModel::saveSettings( _doc, _parent ); - m_resonanceFrequency->saveSettings( _doc, _parent, "resonancefrequency" ); - m_poleRadii->saveSettings( _doc, _parent, "poleradii" ); - m_notchFrequency->saveSettings( _doc, _parent, "notchfrequency" ); - m_zeroRadii->saveSettings( _doc, _parent, "zeroradii" ); -} - - - - -void resonateModel::loadSettings( const QDomElement & _this ) -{ - stkModel::loadSettings( _this ); - m_resonanceFrequency->loadSettings( _this, "resonancefrequency" ); - m_poleRadii->loadSettings( _this, "poleradii" ); - m_notchFrequency->loadSettings( _this, "notchfrequency" ); - m_zeroRadii->loadSettings( _this, "zeroradii" ); -} - diff --git a/plugins/stk/voices/resonate/resonate_model.h b/plugins/stk/voices/resonate/resonate_model.h deleted file mode 100644 index 2318f41f7..000000000 --- a/plugins/stk/voices/resonate/resonate_model.h +++ /dev/null @@ -1,79 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _RESONATE_MODEL_H -#define _RESONATE_MODEL_H - -#include "stk_model.h" - - -class resonateModel: public stkModel -{ -public: - resonateModel( bool _monophonic = FALSE, - StkFloat _portamento = 0.0f, - StkFloat _bend = 0.0f, - StkFloat _bend_range = 2.0f, - bool _velocity_sensitive_lpf = TRUE, - StkFloat _velocity_sensitive_q = 0.5f, - StkFloat _volume = 1.0f, - StkFloat _pan = 0.0f, - StkFloat _spread = 0.0f, - StkFloat _resonance_frequency = 64.0f, - StkFloat _pole_radii = 64.0f, - StkFloat _notch_frequency = 64.0f, - StkFloat _zero_radii = 64.0f ); - ~resonateModel(); - - inline floatModel * resonanceFrequency( void ) const - { - return( m_resonanceFrequency ); - } - - inline floatModel * poleRadii( void ) const - { - return( m_poleRadii ); - } - - inline floatModel * notchFrequency( void ) const - { - return( m_notchFrequency ); - } - - inline floatModel * zeroRadii( void ) const - { - return( m_zeroRadii ); - } - - void saveSettings( QDomDocument & _doc, QDomElement & _parent ); - - void loadSettings( const QDomElement & _this ); - -private: - floatModel * m_resonanceFrequency; - floatModel * m_poleRadii; - floatModel * m_notchFrequency; - floatModel * m_zeroRadii; -}; - -#endif diff --git a/plugins/stk/voices/resonate/resonate_processor.cpp b/plugins/stk/voices/resonate/resonate_processor.cpp deleted file mode 100644 index 6a1e86fe8..000000000 --- a/plugins/stk/voices/resonate/resonate_processor.cpp +++ /dev/null @@ -1,50 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include "resonate_processor.h" -#include "config_mgr.h" - - -resonateProcessor::resonateProcessor( sample_rate_t _sample_rate ): - stkProcessor( _sample_rate ) -{ -} - - - - -resonateProcessor::~resonateProcessor() -{ -} - - - - -void resonateProcessor::setControls( resonateModel * _model ) -{ - voice()->controlChange( 2, _model->resonanceFrequency()->value() ); - voice()->controlChange( 4, _model->poleRadii()->value() ); - voice()->controlChange( 11, _model->notchFrequency()->value() ); - voice()->controlChange( 1, _model->zeroRadii()->value() ); - m_delayRead = m_delayWrite - static_cast( _model->spread()->value() ); -} diff --git a/plugins/stk/voices/resonate/resonate_processor.h b/plugins/stk/voices/resonate/resonate_processor.h deleted file mode 100644 index 1ad005825..000000000 --- a/plugins/stk/voices/resonate/resonate_processor.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _RESONATE_PROCESSOR_H -#define _RESONATE_PROCESSOR_H - -#include "Resonate.h" - -#include "stk_processor.h" - -#include "resonate_model.h" - -class resonateProcessor: public stkProcessor -{ -public: - resonateProcessor( sample_rate_t _sample_rate ); - ~resonateProcessor( void ); - - void setControls( resonateModel * _model ); -}; - -#endif diff --git a/plugins/stk/voices/rhodey/Makefile.am b/plugins/stk/voices/rhodey/Makefile.am deleted file mode 100644 index b00bba26a..000000000 --- a/plugins/stk/voices/rhodey/Makefile.am +++ /dev/null @@ -1,46 +0,0 @@ -AUTOMAKE_OPTIONS = foreign 1.4 - - -INCLUDES = -I@stk_includes@ -I$(top_srcdir)/include -I$(top_srcdir)/src/lib -I. -I$(top_srcdir)/plugins/stk/voices/include - - -AM_CXXFLAGS := $(AM_CXXFLAGS) $(QT_CXXFLAGS) -DPLUGIN_NAME="rhodey" - - -%.moc: ./%.h - $(MOC) -o $@ $< - - -MOC_FILES = ./rhodey_model.moc - -BUILT_SOURCES = $(MOC_FILES) ./embedded_resources.h -EMBEDDED_RESOURCES = $(wildcard *png) - -./embedded_resources.h: $(EMBEDDED_RESOURCES) - $(BIN2RES) $(EMBEDDED_RESOURCES) > $@ - -EXTRA_DIST = $(EMBEDDED_RESOURCES) - - -CLEANFILES = $(MOC_FILES) ./embedded_resources.h - - - -pkglib_LTLIBRARIES = librhodey.la - -librhodey_la_SOURCES = rhodey_model.cpp \ - rhodey_model.h \ - rhodey_processor.cpp \ - rhodey_processor.h \ - rhodey_instrument.cpp \ - rhodey_instrument.h \ - rhodey_instrument_view.cpp \ - rhodey_instrument_view.h \ - $(top_srcdir)/plugins/stk/voices/src/stk_model.cpp \ - stk_model.h - - - -librhodey_la_LDFLAGS = -L@stk_lib@ -lstk -Wl,-export-dynamic - -$(librhodey_la_SOURCES): ./embedded_resources.h diff --git a/plugins/stk/voices/rhodey/artwork.png b/plugins/stk/voices/rhodey/artwork.png deleted file mode 100644 index 8c7581ba2eb4eac55ce4ad9eb3972389e843b6f0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 64730 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

Dg=*3$a`N}ox; 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 P00000NkvXXu0mjfDifSo diff --git a/plugins/stk/voices/rhodey/logo.png b/plugins/stk/voices/rhodey/logo.png deleted file mode 100644 index 93fcd1746131e93516a5c85394decef1d7df2561..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 659 zcmV;E0&M+>P)BB%v^%K{!OpGvZ5fKp)5fL#?O|eA$Le0=`hnTRw z&NAP2XGBCqM8p+UMnyzKL_|cyXEn``*j+PR>3}$HZJnjhUh$2`EjM4U%iQEaZ~461 zxJr!GENm6e*Pq$3&r@7UEwPH`r!hUf_O>>uVvDczH&-Y?!b>wOBYBlI{ z+N8^CiYH8nclFf;eisX>Bkzfas=+Gpb(LP*#H44doe}Y|>#GCbikqv!M)9TryTnQB z>SET5h(lg>pJg>GmpbD&bF0BlvB|JFYGuvFo%Wa%5i#Nwi|Zn85r=CQM#QK%=IZ)u z78$bHN5(`Px4PPROuSPKmWVMcoe~dJXL_wMEcR6!+r`FeFeG+Wc~tyrMg1L?i<8yH z0dadZ*eaf@Dc%;}8K}><6$h(@LGe>H=yTc`12xSx z#>7+A%4YXe8w(v4PgV=}iw~>8D)Cj#aJNYlZmSC%5MO%4b>`?dXoH`{uzA(OOX7uU zuu;5GEo>5_7T0;kMMOkI#6e4|ja}m2YOqs0TrIF$>@%m%af1zZ7&d0Y2}itdolEK> tj*4rm!H5{FHWvCpY^$!WuCD)&KLEu%@0qNKIFkSX002ovPDHLkV1i3NG93T_ diff --git a/plugins/stk/voices/rhodey/rhodey_instrument.cpp b/plugins/stk/voices/rhodey/rhodey_instrument.cpp deleted file mode 100644 index f73635970..000000000 --- a/plugins/stk/voices/rhodey/rhodey_instrument.cpp +++ /dev/null @@ -1,103 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "engine.h" -#include "note_play_handle.h" - -#include "rhodey_instrument.h" -#include "rhodey_instrument_view.h" -#include "rhodey_processor.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embedded_resources.h" - - -extern "C" -{ - -plugin::descriptor rhodey_plugin_descriptor = -{ - STRINGIFY_PLUGIN_NAME( PLUGIN_NAME ), - "Rhodey", - QT_TRANSLATE_NOOP( "pluginBrowser", - "Rhodes noises" ), - "Danny McRae ", - 0x0100, - plugin::Instrument, - new pluginPixmapLoader( "logo" ), - NULL -} ; - -} - - -rhodeyInstrument::rhodeyInstrument( instrumentTrack * _channel_track ): - stkInstrument( _channel_track, &rhodey_plugin_descriptor ) -{ - model()->index()->setTrack( _channel_track ); - model()->crossfade()->setTrack( _channel_track ); - model()->lfoSpeed()->setTrack( _channel_track ); - model()->lfoDepth()->setTrack( _channel_track ); - model()->adsrTarget()->setTrack( _channel_track ); -} - - - - -rhodeyInstrument::~rhodeyInstrument() -{ -} - - - - -QString rhodeyInstrument::nodeName( void ) const -{ - return( rhodey_plugin_descriptor.name ); -} - - - - -pluginView * rhodeyInstrument::instantiateView( QWidget * _parent ) -{ - return( new rhodeyInstrumentView( this, _parent ) ); -} - - - - -extern "C" -{ - -// neccessary for getting instance out of shared lib -plugin * lmms_plugin_main( model * _model, void * _data ) -{ - return( new rhodeyInstrument( static_cast( _data ) ) ); -} - - -} - - diff --git a/plugins/stk/voices/rhodey/rhodey_instrument.h b/plugins/stk/voices/rhodey/rhodey_instrument.h deleted file mode 100644 index 4fdfa7b8d..000000000 --- a/plugins/stk/voices/rhodey/rhodey_instrument.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _RHODEY_INSTRUMENT_H -#define _RHODEY_INSTRUMENT_H - -#include "stk_instrument.h" - -#include "rhodey_processor.h" -#include "rhodey_model.h" - - -class rhodeyInstrument : public stkInstrument -{ -public: - rhodeyInstrument( instrumentTrack * _channel_track ); - virtual ~rhodeyInstrument( void ); - - QString nodeName( void ) const; - - pluginView * instantiateView( QWidget * _parent ); -}; - -#endif diff --git a/plugins/stk/voices/rhodey/rhodey_instrument_view.cpp b/plugins/stk/voices/rhodey/rhodey_instrument_view.cpp deleted file mode 100644 index 34a204cd7..000000000 --- a/plugins/stk/voices/rhodey/rhodey_instrument_view.cpp +++ /dev/null @@ -1,110 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include -#include -#include - -#include "rhodey_instrument_view.h" - -#include -#include - -#include "engine.h" -#include "gui_templates.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embed.cpp" - - -rhodeyInstrumentView::rhodeyInstrumentView( rhodeyInstrument * _instrument, QWidget * _parent ) : - stkInstrumentView( _instrument, _parent ) -{ - QVBoxLayout * vl = new QVBoxLayout( m_topView ); - QHBoxLayout * h1 = new QHBoxLayout(); - QHBoxLayout * h2 = new QHBoxLayout(); - QHBoxLayout * h3 = new QHBoxLayout(); - - - m_index = new knob( knobSmall_17, m_topView, tr( "Index" ) ); - m_index->setLabel( tr( "Modulator Index" ) ); - m_index->setHintText( tr( "Index:" ) + " ", "" ); - - m_crossfade = new knob( knobSmall_17, m_topView, tr( "Crossfade" ) ); - m_crossfade->setLabel( tr( "Modulator Crossfade" ) ); - m_crossfade->setHintText( tr( "Crossfade:" ) + " ", "" ); - - m_lfoSpeed = new knob( knobSmall_17, m_topView, tr( "LFO Speed" ) ); - m_lfoSpeed->setLabel( tr( "LFO Speed" ) ); - m_lfoSpeed->setHintText( tr( "LFO Speed:" ) + " ", "" ); - - m_lfoDepth = new knob( knobSmall_17, m_topView, tr( "LFO Depth" ) ); - m_lfoDepth->setLabel( tr( "LFO Depth" ) ); - m_lfoDepth->setHintText( tr( "LFO Depth:" ) + " ", "" ); - - m_adsrTarget = new knob( knobSmall_17, m_topView, tr( "ADSR Target" ) ); - m_adsrTarget->setLabel( tr( "ADSR Target" ) ); - m_adsrTarget->setHintText( tr( "ADSR Target:" ) + " ", "" ); - - h1->addWidget( m_index ); - h1->addWidget( m_crossfade ); - - h2->addWidget( m_lfoSpeed ); - h2->addWidget( m_lfoDepth ); - - h3->addWidget( m_adsrTarget ); - - vl->addLayout( h1 ); - vl->addLayout( h2 ); - vl->addLayout( h3 ); - - setAutoFillBackground( TRUE ); - QPalette pal; - pal.setBrush( backgroundRole(), PLUGIN_NAME::getIconPixmap( "artwork" ) ); - setPalette( pal ); -} - - - - -rhodeyInstrumentView::~rhodeyInstrumentView() -{ -} - - - - -void rhodeyInstrumentView::modelChanged( void ) -{ - stkInstrumentView::modelChanged(); - - rhodeyInstrument * inst = castModel(); - m_index->setModel( inst->model()->index() ); - m_crossfade->setModel( inst->model()->crossfade() ); - m_lfoSpeed->setModel( inst->model()->lfoSpeed() ); - m_lfoDepth->setModel( inst->model()->lfoDepth() ); - m_adsrTarget->setModel( inst->model()->adsrTarget() ); -} - - - diff --git a/plugins/stk/voices/rhodey/rhodey_instrument_view.h b/plugins/stk/voices/rhodey/rhodey_instrument_view.h deleted file mode 100644 index 607c3697b..000000000 --- a/plugins/stk/voices/rhodey/rhodey_instrument_view.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _RHODEY_INSTRUMENT_VIEW_H -#define _RHODEY_INSTRUMENT_VIEW_H - -#include "knob.h" - -#include "stk_instrument_view.h" -#include "rhodey_instrument.h" - - -class rhodeyInstrumentView: public stkInstrumentView -{ -public: - rhodeyInstrumentView( rhodeyInstrument * _instrument, QWidget * _parent ); - virtual ~rhodeyInstrumentView( void ); - -private: - virtual void modelChanged( void ); - - knob * m_index; - knob * m_crossfade; - knob * m_lfoSpeed; - knob * m_lfoDepth; - knob * m_adsrTarget; -}; - -#endif diff --git a/plugins/stk/voices/rhodey/rhodey_model.cpp b/plugins/stk/voices/rhodey/rhodey_model.cpp deleted file mode 100644 index a03afb8d6..000000000 --- a/plugins/stk/voices/rhodey/rhodey_model.cpp +++ /dev/null @@ -1,88 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "rhodey_model.h" - - -rhodeyModel::rhodeyModel( bool _monophonic, - StkFloat _portamento, - StkFloat _bend, - StkFloat _bend_range, - bool _velocity_sensitive_lpf, - StkFloat _velocity_sensitive_q, - StkFloat _volume, - StkFloat _pan, - StkFloat _spread, - StkFloat _index, - StkFloat _crossfade, - StkFloat _lfo_speed, - StkFloat _lfo_depth, - StkFloat _adsr_target ): - stkModel( _monophonic, _portamento, _bend, _bend_range, _velocity_sensitive_lpf, _velocity_sensitive_q, _volume, _pan, _spread ), - m_index( new floatModel( _index, 0.0f, 128.0f, 0.1f, this ) ), - m_crossfade( new floatModel( _crossfade, 0.0f, 128.0f, 0.1f, this ) ), - m_lfoSpeed( new floatModel( _lfo_speed, 0.0f, 128.0f, 0.1f, this ) ), - m_lfoDepth( new floatModel( _lfo_depth, 0.0f, 128.0f, 0.1f, this ) ), - m_adsrTarget( new floatModel( _adsr_target, 0.0f, 128.0f, 0.1f, this ) ) -{ -} - - - - -rhodeyModel::~rhodeyModel() -{ - delete m_index; - delete m_crossfade; - delete m_lfoSpeed; - delete m_lfoDepth; - delete m_adsrTarget; -} - - - - -void rhodeyModel::saveSettings( QDomDocument & _doc, QDomElement & _parent ) -{ - stkModel::saveSettings( _doc, _parent ); - m_index->saveSettings( _doc, _parent, "index" ); - m_crossfade->saveSettings( _doc, _parent, "crossfade" ); - m_lfoSpeed->saveSettings( _doc, _parent, "lfospeed" ); - m_lfoDepth->saveSettings( _doc, _parent, "lfodepth" ); - m_adsrTarget->saveSettings( _doc, _parent, "adsrtarget" ); -} - - - - -void rhodeyModel::loadSettings( const QDomElement & _this ) -{ - stkModel::loadSettings( _this ); - m_index->loadSettings( _this, "index" ); - m_crossfade->loadSettings( _this, "crossfade" ); - m_lfoSpeed->loadSettings( _this, "lfospeed" ); - m_lfoDepth->loadSettings( _this, "lfodepth" ); - m_adsrTarget->loadSettings( _this, "adsrtarget" ); -} - diff --git a/plugins/stk/voices/rhodey/rhodey_model.h b/plugins/stk/voices/rhodey/rhodey_model.h deleted file mode 100644 index a8201305d..000000000 --- a/plugins/stk/voices/rhodey/rhodey_model.h +++ /dev/null @@ -1,86 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _RHODEY_MODEL_H -#define _RHODEY_MODEL_H - -#include "stk_model.h" - - -class rhodeyModel: public stkModel -{ -public: - rhodeyModel( bool _monophonic = FALSE, - StkFloat _portamento = 0.0f, - StkFloat _bend = 0.0f, - StkFloat _bend_range = 2.0f, - bool _velocity_sensitive_lpf = TRUE, - StkFloat _velocity_sensitive_q = 0.5f, - StkFloat _volume = 1.0f, - StkFloat _pan = 0.0f, - StkFloat _spread = 0.0f, - StkFloat _index = 64.0f, - StkFloat _crossfade = 64.0f, - StkFloat _lfo_speed = 64.0f, - StkFloat _lfo_depth = 64.0f, - StkFloat _adsr_target = 64.0f ); - ~rhodeyModel(); - - inline floatModel * index( void ) const - { - return( m_index ); - } - - inline floatModel * crossfade( void ) const - { - return( m_crossfade ); - } - - inline floatModel * lfoSpeed( void ) - { - return( m_lfoSpeed ); - } - - inline floatModel * lfoDepth( void ) const - { - return( m_lfoDepth ); - } - - inline floatModel * adsrTarget( void ) const - { - return( m_adsrTarget ); - } - - void saveSettings( QDomDocument & _doc, QDomElement & _parent ); - - void loadSettings( const QDomElement & _this ); - -private: - floatModel * m_index; - floatModel * m_crossfade; - floatModel * m_lfoSpeed; - floatModel * m_lfoDepth; - floatModel * m_adsrTarget; -}; - -#endif diff --git a/plugins/stk/voices/rhodey/rhodey_processor.cpp b/plugins/stk/voices/rhodey/rhodey_processor.cpp deleted file mode 100644 index 64a220ccf..000000000 --- a/plugins/stk/voices/rhodey/rhodey_processor.cpp +++ /dev/null @@ -1,51 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include "rhodey_processor.h" -#include "config_mgr.h" - - -rhodeyProcessor::rhodeyProcessor( sample_rate_t _sample_rate ): - stkProcessor( _sample_rate ) -{ -} - - - - -rhodeyProcessor::~rhodeyProcessor() -{ -} - - - - -void rhodeyProcessor::setControls( rhodeyModel * _model ) -{ - voice()->controlChange( 2, _model->index()->value() ); - voice()->controlChange( 4, _model->crossfade()->value() ); - voice()->controlChange( 11, _model->lfoSpeed()->value() ); - voice()->controlChange( 1, _model->lfoDepth()->value() ); - voice()->controlChange( 128, _model->adsrTarget()->value() ); - m_delayRead = m_delayWrite - static_cast( _model->spread()->value() ); -} diff --git a/plugins/stk/voices/rhodey/rhodey_processor.h b/plugins/stk/voices/rhodey/rhodey_processor.h deleted file mode 100644 index 77dc26069..000000000 --- a/plugins/stk/voices/rhodey/rhodey_processor.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _RHODEY_PROCESSOR_H -#define _RHODEY_PROCESSOR_H - -#include "Rhodey.h" - -#include "stk_processor.h" - -#include "rhodey_model.h" - -class rhodeyProcessor: public stkProcessor -{ -public: - rhodeyProcessor( sample_rate_t _sample_rate ); - ~rhodeyProcessor( void ); - - void setControls( rhodeyModel * _model ); -}; - -#endif diff --git a/plugins/stk/voices/src/stk_model.cpp b/plugins/stk/voices/src/stk_model.cpp deleted file mode 100644 index 6ccdd211e..000000000 --- a/plugins/stk/voices/src/stk_model.cpp +++ /dev/null @@ -1,122 +0,0 @@ -/* - * stk_model.cpp - base class for stk instrument models - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include "stk_model.h" - - -stkModel::stkModel( bool _monophonic, - StkFloat _portamento, - StkFloat _bend, - StkFloat _bend_range, - bool _velocity_sensitive_lpf, - StkFloat _velocity_sensitive_q, - StkFloat _volume, - StkFloat _pan, - bool _release_triggered, - bool _randomize_attack, - StkFloat _randomize_length, - StkFloat _randomize_velocity_amount, - StkFloat _randomize_frequency_amount, - StkFloat _spread ): - model( NULL ), - m_monophonic( new boolModel( _monophonic, this ) ), - m_portamento( new floatModel( _portamento, 0.0f, 1000.0f, 1.0f, this ) ), - m_bend( new floatModel( _bend, -4096.0f, 4096.0f, 8.192f, this ) ), - m_bendRange( new floatModel( _bend_range, 0.0f, 24.0f, 0.24f, this ) ), - m_velocitySensitiveLPF( new boolModel( _velocity_sensitive_lpf, this ) ), - m_velocitySensitiveQ( new floatModel( _velocity_sensitive_q, basicFilters<>::minQ(), 10.0f, 0.01f, this ) ), - m_volume( new floatModel( _volume, 0.0f, 1.0f, 0.01f, this ) ), - m_pan( new floatModel( _pan, -1.0f, 1.0f, 0.02f, this ) ), - m_releaseTriggered( new boolModel( _release_triggered, this ) ), - m_randomizeAttack( new boolModel( _randomize_attack, this ) ), - m_randomizeLength( new floatModel( _randomize_length, 0.0f, 1000.0f, 1.0f, this ) ), - m_randomizeVelocityAmount( new floatModel( _randomize_velocity_amount, 0.0f, 1.0f, 0.01f, this ) ), - m_randomizeFrequencyAmount( new floatModel( _randomize_frequency_amount, 0.0f, 4.0f, 0.04f, this ) ), - m_spread( new floatModel( _spread, 0.0f, 255.0f, 1.0f, this ) ) -{ -} - - - - -stkModel::~stkModel() -{ - delete m_portamento; - delete m_bend; - delete m_bendRange; - delete m_velocitySensitiveLPF; - delete m_velocitySensitiveQ; - delete m_volume; - delete m_pan; - delete m_releaseTriggered; - delete m_randomizeAttack; - delete m_randomizeVelocityAmount; - delete m_randomizeFrequencyAmount; - delete m_spread; -} - - - - -void stkModel::saveSettings( QDomDocument & _doc, QDomElement & _parent ) -{ - m_monophonic->saveSettings( _doc, _parent, "monophonic" ); - m_portamento->saveSettings( _doc, _parent, "portamento" ); - m_bend->saveSettings( _doc, _parent, "bend" ); - m_bendRange->saveSettings( _doc, _parent, "bendrange" ); - m_velocitySensitiveLPF->saveSettings( _doc, _parent, "velocitysensitivelpf" ); - m_velocitySensitiveQ->saveSettings( _doc, _parent, "velocitysensitiveq" ); - m_volume->saveSettings( _doc, _parent, "volume" ); - m_pan->saveSettings( _doc, _parent, "pan" ); - m_releaseTriggered->saveSettings( _doc, _parent, "releasetriggered" ); - m_randomizeAttack->saveSettings( _doc, _parent, "randomizeattack" ); - m_randomizeLength->saveSettings( _doc, _parent, "randomizelength" ); - m_randomizeVelocityAmount->saveSettings( _doc, _parent, "randomizevelocityamount" ); - m_randomizeFrequencyAmount->saveSettings( _doc, _parent, "randomizefrequencyamount" ); - m_spread->saveSettings( _doc, _parent, "spread" ); -} - - - - -void stkModel::loadSettings( const QDomElement & _this ) -{ - m_monophonic->loadSettings( _this, "monophonic" ); - m_portamento->loadSettings( _this, "portamento" ); - m_bend->loadSettings( _this, "bend" ); - m_bendRange->loadSettings( _this, "bendrange" ); - m_velocitySensitiveLPF->loadSettings( _this, "velocitysensitivelpf" ); - m_velocitySensitiveQ->loadSettings( _this, "velocitysensitiveq" ); - m_volume->loadSettings( _this, "volume" ); - m_pan->loadSettings( _this, "pan" ); - m_releaseTriggered->loadSettings( _this, "releasetriggered" ); - m_randomizeAttack->loadSettings( _this, "randomizeattack" ); - m_randomizeLength->loadSettings( _this, "randomizelength" ); - m_randomizeVelocityAmount->loadSettings( _this, "randomizevelocityamount" ); - m_randomizeFrequencyAmount->loadSettings( _this, "randomizefrequencyamount" ); - m_spread->loadSettings( _this, "spread" ); -} - - diff --git a/plugins/stk/voices/tubebell/Makefile.am b/plugins/stk/voices/tubebell/Makefile.am deleted file mode 100644 index cb68f3b4b..000000000 --- a/plugins/stk/voices/tubebell/Makefile.am +++ /dev/null @@ -1,46 +0,0 @@ -AUTOMAKE_OPTIONS = foreign 1.4 - - -INCLUDES = -I@stk_includes@ -I$(top_srcdir)/include -I$(top_srcdir)/src/lib -I. -I$(top_srcdir)/plugins/stk/voices/include - - -AM_CXXFLAGS := $(AM_CXXFLAGS) $(QT_CXXFLAGS) -DPLUGIN_NAME="tubebell" - - -%.moc: ./%.h - $(MOC) -o $@ $< - - -MOC_FILES = ./tubebell_model.moc - -BUILT_SOURCES = $(MOC_FILES) ./embedded_resources.h -EMBEDDED_RESOURCES = $(wildcard *png) - -./embedded_resources.h: $(EMBEDDED_RESOURCES) - $(BIN2RES) $(EMBEDDED_RESOURCES) > $@ - -EXTRA_DIST = $(EMBEDDED_RESOURCES) - - -CLEANFILES = $(MOC_FILES) ./embedded_resources.h - - - -pkglib_LTLIBRARIES = libtubebell.la - -libtubebell_la_SOURCES = tubebell_model.cpp \ - tubebell_model.h \ - tubebell_processor.cpp \ - tubebell_processor.h \ - tubebell_instrument.cpp \ - tubebell_instrument.h \ - tubebell_instrument_view.cpp \ - tubebell_instrument_view.h \ - $(top_srcdir)/plugins/stk/voices/src/stk_model.cpp \ - stk_model.h - - - -libtubebell_la_LDFLAGS = -L@stk_lib@ -lstk -Wl,-export-dynamic - -$(libtubebell_la_SOURCES): ./embedded_resources.h diff --git a/plugins/stk/voices/tubebell/artwork.png b/plugins/stk/voices/tubebell/artwork.png deleted file mode 100644 index 0035320c3b5d1c7585566ad11e759a284b587535..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 64458 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≦v?qSy!rIVJf>^8tX>e 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 QE&u=k07*qoM6N<$f}!z|^Z)<= diff --git a/plugins/stk/voices/tubebell/logo.png b/plugins/stk/voices/tubebell/logo.png deleted file mode 100644 index 93fcd1746131e93516a5c85394decef1d7df2561..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 659 zcmV;E0&M+>P)BB%v^%K{!OpGvZ5fKp)5fL#?O|eA$Le0=`hnTRw z&NAP2XGBCqM8p+UMnyzKL_|cyXEn``*j+PR>3}$HZJnjhUh$2`EjM4U%iQEaZ~461 zxJr!GENm6e*Pq$3&r@7UEwPH`r!hUf_O>>uVvDczH&-Y?!b>wOBYBlI{ z+N8^CiYH8nclFf;eisX>Bkzfas=+Gpb(LP*#H44doe}Y|>#GCbikqv!M)9TryTnQB z>SET5h(lg>pJg>GmpbD&bF0BlvB|JFYGuvFo%Wa%5i#Nwi|Zn85r=CQM#QK%=IZ)u z78$bHN5(`Px4PPROuSPKmWVMcoe~dJXL_wMEcR6!+r`FeFeG+Wc~tyrMg1L?i<8yH z0dadZ*eaf@Dc%;}8K}><6$h(@LGe>H=yTc`12xSx z#>7+A%4YXe8w(v4PgV=}iw~>8D)Cj#aJNYlZmSC%5MO%4b>`?dXoH`{uzA(OOX7uU zuu;5GEo>5_7T0;kMMOkI#6e4|ja}m2YOqs0TrIF$>@%m%af1zZ7&d0Y2}itdolEK> tj*4rm!H5{FHWvCpY^$!WuCD)&KLEu%@0qNKIFkSX002ovPDHLkV1i3NG93T_ diff --git a/plugins/stk/voices/tubebell/tubebell_instrument.cpp b/plugins/stk/voices/tubebell/tubebell_instrument.cpp deleted file mode 100644 index 94e439d97..000000000 --- a/plugins/stk/voices/tubebell/tubebell_instrument.cpp +++ /dev/null @@ -1,103 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "engine.h" -#include "note_play_handle.h" - -#include "tubebell_instrument.h" -#include "tubebell_instrument_view.h" -#include "tubebell_processor.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embedded_resources.h" - - -extern "C" -{ - -plugin::descriptor tubebell_plugin_descriptor = -{ - STRINGIFY_PLUGIN_NAME( PLUGIN_NAME ), - "Tube Bell", - QT_TRANSLATE_NOOP( "pluginBrowser", - "Bell noises" ), - "Danny McRae ", - 0x0100, - plugin::Instrument, - new pluginPixmapLoader( "logo" ), - NULL -} ; - -} - - -tubebellInstrument::tubebellInstrument( instrumentTrack * _channel_track ): - stkInstrument( _channel_track, &tubebell_plugin_descriptor ) -{ - model()->index()->setTrack( _channel_track ); - model()->crossfade()->setTrack( _channel_track ); - model()->lfoSpeed()->setTrack( _channel_track ); - model()->lfoDepth()->setTrack( _channel_track ); - model()->adsrTarget()->setTrack( _channel_track ); -} - - - - -tubebellInstrument::~tubebellInstrument() -{ -} - - - - -QString tubebellInstrument::nodeName( void ) const -{ - return( tubebell_plugin_descriptor.name ); -} - - - - -pluginView * tubebellInstrument::instantiateView( QWidget * _parent ) -{ - return( new tubebellInstrumentView( this, _parent ) ); -} - - - - -extern "C" -{ - -// neccessary for getting instance out of shared lib -plugin * lmms_plugin_main( model * _model, void * _data ) -{ - return( new tubebellInstrument( static_cast( _data ) ) ); -} - - -} - - diff --git a/plugins/stk/voices/tubebell/tubebell_instrument.h b/plugins/stk/voices/tubebell/tubebell_instrument.h deleted file mode 100644 index c79aff760..000000000 --- a/plugins/stk/voices/tubebell/tubebell_instrument.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _TUBEBELL_INSTRUMENT_H -#define _TUBEBELL_INSTRUMENT_H - -#include "stk_instrument.h" - -#include "tubebell_processor.h" -#include "tubebell_model.h" - - -class tubebellInstrument : public stkInstrument -{ -public: - tubebellInstrument( instrumentTrack * _channel_track ); - virtual ~tubebellInstrument( void ); - - QString nodeName( void ) const; - - pluginView * instantiateView( QWidget * _parent ); -}; - -#endif diff --git a/plugins/stk/voices/tubebell/tubebell_instrument_view.cpp b/plugins/stk/voices/tubebell/tubebell_instrument_view.cpp deleted file mode 100644 index 03e5489d6..000000000 --- a/plugins/stk/voices/tubebell/tubebell_instrument_view.cpp +++ /dev/null @@ -1,110 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include -#include -#include - -#include "tubebell_instrument_view.h" - -#include -#include - -#include "engine.h" -#include "gui_templates.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embed.cpp" - - -tubebellInstrumentView::tubebellInstrumentView( tubebellInstrument * _instrument, QWidget * _parent ) : - stkInstrumentView( _instrument, _parent ) -{ - QVBoxLayout * vl = new QVBoxLayout( m_topView ); - QHBoxLayout * h1 = new QHBoxLayout(); - QHBoxLayout * h2 = new QHBoxLayout(); - QHBoxLayout * h3 = new QHBoxLayout(); - - - m_index = new knob( knobSmall_17, m_topView, tr( "Index" ) ); - m_index->setLabel( tr( "Modulator Index" ) ); - m_index->setHintText( tr( "Index:" ) + " ", "" ); - - m_crossfade = new knob( knobSmall_17, m_topView, tr( "Crossfade" ) ); - m_crossfade->setLabel( tr( "Modulator Crossfade" ) ); - m_crossfade->setHintText( tr( "Crossfade:" ) + " ", "" ); - - m_lfoSpeed = new knob( knobSmall_17, m_topView, tr( "LFO Speed" ) ); - m_lfoSpeed->setLabel( tr( "LFO Speed" ) ); - m_lfoSpeed->setHintText( tr( "LFO Speed:" ) + " ", "" ); - - m_lfoDepth = new knob( knobSmall_17, m_topView, tr( "LFO Depth" ) ); - m_lfoDepth->setLabel( tr( "LFO Depth" ) ); - m_lfoDepth->setHintText( tr( "LFO Depth:" ) + " ", "" ); - - m_adsrTarget = new knob( knobSmall_17, m_topView, tr( "ADSR Target" ) ); - m_adsrTarget->setLabel( tr( "ADSR Target" ) ); - m_adsrTarget->setHintText( tr( "ADSR Target:" ) + " ", "" ); - - h1->addWidget( m_index ); - h1->addWidget( m_crossfade ); - - h2->addWidget( m_lfoSpeed ); - h2->addWidget( m_lfoDepth ); - - h3->addWidget( m_adsrTarget ); - - vl->addLayout( h1 ); - vl->addLayout( h2 ); - vl->addLayout( h3 ); - - setAutoFillBackground( TRUE ); - QPalette pal; - pal.setBrush( backgroundRole(), PLUGIN_NAME::getIconPixmap( "artwork" ) ); - setPalette( pal ); -} - - - - -tubebellInstrumentView::~tubebellInstrumentView() -{ -} - - - - -void tubebellInstrumentView::modelChanged( void ) -{ - stkInstrumentView::modelChanged(); - - tubebellInstrument * inst = castModel(); - m_index->setModel( inst->model()->index() ); - m_crossfade->setModel( inst->model()->crossfade() ); - m_lfoSpeed->setModel( inst->model()->lfoSpeed() ); - m_lfoDepth->setModel( inst->model()->lfoDepth() ); - m_adsrTarget->setModel( inst->model()->adsrTarget() ); -} - - - diff --git a/plugins/stk/voices/tubebell/tubebell_instrument_view.h b/plugins/stk/voices/tubebell/tubebell_instrument_view.h deleted file mode 100644 index c3e8ae03a..000000000 --- a/plugins/stk/voices/tubebell/tubebell_instrument_view.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _TUBEBELL_INSTRUMENT_VIEW_H -#define _TUBEBELL_INSTRUMENT_VIEW_H - -#include "knob.h" - -#include "stk_instrument_view.h" -#include "tubebell_instrument.h" - - -class tubebellInstrumentView: public stkInstrumentView -{ -public: - tubebellInstrumentView( tubebellInstrument * _instrument, QWidget * _parent ); - virtual ~tubebellInstrumentView( void ); - -private: - virtual void modelChanged( void ); - - knob * m_index; - knob * m_crossfade; - knob * m_lfoSpeed; - knob * m_lfoDepth; - knob * m_adsrTarget; -}; - -#endif diff --git a/plugins/stk/voices/tubebell/tubebell_model.cpp b/plugins/stk/voices/tubebell/tubebell_model.cpp deleted file mode 100644 index 05bbf54b3..000000000 --- a/plugins/stk/voices/tubebell/tubebell_model.cpp +++ /dev/null @@ -1,88 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "tubebell_model.h" - - -tubebellModel::tubebellModel( bool _monophonic, - StkFloat _portamento, - StkFloat _bend, - StkFloat _bend_range, - bool _velocity_sensitive_lpf, - StkFloat _velocity_sensitive_q, - StkFloat _volume, - StkFloat _pan, - StkFloat _spread, - StkFloat _index, - StkFloat _crossfade, - StkFloat _lfo_speed, - StkFloat _lfo_depth, - StkFloat _adsr_target ): - stkModel( _monophonic, _portamento, _bend, _bend_range, _velocity_sensitive_lpf, _velocity_sensitive_q, _volume, _pan, _spread ), - m_index( new floatModel( _index, 0.0f, 128.0f, 0.1f, this ) ), - m_crossfade( new floatModel( _crossfade, 0.0f, 128.0f, 0.1f, this ) ), - m_lfoSpeed( new floatModel( _lfo_speed, 0.0f, 128.0f, 0.1f, this ) ), - m_lfoDepth( new floatModel( _lfo_depth, 0.0f, 128.0f, 0.1f, this ) ), - m_adsrTarget( new floatModel( _adsr_target, 0.0f, 128.0f, 0.1f, this ) ) -{ -} - - - - -tubebellModel::~tubebellModel() -{ - delete m_index; - delete m_crossfade; - delete m_lfoSpeed; - delete m_lfoDepth; - delete m_adsrTarget; -} - - - - -void tubebellModel::saveSettings( QDomDocument & _doc, QDomElement & _parent ) -{ - stkModel::saveSettings( _doc, _parent ); - m_index->saveSettings( _doc, _parent, "index" ); - m_crossfade->saveSettings( _doc, _parent, "crossfade" ); - m_lfoSpeed->saveSettings( _doc, _parent, "lfospeed" ); - m_lfoDepth->saveSettings( _doc, _parent, "lfodepth" ); - m_adsrTarget->saveSettings( _doc, _parent, "adsrtarget" ); -} - - - - -void tubebellModel::loadSettings( const QDomElement & _this ) -{ - stkModel::loadSettings( _this ); - m_index->loadSettings( _this, "index" ); - m_crossfade->loadSettings( _this, "crossfade" ); - m_lfoSpeed->loadSettings( _this, "lfospeed" ); - m_lfoDepth->loadSettings( _this, "lfodepth" ); - m_adsrTarget->loadSettings( _this, "adsrtarget" ); -} - diff --git a/plugins/stk/voices/tubebell/tubebell_model.h b/plugins/stk/voices/tubebell/tubebell_model.h deleted file mode 100644 index ec7919ebd..000000000 --- a/plugins/stk/voices/tubebell/tubebell_model.h +++ /dev/null @@ -1,86 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _TUBEBELL_MODEL_H -#define _TUBEBELL_MODEL_H - -#include "stk_model.h" - - -class tubebellModel: public stkModel -{ -public: - tubebellModel( bool _monophonic = FALSE, - StkFloat _portamento = 0.0f, - StkFloat _bend = 0.0f, - StkFloat _bend_range = 2.0f, - bool _velocity_sensitive_lpf = TRUE, - StkFloat _velocity_sensitive_q = 0.5f, - StkFloat _volume = 1.0f, - StkFloat _pan = 0.0f, - StkFloat _spread = 0.0f, - StkFloat _index = 64.0f, - StkFloat _crossfade = 64.0f, - StkFloat _lfo_speed = 64.0f, - StkFloat _lfo_depth = 64.0f, - StkFloat _adsr_target = 64.0f ); - ~tubebellModel(); - - inline floatModel * index( void ) const - { - return( m_index ); - } - - inline floatModel * crossfade( void ) const - { - return( m_crossfade ); - } - - inline floatModel * lfoSpeed( void ) - { - return( m_lfoSpeed ); - } - - inline floatModel * lfoDepth( void ) const - { - return( m_lfoDepth ); - } - - inline floatModel * adsrTarget( void ) const - { - return( m_adsrTarget ); - } - - void saveSettings( QDomDocument & _doc, QDomElement & _parent ); - - void loadSettings( const QDomElement & _this ); - -private: - floatModel * m_index; - floatModel * m_crossfade; - floatModel * m_lfoSpeed; - floatModel * m_lfoDepth; - floatModel * m_adsrTarget; -}; - -#endif diff --git a/plugins/stk/voices/tubebell/tubebell_processor.cpp b/plugins/stk/voices/tubebell/tubebell_processor.cpp deleted file mode 100644 index 8c39a717c..000000000 --- a/plugins/stk/voices/tubebell/tubebell_processor.cpp +++ /dev/null @@ -1,51 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include "tubebell_processor.h" -#include "config_mgr.h" - - -tubebellProcessor::tubebellProcessor( sample_rate_t _sample_rate ): - stkProcessor( _sample_rate ) -{ -} - - - - -tubebellProcessor::~tubebellProcessor() -{ -} - - - - -void tubebellProcessor::setControls( tubebellModel * _model ) -{ - voice()->controlChange( 2, _model->index()->value() ); - voice()->controlChange( 4, _model->crossfade()->value() ); - voice()->controlChange( 11, _model->lfoSpeed()->value() ); - voice()->controlChange( 1, _model->lfoDepth()->value() ); - voice()->controlChange( 128, _model->adsrTarget()->value() ); - m_delayRead = m_delayWrite - static_cast( _model->spread()->value() ); -} diff --git a/plugins/stk/voices/tubebell/tubebell_processor.h b/plugins/stk/voices/tubebell/tubebell_processor.h deleted file mode 100644 index 7cff391d1..000000000 --- a/plugins/stk/voices/tubebell/tubebell_processor.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _TUBEBELL_PROCESSOR_H -#define _TUBEBELL_PROCESSOR_H - -#include "TubeBell.h" - -#include "stk_processor.h" - -#include "tubebell_model.h" - -class tubebellProcessor: public stkProcessor -{ -public: - tubebellProcessor( sample_rate_t _sample_rate ); - ~tubebellProcessor( void ); - - void setControls( tubebellModel * _model ); -}; - -#endif diff --git a/plugins/stk/voices/wurley/Makefile.am b/plugins/stk/voices/wurley/Makefile.am deleted file mode 100644 index d7c5cdeec..000000000 --- a/plugins/stk/voices/wurley/Makefile.am +++ /dev/null @@ -1,46 +0,0 @@ -AUTOMAKE_OPTIONS = foreign 1.4 - - -INCLUDES = -I@stk_includes@ -I$(top_srcdir)/include -I$(top_srcdir)/src/lib -I. -I$(top_srcdir)/plugins/stk/voices/include - - -AM_CXXFLAGS := $(AM_CXXFLAGS) $(QT_CXXFLAGS) -DPLUGIN_NAME="wurley" - - -%.moc: ./%.h - $(MOC) -o $@ $< - - -MOC_FILES = ./wurley_model.moc - -BUILT_SOURCES = $(MOC_FILES) ./embedded_resources.h -EMBEDDED_RESOURCES = $(wildcard *png) - -./embedded_resources.h: $(EMBEDDED_RESOURCES) - $(BIN2RES) $(EMBEDDED_RESOURCES) > $@ - -EXTRA_DIST = $(EMBEDDED_RESOURCES) - - -CLEANFILES = $(MOC_FILES) ./embedded_resources.h - - - -pkglib_LTLIBRARIES = libwurley.la - -libwurley_la_SOURCES = wurley_model.cpp \ - wurley_model.h \ - wurley_processor.cpp \ - wurley_processor.h \ - wurley_instrument.cpp \ - wurley_instrument.h \ - wurley_instrument_view.cpp \ - wurley_instrument_view.h \ - $(top_srcdir)/plugins/stk/voices/src/stk_model.cpp \ - stk_model.h - - - -libwurley_la_LDFLAGS = -L@stk_lib@ -lstk -Wl,-export-dynamic - -$(libwurley_la_SOURCES): ./embedded_resources.h diff --git a/plugins/stk/voices/wurley/artwork.png b/plugins/stk/voices/wurley/artwork.png deleted file mode 100644 index b1b72c5af42457a0e8ebc23706c187c7b2294445..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 64596 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 diff --git a/plugins/stk/voices/wurley/logo.png b/plugins/stk/voices/wurley/logo.png deleted file mode 100644 index 93fcd1746131e93516a5c85394decef1d7df2561..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 659 zcmV;E0&M+>P)BB%v^%K{!OpGvZ5fKp)5fL#?O|eA$Le0=`hnTRw z&NAP2XGBCqM8p+UMnyzKL_|cyXEn``*j+PR>3}$HZJnjhUh$2`EjM4U%iQEaZ~461 zxJr!GENm6e*Pq$3&r@7UEwPH`r!hUf_O>>uVvDczH&-Y?!b>wOBYBlI{ z+N8^CiYH8nclFf;eisX>Bkzfas=+Gpb(LP*#H44doe}Y|>#GCbikqv!M)9TryTnQB z>SET5h(lg>pJg>GmpbD&bF0BlvB|JFYGuvFo%Wa%5i#Nwi|Zn85r=CQM#QK%=IZ)u z78$bHN5(`Px4PPROuSPKmWVMcoe~dJXL_wMEcR6!+r`FeFeG+Wc~tyrMg1L?i<8yH z0dadZ*eaf@Dc%;}8K}><6$h(@LGe>H=yTc`12xSx z#>7+A%4YXe8w(v4PgV=}iw~>8D)Cj#aJNYlZmSC%5MO%4b>`?dXoH`{uzA(OOX7uU zuu;5GEo>5_7T0;kMMOkI#6e4|ja}m2YOqs0TrIF$>@%m%af1zZ7&d0Y2}itdolEK> tj*4rm!H5{FHWvCpY^$!WuCD)&KLEu%@0qNKIFkSX002ovPDHLkV1i3NG93T_ diff --git a/plugins/stk/voices/wurley/wurley_instrument.cpp b/plugins/stk/voices/wurley/wurley_instrument.cpp deleted file mode 100644 index 508850ee3..000000000 --- a/plugins/stk/voices/wurley/wurley_instrument.cpp +++ /dev/null @@ -1,103 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "engine.h" -#include "note_play_handle.h" - -#include "wurley_instrument.h" -#include "wurley_instrument_view.h" -#include "wurley_processor.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embedded_resources.h" - - -extern "C" -{ - -plugin::descriptor wurley_plugin_descriptor = -{ - STRINGIFY_PLUGIN_NAME( PLUGIN_NAME ), - "Wurley", - QT_TRANSLATE_NOOP( "pluginBrowser", - "Wurlitzer noises" ), - "Danny McRae ", - 0x0100, - plugin::Instrument, - new pluginPixmapLoader( "logo" ), - NULL -} ; - -} - - -wurleyInstrument::wurleyInstrument( instrumentTrack * _channel_track ): - stkInstrument( _channel_track, &wurley_plugin_descriptor ) -{ - model()->index()->setTrack( _channel_track ); - model()->crossfade()->setTrack( _channel_track ); - model()->lfoSpeed()->setTrack( _channel_track ); - model()->lfoDepth()->setTrack( _channel_track ); - model()->adsrTarget()->setTrack( _channel_track ); -} - - - - -wurleyInstrument::~wurleyInstrument() -{ -} - - - - -QString wurleyInstrument::nodeName( void ) const -{ - return( wurley_plugin_descriptor.name ); -} - - - - -pluginView * wurleyInstrument::instantiateView( QWidget * _parent ) -{ - return( new wurleyInstrumentView( this, _parent ) ); -} - - - - -extern "C" -{ - -// neccessary for getting instance out of shared lib -plugin * lmms_plugin_main( model * _model, void * _data ) -{ - return( new wurleyInstrument( static_cast( _data ) ) ); -} - - -} - - diff --git a/plugins/stk/voices/wurley/wurley_instrument.h b/plugins/stk/voices/wurley/wurley_instrument.h deleted file mode 100644 index fd654ba79..000000000 --- a/plugins/stk/voices/wurley/wurley_instrument.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _WURLEY_INSTRUMENT_H -#define _WURLEY_INSTRUMENT_H - -#include "stk_instrument.h" - -#include "wurley_processor.h" -#include "wurley_model.h" - - -class wurleyInstrument : public stkInstrument -{ -public: - wurleyInstrument( instrumentTrack * _channel_track ); - virtual ~wurleyInstrument( void ); - - QString nodeName( void ) const; - - pluginView * instantiateView( QWidget * _parent ); -}; - -#endif diff --git a/plugins/stk/voices/wurley/wurley_instrument_view.cpp b/plugins/stk/voices/wurley/wurley_instrument_view.cpp deleted file mode 100644 index 12cd275db..000000000 --- a/plugins/stk/voices/wurley/wurley_instrument_view.cpp +++ /dev/null @@ -1,110 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include -#include -#include - -#include "wurley_instrument_view.h" - -#include -#include - -#include "engine.h" -#include "gui_templates.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embed.cpp" - - -wurleyInstrumentView::wurleyInstrumentView( wurleyInstrument * _instrument, QWidget * _parent ) : - stkInstrumentView( _instrument, _parent ) -{ - QVBoxLayout * vl = new QVBoxLayout( m_topView ); - QHBoxLayout * h1 = new QHBoxLayout(); - QHBoxLayout * h2 = new QHBoxLayout(); - QHBoxLayout * h3 = new QHBoxLayout(); - - - m_index = new knob( knobSmall_17, m_topView, tr( "Index" ) ); - m_index->setLabel( tr( "Modulator Index" ) ); - m_index->setHintText( tr( "Index:" ) + " ", "" ); - - m_crossfade = new knob( knobSmall_17, m_topView, tr( "Crossfade" ) ); - m_crossfade->setLabel( tr( "Modulator Crossfade" ) ); - m_crossfade->setHintText( tr( "Crossfade:" ) + " ", "" ); - - m_lfoSpeed = new knob( knobSmall_17, m_topView, tr( "LFO Speed" ) ); - m_lfoSpeed->setLabel( tr( "LFO Speed" ) ); - m_lfoSpeed->setHintText( tr( "LFO Speed:" ) + " ", "" ); - - m_lfoDepth = new knob( knobSmall_17, m_topView, tr( "LFO Depth" ) ); - m_lfoDepth->setLabel( tr( "LFO Depth" ) ); - m_lfoDepth->setHintText( tr( "LFO Depth:" ) + " ", "" ); - - m_adsrTarget = new knob( knobSmall_17, m_topView, tr( "ADSR Target" ) ); - m_adsrTarget->setLabel( tr( "ADSR Target" ) ); - m_adsrTarget->setHintText( tr( "ADSR Target:" ) + " ", "" ); - - h1->addWidget( m_index ); - h1->addWidget( m_crossfade ); - - h2->addWidget( m_lfoSpeed ); - h2->addWidget( m_lfoDepth ); - - h3->addWidget( m_adsrTarget ); - - vl->addLayout( h1 ); - vl->addLayout( h2 ); - vl->addLayout( h3 ); - - setAutoFillBackground( TRUE ); - QPalette pal; - pal.setBrush( backgroundRole(), PLUGIN_NAME::getIconPixmap( "artwork" ) ); - setPalette( pal ); -} - - - - -wurleyInstrumentView::~wurleyInstrumentView() -{ -} - - - - -void wurleyInstrumentView::modelChanged( void ) -{ - stkInstrumentView::modelChanged(); - - wurleyInstrument * inst = castModel(); - m_index->setModel( inst->model()->index() ); - m_crossfade->setModel( inst->model()->crossfade() ); - m_lfoSpeed->setModel( inst->model()->lfoSpeed() ); - m_lfoDepth->setModel( inst->model()->lfoDepth() ); - m_adsrTarget->setModel( inst->model()->adsrTarget() ); -} - - - diff --git a/plugins/stk/voices/wurley/wurley_instrument_view.h b/plugins/stk/voices/wurley/wurley_instrument_view.h deleted file mode 100644 index a021833f4..000000000 --- a/plugins/stk/voices/wurley/wurley_instrument_view.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _WURLEY_INSTRUMENT_VIEW_H -#define _WURLEY_INSTRUMENT_VIEW_H - -#include "knob.h" - -#include "stk_instrument_view.h" -#include "wurley_instrument.h" - - -class wurleyInstrumentView: public stkInstrumentView -{ -public: - wurleyInstrumentView( wurleyInstrument * _instrument, QWidget * _parent ); - virtual ~wurleyInstrumentView( void ); - -private: - virtual void modelChanged( void ); - - knob * m_index; - knob * m_crossfade; - knob * m_lfoSpeed; - knob * m_lfoDepth; - knob * m_adsrTarget; -}; - -#endif diff --git a/plugins/stk/voices/wurley/wurley_model.cpp b/plugins/stk/voices/wurley/wurley_model.cpp deleted file mode 100644 index e220c9116..000000000 --- a/plugins/stk/voices/wurley/wurley_model.cpp +++ /dev/null @@ -1,88 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "wurley_model.h" - - -wurleyModel::wurleyModel( bool _monophonic, - StkFloat _portamento, - StkFloat _bend, - StkFloat _bend_range, - bool _velocity_sensitive_lpf, - StkFloat _velocity_sensitive_q, - StkFloat _volume, - StkFloat _pan, - StkFloat _spread, - StkFloat _index, - StkFloat _crossfade, - StkFloat _lfo_speed, - StkFloat _lfo_depth, - StkFloat _adsr_target ): - stkModel( _monophonic, _portamento, _bend, _bend_range, _velocity_sensitive_lpf, _velocity_sensitive_q, _volume, _pan, _spread ), - m_index( new floatModel( _index, 0.0f, 128.0f, 0.1f, this ) ), - m_crossfade( new floatModel( _crossfade, 0.0f, 128.0f, 0.1f, this ) ), - m_lfoSpeed( new floatModel( _lfo_speed, 0.0f, 128.0f, 0.1f, this ) ), - m_lfoDepth( new floatModel( _lfo_depth, 0.0f, 128.0f, 0.1f, this ) ), - m_adsrTarget( new floatModel( _adsr_target, 0.0f, 128.0f, 0.1f, this ) ) -{ -} - - - - -wurleyModel::~wurleyModel() -{ - delete m_index; - delete m_crossfade; - delete m_lfoSpeed; - delete m_lfoDepth; - delete m_adsrTarget; -} - - - - -void wurleyModel::saveSettings( QDomDocument & _doc, QDomElement & _parent ) -{ - stkModel::saveSettings( _doc, _parent ); - m_index->saveSettings( _doc, _parent, "index" ); - m_crossfade->saveSettings( _doc, _parent, "crossfade" ); - m_lfoSpeed->saveSettings( _doc, _parent, "lfospeed" ); - m_lfoDepth->saveSettings( _doc, _parent, "lfodepth" ); - m_adsrTarget->saveSettings( _doc, _parent, "adsrtarget" ); -} - - - - -void wurleyModel::loadSettings( const QDomElement & _this ) -{ - stkModel::loadSettings( _this ); - m_index->loadSettings( _this, "index" ); - m_crossfade->loadSettings( _this, "crossfade" ); - m_lfoSpeed->loadSettings( _this, "lfospeed" ); - m_lfoDepth->loadSettings( _this, "lfodepth" ); - m_adsrTarget->loadSettings( _this, "adsrtarget" ); -} - diff --git a/plugins/stk/voices/wurley/wurley_model.h b/plugins/stk/voices/wurley/wurley_model.h deleted file mode 100644 index 9928e5c3b..000000000 --- a/plugins/stk/voices/wurley/wurley_model.h +++ /dev/null @@ -1,86 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _WURLEY_MODEL_H -#define _WURLEY_MODEL_H - -#include "stk_model.h" - - -class wurleyModel: public stkModel -{ -public: - wurleyModel( bool _monophonic = FALSE, - StkFloat _portamento = 0.0f, - StkFloat _bend = 0.0f, - StkFloat _bend_range = 2.0f, - bool _velocity_sensitive_lpf = TRUE, - StkFloat _velocity_sensitive_q = 0.5f, - StkFloat _volume = 1.0f, - StkFloat _pan = 0.0f, - StkFloat _spread = 0.0f, - StkFloat _index = 64.0f, - StkFloat _crossfade = 64.0f, - StkFloat _lfo_speed = 64.0f, - StkFloat _lfo_depth = 64.0f, - StkFloat _adsr_target = 64.0f ); - ~wurleyModel(); - - inline floatModel * index( void ) const - { - return( m_index ); - } - - inline floatModel * crossfade( void ) const - { - return( m_crossfade ); - } - - inline floatModel * lfoSpeed( void ) - { - return( m_lfoSpeed ); - } - - inline floatModel * lfoDepth( void ) const - { - return( m_lfoDepth ); - } - - inline floatModel * adsrTarget( void ) const - { - return( m_adsrTarget ); - } - - void saveSettings( QDomDocument & _doc, QDomElement & _parent ); - - void loadSettings( const QDomElement & _this ); - -private: - floatModel * m_index; - floatModel * m_crossfade; - floatModel * m_lfoSpeed; - floatModel * m_lfoDepth; - floatModel * m_adsrTarget; -}; - -#endif diff --git a/plugins/stk/voices/wurley/wurley_processor.cpp b/plugins/stk/voices/wurley/wurley_processor.cpp deleted file mode 100644 index 7d989e880..000000000 --- a/plugins/stk/voices/wurley/wurley_processor.cpp +++ /dev/null @@ -1,51 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include "wurley_processor.h" -#include "config_mgr.h" - - -wurleyProcessor::wurleyProcessor( sample_rate_t _sample_rate ): - stkProcessor( _sample_rate ) -{ -} - - - - -wurleyProcessor::~wurleyProcessor() -{ -} - - - - -void wurleyProcessor::setControls( wurleyModel * _model ) -{ - voice()->controlChange( 2, _model->index()->value() ); - voice()->controlChange( 4, _model->crossfade()->value() ); - voice()->controlChange( 11, _model->lfoSpeed()->value() ); - voice()->controlChange( 1, _model->lfoDepth()->value() ); - voice()->controlChange( 128, _model->adsrTarget()->value() ); - m_delayRead = m_delayWrite - static_cast( _model->spread()->value() ); -} diff --git a/plugins/stk/voices/wurley/wurley_processor.h b/plugins/stk/voices/wurley/wurley_processor.h deleted file mode 100644 index e84a8ac46..000000000 --- a/plugins/stk/voices/wurley/wurley_processor.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _WURLEY_PROCESSOR_H -#define _WURLEY_PROCESSOR_H - -#include "Wurley.h" - -#include "stk_processor.h" - -#include "wurley_model.h" - -class wurleyProcessor: public stkProcessor -{ -public: - wurleyProcessor( sample_rate_t _sample_rate ); - ~wurleyProcessor( void ); - - void setControls( wurleyModel * _model ); -}; - -#endif

jGq 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 diff --git a/plugins/stk/voices/percflute/percflute_instrument.cpp b/plugins/stk/voices/percflute/percflute_instrument.cpp deleted file mode 100644 index 752420d23..000000000 --- a/plugins/stk/voices/percflute/percflute_instrument.cpp +++ /dev/null @@ -1,103 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "engine.h" -#include "note_play_handle.h" - -#include "percflute_instrument.h" -#include "percflute_instrument_view.h" -#include "percflute_processor.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embedded_resources.h" - - -extern "C" -{ - -plugin::descriptor percflute_plugin_descriptor = -{ - STRINGIFY_PLUGIN_NAME( PLUGIN_NAME ), - "Perc Flute", - QT_TRANSLATE_NOOP( "pluginBrowser", - "Flute noises" ), - "Danny McRae ", - 0x0100, - plugin::Instrument, - new pluginPixmapLoader( "logo" ), - NULL -} ; - -} - - -percfluteInstrument::percfluteInstrument( instrumentTrack * _channel_track ): - stkInstrument( _channel_track, &percflute_plugin_descriptor ) -{ - model()->index()->setTrack( _channel_track ); - model()->crossfade()->setTrack( _channel_track ); - model()->lfoSpeed()->setTrack( _channel_track ); - model()->lfoDepth()->setTrack( _channel_track ); - model()->adsrTarget()->setTrack( _channel_track ); -} - - - - -percfluteInstrument::~percfluteInstrument() -{ -} - - - - -QString percfluteInstrument::nodeName( void ) const -{ - return( percflute_plugin_descriptor.name ); -} - - - - -pluginView * percfluteInstrument::instantiateView( QWidget * _parent ) -{ - return( new percfluteInstrumentView( this, _parent ) ); -} - - - - -extern "C" -{ - -// neccessary for getting instance out of shared lib -plugin * lmms_plugin_main( model * _model, void * _data ) -{ - return( new percfluteInstrument( static_cast( _data ) ) ); -} - - -} - - diff --git a/plugins/stk/voices/percflute/percflute_instrument.h b/plugins/stk/voices/percflute/percflute_instrument.h deleted file mode 100644 index 2db4e5e3a..000000000 --- a/plugins/stk/voices/percflute/percflute_instrument.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _PERCFLUTE_INSTRUMENT_H -#define _PERCFLUTE_INSTRUMENT_H - -#include "stk_instrument.h" - -#include "percflute_processor.h" -#include "percflute_model.h" - - -class percfluteInstrument : public stkInstrument -{ -public: - percfluteInstrument( instrumentTrack * _channel_track ); - virtual ~percfluteInstrument( void ); - - QString nodeName( void ) const; - - pluginView * instantiateView( QWidget * _parent ); -}; - -#endif diff --git a/plugins/stk/voices/percflute/percflute_instrument_view.cpp b/plugins/stk/voices/percflute/percflute_instrument_view.cpp deleted file mode 100644 index 0d03c66b2..000000000 --- a/plugins/stk/voices/percflute/percflute_instrument_view.cpp +++ /dev/null @@ -1,110 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include -#include -#include - -#include "percflute_instrument_view.h" - -#include -#include - -#include "engine.h" -#include "gui_templates.h" - -#undef SINGLE_SOURCE_COMPILE -#include "embed.cpp" - - -percfluteInstrumentView::percfluteInstrumentView( percfluteInstrument * _instrument, QWidget * _parent ) : - stkInstrumentView( _instrument, _parent ) -{ - QVBoxLayout * vl = new QVBoxLayout( m_topView ); - QHBoxLayout * h1 = new QHBoxLayout(); - QHBoxLayout * h2 = new QHBoxLayout(); - QHBoxLayout * h3 = new QHBoxLayout(); - - - m_index = new knob( knobSmall_17, m_topView, tr( "Index" ) ); - m_index->setLabel( tr( "Modulator Index" ) ); - m_index->setHintText( tr( "Index:" ) + " ", "" ); - - m_crossfade = new knob( knobSmall_17, m_topView, tr( "Crossfade" ) ); - m_crossfade->setLabel( tr( "Modulator Crossfade" ) ); - m_crossfade->setHintText( tr( "Crossfade:" ) + " ", "" ); - - m_lfoSpeed = new knob( knobSmall_17, m_topView, tr( "LFO Speed" ) ); - m_lfoSpeed->setLabel( tr( "LFO Speed" ) ); - m_lfoSpeed->setHintText( tr( "LFO Speed:" ) + " ", "" ); - - m_lfoDepth = new knob( knobSmall_17, m_topView, tr( "LFO Depth" ) ); - m_lfoDepth->setLabel( tr( "LFO Depth" ) ); - m_lfoDepth->setHintText( tr( "LFO Depth:" ) + " ", "" ); - - m_adsrTarget = new knob( knobSmall_17, m_topView, tr( "ADSR Target" ) ); - m_adsrTarget->setLabel( tr( "ADSR Target" ) ); - m_adsrTarget->setHintText( tr( "ADSR Target:" ) + " ", "" ); - - h1->addWidget( m_index ); - h1->addWidget( m_crossfade ); - - h2->addWidget( m_lfoSpeed ); - h2->addWidget( m_lfoDepth ); - - h3->addWidget( m_adsrTarget ); - - vl->addLayout( h1 ); - vl->addLayout( h2 ); - vl->addLayout( h3 ); - - setAutoFillBackground( TRUE ); - QPalette pal; - pal.setBrush( backgroundRole(), PLUGIN_NAME::getIconPixmap( "artwork" ) ); - setPalette( pal ); -} - - - - -percfluteInstrumentView::~percfluteInstrumentView() -{ -} - - - - -void percfluteInstrumentView::modelChanged( void ) -{ - stkInstrumentView::modelChanged(); - - percfluteInstrument * inst = castModel(); - m_index->setModel( inst->model()->index() ); - m_crossfade->setModel( inst->model()->crossfade() ); - m_lfoSpeed->setModel( inst->model()->lfoSpeed() ); - m_lfoDepth->setModel( inst->model()->lfoDepth() ); - m_adsrTarget->setModel( inst->model()->adsrTarget() ); -} - - - diff --git a/plugins/stk/voices/percflute/percflute_instrument_view.h b/plugins/stk/voices/percflute/percflute_instrument_view.h deleted file mode 100644 index c4bdc6194..000000000 --- a/plugins/stk/voices/percflute/percflute_instrument_view.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#ifndef _PERCFLUTE_INSTRUMENT_VIEW_H -#define _PERCFLUTE_INSTRUMENT_VIEW_H - -#include "knob.h" - -#include "stk_instrument_view.h" -#include "percflute_instrument.h" - - -class percfluteInstrumentView: public stkInstrumentView -{ -public: - percfluteInstrumentView( percfluteInstrument * _instrument, QWidget * _parent ); - virtual ~percfluteInstrumentView( void ); - -private: - virtual void modelChanged( void ); - - knob * m_index; - knob * m_crossfade; - knob * m_lfoSpeed; - knob * m_lfoDepth; - knob * m_adsrTarget; -}; - -#endif diff --git a/plugins/stk/voices/percflute/percflute_model.cpp b/plugins/stk/voices/percflute/percflute_model.cpp deleted file mode 100644 index 648298a84..000000000 --- a/plugins/stk/voices/percflute/percflute_model.cpp +++ /dev/null @@ -1,88 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - - -#include "percflute_model.h" - - -percfluteModel::percfluteModel( bool _monophonic, - StkFloat _portamento, - StkFloat _bend, - StkFloat _bend_range, - bool _velocity_sensitive_lpf, - StkFloat _velocity_sensitive_q, - StkFloat _volume, - StkFloat _pan, - StkFloat _spread, - StkFloat _index, - StkFloat _crossfade, - StkFloat _lfo_speed, - StkFloat _lfo_depth, - StkFloat _adsr_target ): - stkModel( _monophonic, _portamento, _bend, _bend_range, _velocity_sensitive_lpf, _velocity_sensitive_q, _volume, _pan, _spread ), - m_index( new floatModel( _index, 0.0f, 128.0f, 0.1f, this ) ), - m_crossfade( new floatModel( _crossfade, 0.0f, 128.0f, 0.1f, this ) ), - m_lfoSpeed( new floatModel( _lfo_speed, 0.0f, 128.0f, 0.1f, this ) ), - m_lfoDepth( new floatModel( _lfo_depth, 0.0f, 128.0f, 0.1f, this ) ), - m_adsrTarget( new floatModel( _adsr_target, 0.0f, 128.0f, 0.1f, this ) ) -{ -} - - - - -percfluteModel::~percfluteModel() -{ - delete m_index; - delete m_crossfade; - delete m_lfoSpeed; - delete m_lfoDepth; - delete m_adsrTarget; -} - - - - -void percfluteModel::saveSettings( QDomDocument & _doc, QDomElement & _parent ) -{ - stkModel::saveSettings( _doc, _parent ); - m_index->saveSettings( _doc, _parent, "index" ); - m_crossfade->saveSettings( _doc, _parent, "crossfade" ); - m_lfoSpeed->saveSettings( _doc, _parent, "lfospeed" ); - m_lfoDepth->saveSettings( _doc, _parent, "lfodepth" ); - m_adsrTarget->saveSettings( _doc, _parent, "adsrtarget" ); -} - - - - -void percfluteModel::loadSettings( const QDomElement & _this ) -{ - stkModel::loadSettings( _this ); - m_index->loadSettings( _this, "index" ); - m_crossfade->loadSettings( _this, "crossfade" ); - m_lfoSpeed->loadSettings( _this, "lfospeed" ); - m_lfoDepth->loadSettings( _this, "lfodepth" ); - m_adsrTarget->loadSettings( _this, "adsrtarget" ); -} - diff --git a/plugins/stk/voices/percflute/percflute_model.h b/plugins/stk/voices/percflute/percflute_model.h deleted file mode 100644 index 9643dea98..000000000 --- a/plugins/stk/voices/percflute/percflute_model.h +++ /dev/null @@ -1,86 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _PERCFLUTE_MODEL_H -#define _PERCFLUTE_MODEL_H - -#include "stk_model.h" - - -class percfluteModel: public stkModel -{ -public: - percfluteModel( bool _monophonic = FALSE, - StkFloat _portamento = 0.0f, - StkFloat _bend = 0.0f, - StkFloat _bend_range = 2.0f, - bool _velocity_sensitive_lpf = TRUE, - StkFloat _velocity_sensitive_q = 0.5f, - StkFloat _volume = 1.0f, - StkFloat _pan = 0.0f, - StkFloat _spread = 0.0f, - StkFloat _index = 64.0f, - StkFloat _crossfade = 64.0f, - StkFloat _lfo_speed = 64.0f, - StkFloat _lfo_depth = 64.0f, - StkFloat _adsr_target = 64.0f ); - ~percfluteModel(); - - inline floatModel * index( void ) const - { - return( m_index ); - } - - inline floatModel * crossfade( void ) const - { - return( m_crossfade ); - } - - inline floatModel * lfoSpeed( void ) - { - return( m_lfoSpeed ); - } - - inline floatModel * lfoDepth( void ) const - { - return( m_lfoDepth ); - } - - inline floatModel * adsrTarget( void ) const - { - return( m_adsrTarget ); - } - - void saveSettings( QDomDocument & _doc, QDomElement & _parent ); - - void loadSettings( const QDomElement & _this ); - -private: - floatModel * m_index; - floatModel * m_crossfade; - floatModel * m_lfoSpeed; - floatModel * m_lfoDepth; - floatModel * m_adsrTarget; -}; - -#endif diff --git a/plugins/stk/voices/percflute/percflute_processor.cpp b/plugins/stk/voices/percflute/percflute_processor.cpp deleted file mode 100644 index 74bae72fe..000000000 --- a/plugins/stk/voices/percflute/percflute_processor.cpp +++ /dev/null @@ -1,51 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ - -#include "percflute_processor.h" -#include "config_mgr.h" - - -percfluteProcessor::percfluteProcessor( sample_rate_t _sample_rate ): - stkProcessor( _sample_rate ) -{ -} - - - - -percfluteProcessor::~percfluteProcessor() -{ -} - - - - -void percfluteProcessor::setControls( percfluteModel * _model ) -{ - voice()->controlChange( 2, _model->index()->value() ); - voice()->controlChange( 4, _model->crossfade()->value() ); - voice()->controlChange( 11, _model->lfoSpeed()->value() ); - voice()->controlChange( 1, _model->lfoDepth()->value() ); - voice()->controlChange( 128, _model->adsrTarget()->value() ); - m_delayRead = m_delayWrite - static_cast( _model->spread()->value() ); -} diff --git a/plugins/stk/voices/percflute/percflute_processor.h b/plugins/stk/voices/percflute/percflute_processor.h deleted file mode 100644 index 19e5ab507..000000000 --- a/plugins/stk/voices/percflute/percflute_processor.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * - * Copyright (c) 2008 Danny McRae - * - * - * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program (see COPYING); if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - */ -#ifndef _PERCFLUTE_PROCESSOR_H -#define _PERCFLUTE_PROCESSOR_H - -#include "PercFlut.h" - -#include "stk_processor.h" - -#include "percflute_model.h" - -class percfluteProcessor: public stkProcessor -{ -public: - percfluteProcessor( sample_rate_t _sample_rate ); - ~percfluteProcessor( void ); - - void setControls( percfluteModel * _model ); -}; - -#endif diff --git a/plugins/stk/voices/resonate/Makefile.am b/plugins/stk/voices/resonate/Makefile.am deleted file mode 100644 index 58fe47db2..000000000 --- a/plugins/stk/voices/resonate/Makefile.am +++ /dev/null @@ -1,46 +0,0 @@ -AUTOMAKE_OPTIONS = foreign 1.4 - - -INCLUDES = -I@stk_includes@ -I$(top_srcdir)/include -I$(top_srcdir)/src/lib -I. -I$(top_srcdir)/plugins/stk/voices/include - - -AM_CXXFLAGS := $(AM_CXXFLAGS) $(QT_CXXFLAGS) -DPLUGIN_NAME="resonate" - - -%.moc: ./%.h - $(MOC) -o $@ $< - - -MOC_FILES = ./resonate_model.moc - -BUILT_SOURCES = $(MOC_FILES) ./embedded_resources.h -EMBEDDED_RESOURCES = $(wildcard *png) - -./embedded_resources.h: $(EMBEDDED_RESOURCES) - $(BIN2RES) $(EMBEDDED_RESOURCES) > $@ - -EXTRA_DIST = $(EMBEDDED_RESOURCES) - - -CLEANFILES = $(MOC_FILES) ./embedded_resources.h - - - -pkglib_LTLIBRARIES = libresonate.la - -libresonate_la_SOURCES = resonate_model.cpp \ - resonate_model.h \ - resonate_processor.cpp \ - resonate_processor.h \ - resonate_instrument.cpp \ - resonate_instrument.h \ - resonate_instrument_view.cpp \ - resonate_instrument_view.h \ - $(top_srcdir)/plugins/stk/voices/src/stk_model.cpp \ - stk_model.h - - - -libresonate_la_LDFLAGS = -L@stk_lib@ -lstk -Wl,-export-dynamic - -$(libresonate_la_SOURCES): ./embedded_resources.h diff --git a/plugins/stk/voices/resonate/artwork.png b/plugins/stk/voices/resonate/artwork.png deleted file mode 100644 index c821efc695c6c59e3a56416e3eb9ec91fe0f9292..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 64713 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