HISE Logo Forum
    • Categories
    • Register
    • Login

    Can I manually trigger a Callback function?

    Scheduled Pinned Locked Moved Scripting
    44 Posts 5 Posters 1.1k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • LindonL
      Lindon @d.healey
      last edited by

      @d-healey said in Can I manually trigger a Callback function?:

      @Lindon Is the data saved with the preset?

      err, pretty sure it is, but now you make me doubt....

      HISE Development for hire.
      www.channelrobot.com

      MorphoiceM 1 Reply Last reply Reply Quote 0
      • ulrikU
        ulrik @d.healey
        last edited by

        @d-healey said in Can I manually trigger a Callback function?:

        @Lindon Is the data saved with the preset?

        I'm pretty sure it's not saved with the preset

        Hise Develop branch
        MacOs 15.3.1, Xcode 16.2
        http://musikboden.se

        1 Reply Last reply Reply Quote 0
        • MorphoiceM
          Morphoice @Lindon
          last edited by

          @Lindon this is something I have no clue about yet, but I'll dive into it today.

          the docs say "Control Data : persistent data that will be stored and recalled when the script is recompiled (or the preset is loaded)."

          so basically I need to store my values in the panel data, and upon loading the preset trigger the corresponding buttons (which in turn load the samples)
          but the question remains how do I manually trigger a button callback and make it execute its function? I can't just call onButtonPress(); can I?

          https://instagram.com/morphoice - 80s inspired Synthwave Music, Arcade & Gameboy homebrew!

          LindonL 2 Replies Last reply Reply Quote 0
          • LindonL
            Lindon @Morphoice
            last edited by

            @Morphoice button.changed();

            HISE Development for hire.
            www.channelrobot.com

            1 Reply Last reply Reply Quote 0
            • LindonL
              Lindon @Morphoice
              last edited by

              @Morphoice but why are you doing all this? It seems a bit of overkill.... whats your actual requirement?

              HISE Development for hire.
              www.channelrobot.com

              MorphoiceM 1 Reply Last reply Reply Quote 0
              • MorphoiceM
                Morphoice @Lindon
                last edited by

                @Lindon I have a panel of switchable eproms on a simple drum machine and I want to store the selections in a preset. they're all buttons and work nicely and I don't want to change them into something else to have two days of tedious work all over again

                Screenshot 2024-12-05 at 16.11.42.jpg

                so I'm looking for a simple way to store the settings and upon loading a preset set them all appropriately.

                https://instagram.com/morphoice - 80s inspired Synthwave Music, Arcade & Gameboy homebrew!

                d.healeyD 1 Reply Last reply Reply Quote 0
                • d.healeyD
                  d.healey @Morphoice
                  last edited by

                  @Morphoice said in Can I manually trigger a Callback function?:

                  so I'm looking for a simple way to store the settings and upon loading a preset set them all appropriately.

                  Why not just set them to saveInPreset then?

                  Libre Wave - Freedom respecting instruments and effects
                  My Patreon - HISE tutorials
                  YouTube Channel - Public HISE tutorials

                  MorphoiceM 1 Reply Last reply Reply Quote 0
                  • MorphoiceM
                    Morphoice @d.healey
                    last edited by

                    @d-healey because then they are triggered multiple times upon loading the plugin
                    same problem we had with the drum pads triggering.
                    i have hidden panels underneath the drum pads which contain the sample map name, those are saveInPreset enabled. All I need is a way enable the appropriate button according to their data

                    https://instagram.com/morphoice - 80s inspired Synthwave Music, Arcade & Gameboy homebrew!

                    d.healeyD 1 Reply Last reply Reply Quote 0
                    • d.healeyD
                      d.healey @Morphoice
                      last edited by

                      @Morphoice said in Can I manually trigger a Callback function?:

                      because then they are triggered multiple times upon loading the plugin

                      But all of them will be off except the one that is on, so only one sample map will be loaded, is that right?

                      Libre Wave - Freedom respecting instruments and effects
                      My Patreon - HISE tutorials
                      YouTube Channel - Public HISE tutorials

                      MorphoiceM 1 Reply Last reply Reply Quote 1
                      • MorphoiceM
                        Morphoice @d.healey
                        last edited by

                        @d-healey said in Can I manually trigger a Callback function?:

                        But all of them will be off except the one that is on, so only one sample map will be loaded, is that right?

                        correct, yes

                        https://instagram.com/morphoice - 80s inspired Synthwave Music, Arcade & Gameboy homebrew!

                        d.healeyD 1 Reply Last reply Reply Quote 0
                        • d.healeyD
                          d.healey @Morphoice
                          last edited by

                          @Morphoice In that case it doesn't matter that each button's callback is triggered when the preset is restored.

                          Libre Wave - Freedom respecting instruments and effects
                          My Patreon - HISE tutorials
                          YouTube Channel - Public HISE tutorials

                          MorphoiceM 1 Reply Last reply Reply Quote 0
                          • MorphoiceM
                            Morphoice @d.healey
                            last edited by Morphoice

                            @d-healey alright. I had drums triggered on an attempt, but that was due to a samplemap load callback which I removed
                            I have enabled the buttons to saveinPreset and the values do save in the preset although they are not properly restored when I load a preset.... also I have trouble setting the initial value when no preset is loaded

                            have a look

                            HiseSnippet 14949.3oc68sEbbbkcXCHUKwY3CQIq0d8qTsmr10fUPCm2.PboHHdQxU.jP.PTqMLWpFyzyLsXOcOa28.PrTbC2Wt10INqb7Go3ONJU4JU9xksKWU1sxGhUpJUJmRkqMkK+Yh0les+P+jpxeIm6it66sm9NSOCF.LCTCIBz88dO26408bOmaeen9HGUiZp0dfsgV61pNIRL0Y2vxrppssoUhoRs8AsUSL0Ej15.CmlK0TQyHwsWNwTmWZcSq1MW1pSqDKdPaEaa0ZIlZpydSTAlJ4Kj.+yme8EUzULpp5mThD2yTqp5ZZszb7SciEdaMc8UUpotsVKlRWZgaW0zXIScyN.xbVobIZqT8gJMTuiBpXmQJwsTralXpupjRwh0pWoxbyWqZox4mutxr0ptaw4KqVqPohpyqVq1rEqsa85Il5EWollio0VNJNp1Il5EVzr1Aa0zbeCRCbOMasc0UQujOwVPKSRdUS8ZHRDkZhkZpoWyiKYC7rWigmcVBO60jVWqllW597tKiyP1GBVF3TmgG8NKG5kmE8xwfdgfRmgAkdABJ8JRaU0RqsieNDY4sMbTspq.xIVTgT1Dm4m8kjtxUjWDX7MrL6XTS9e9pqlC+yLnGKjOekBEIONa9kKUV9MjWriiioAJokJWYtkVBm6bqVoxRUvOtXk4KrTgToVxDZYCmrsTdn5pVvKdXRl7EJA0ekx4l9poVwnglgZVcSkZqBE5F1YR+3M17te8UVZ6Gr5cWa4U17InzsuxcezAMTMxZo1nithUVGm5omQNMI0zCQEsKH04qE4EgjPUEtCQ1Zp0UsVRQWeWf8Xmwwpi5zWUNUJMip5cpolI8dpV1ZlFUapV8gY+.aDjoRsmhkrFzq6QxIgetlbtqlBPY4VfZwZZ1Nx3Do3ZUKUPSXcZVY.3gdDPYZaoZq5bKEiZ5pVxAK+6ZqZsAaI7AD036VMj1XQKfsTUwFj.YdrVs2TNsMxzf0hUAxWwpg8aJuS5plsZaZ.xrzyjdOE8Npou+LxNJnLSm9IHpi1Jl5cZotktFTA1HzyUT2P04F55K4VMfD3d3hl1GAwuutJfG1I6Mn3B4CYaECuVrmvsghgAKf0.6XanTylvUDCGsb9.p11xrUeACWJhn2WFrHzQa0uAFQI5R.bqTutZUmLoI4klSlskghkpH.nYxCwsTbDUdbV7k9tsUMnPDB.d4F.o.tssiV0GJ.Ll74AbMysMaIB6nYxCAzEnGf3la.NfVO.glYPH.wXCkU+FB.glaPhoW.4kKOPKoqzVDpQxKP4M2eWUXPxvaDubC.jxtJ1JBaFZt7vrsRqcgwaACCPaEBTr4yC4lfzVTaQxK.1YAidKD4HYFjIzBY3CF5RNbtfa1APLUvN7tBPLbdoYLcQ6bljq33AXwuQ5dFRmSw.fytqNmhKOjYncNEB.MeAcNEiWtkHjNmhwNb1g04THDjrCouYOXAZg.AtiTO.Amen8M6AwDBPn9ehQMTtg12TLDj7CquoXXvYKpqoHn7KQ2cMESQnbCoqYOXAnrIinw3S0M5TSybUMcUavONyMLM0yDfMYfFb2AbHh1ijo5w.ukRq15pd9mx16rKfyBd2fZrt8gyvzPWyH69J6QPwTotxUf+WdayFMzUodmZKW2z0xvU7MbbkkUphJtFpJTkq2wnJpIkgA2wPu7MVBMPuEPad9BMiL1UnoS83TIICcivMWeoy7aQx8pISkjNNsnrwivFZloR5MBrf7YFpUPInCqJHW2QPEjMczRg4RGiSDk4MHnfJfLhmnLcGbST9zwwDjM6.VBJBYzIQUOYjnvy8IWMEiiedd8kIsm5R5oQPRUZbiUHS25SHUUQZc95m8T4yuXBjC8AaYG+rWHcWnSuvcRWrdh29cnGbb10BQuvWNTfXRfZQPYWYZxg2oGJfOli+6L9ns89ZNUa5lwzojkkeL5Wnef.oTkgn5nPCwG0DGIFTgPbhd0pMDt3tP3WO7pAAbEbnEAAijpPf1R0wQynQWf4lNGfOI0SDvYYvaQLVeFyzWUbsPP2CWc3h6QpV7i7FGz0CZoz1lF2cfbp5F0dvrA1UWooaZ9PfgVWUUuqhCCy4n01M3dPoB8ORX2xnIHSFhXD7n.rLaizwniGBIhSCFBzUcKCnkZ3f0rvyPPsGAY5FZZV7DFb25YbZpYirJkJoVcYBHYqhpI0ZSmJI.aR24Q.wttGRYMCpRtioip8NPkBArSFzsstxAnT6J67ElcZTSjD0VYqBpRMfdjnTdBe61xris561FZ2jjpz.pk6Vu9hGrBJ+aWKiGtzHbbYZhIzP54sLgv6ocCuDyVSwQIqhd6lJ.OKe1bPsBcxQivmolrlgGabZnGZxZHNyFJZFNaZBNTXnlYiMQTGN80Qzjm5kqXxK6t0+3QTrEKZKqhZYxTDfaWUBZZicxAzLuV5zD7jXLBTzA.zbzTzIPgRGFYydCTMrSt6yJJrQdRDVFMUbBK4TLrVD6+tFYvrPcSnifrgAv1VGrnqzPEIpPk3NcZsKYhinxbOIWVjEOf8YmwvXZpRGuFKoXtprPoPZStx.rfOfDq674U6dRPzudcB9C7OVsFpT.OiWgjMZ5ks5EfdV480xHDumbvm3cs6iksf8TPlSD4dkcZT5IkU86IJqJesqIW0ydEBNjKiYUrI99BXG1WZxaqqzF2xves2wGEbYrt0y8wLInp.cIzuQ+CHuDS8B7ylrj3YSlcxtqRLEyTPSiaCJlHWPEME3In1uSjXp+8TdITTG77NeI57NSb7NgVMzjN6RM4Sf4znYbNw.AXggEvhCKfkFV.KOr.VYXAb1gEv4FV.mev.7B9J.4FZHyOzPVXngr3fBomk57CMjEFZHGdrszPCY4gFxJCMjyNzPN2PC4.pweQFMgbCOn4GdPKL7f5qGcln.5kkrcmNhgPyO.zENTPW7PAcoCEzkOTPWYv34WPpJZJVFJKMdPVXngr3PCYogFxxCMjCHuMkD0s5Ajy5AWggDthCIbkFR3JOjvUYHga1gDt4FR3lePcuwUtmaXAL+vBXggEvAzV8kfdE34WcHzu4fsvg.1hGBXKcHfc.02eYN5cvMPilIYN1r+RkZ.qgBAqAZHXQuFJdnqgRG5Zn7gtFpLb0v4kppqzdnh+zEvBCKfEGV.KMr.VdXAb.0vunTU7mhYH3qrfVX3As3vCZogGzxCOnCriHNlsFJGQnvUXHgq3PBWogDtxCIbUFR3lcHgatgDtA1QDW4dtgEv7CKfEFV.GPGQNujED9yPYS1EvBCKfEGV.KMr.VdXAb.sX7JRNde+6gf2FD7BGNvKd3.uzgC7xGNvGX+87lzvRQ.RxRWkZk3VJNKqVU4f.d274cVHJvmThrBW6xMyMdqAA7BGNvKd3.uKuK+rOYP.m20xm9rm82LPfW4v05yd3n845p0u9f.97bf+YO6Y+rqGM0NpZSNN3kKV7u6SFH3GR8NO3GjfaBC9hGR3KcHgu7gD9JCq1CYszyy9eZghuzyGDv449O+u4S+m9jAAbdl+BO6Y+5CTqyy6+3m8re6AB7tX8e4AB7JGNvm8vA9bAYc+JCD3yObsdJW0lbGR3406d+O8Se0ACddMm2ud8zCF7EB19u1fAOup2BEK9qNXvWNnp6qOXvWIH8ekHA+4kPqffMPqEMd69uyO8OMR18ufDdcoFZM72Fo99WVxa4m1csrvu3a+WGQ7.uJSCEO9yiTMbQIxxXMTj3O6ShFRfWmrcWCx+v+w+xHUCWRhtbXCEK9AQrNnqX1tqC3mezWqq53ht6sOECUcbUbNI7hHJeDFKRHvENL.W7v.boCCvkOL.W4v.7rGFfm6v.77CEvIoJI4NTPm+PAcgCEzEOTPW5PAc4CEzC8TW6sxwGtuhvqJEbUbOb0ykjXWc0gTGu6sWVwQIAD0KcwgAwB2V0xQCsVzlZY08zppR1YxIkVV09gNlsA9k2p+EdVDKLkj6pBNwiX4eGv9x9Z0bZ5kv6+mrPSUsFM8214O+6svtMb2b4WPpTgYmK+74xMWtDZNpsXyXtbEKOWohkYxnfaNyVtXoYmMgi5ibXAY9RyWY1ByWNwtlVfQ8sz91bBZRpapTSqiMa564th7l5rS8BLbhyKhSbAoarqYGZB97B4+UK3yKdt0B77BHg.7hOq8BsAW.LbXZSFlLKCAsBA43CnDFLpLASqbAG51kmPYqpapfZys0.t.4StQ1HyKZYtuML5Hi7dYFZLQo.z3G+CBRi+7u6BT8PhRWvZ1WYfmDoBzhkyWb9YK1MsiUxOy+4yHgV7+oQqZxsT1SkzQI8aJi1T3y3lyJOpshAZGgaeC6kPd8gJQcEca+hfOpArBGb75psq5rlFsaIWV9Ie250AxDxKeNOftQsZg2DapZnzR.1urptpif71RUwpZyEUrBlwpJ6YZALMzQ4.adq1QWeCEmlt4aywInDzsMPKIlEw5Qb4emNsH7ODXEwIQd+8PZAaB5PlPF6f2fD4xVLvOyLfoCIeebafVK62vRUwikRagYB6OdPQvrMM2eCkZ0.k6nBmGOcQzAu.hR2gjw5lVTwPvb7U8BliKetqbS8jD8puOam0ywaF51sTZP5k9hf+pMLY5b99+QLcN+nmtPcn+L4T63WSJ390SG.MaaiFArXuP6f8fSb6EhJl1OyJWxCLbR9H9B+grVU9JArpj3fPrbFgQQB0nYunENKUWVZoN1Nls7xkXxwXJhImksz1SkqeGYrU1TtaGm1cbXSYwN0qSLYy0iEutyg9ObodScycUzWbi04sV4.8DZAHz5l0T4yopht5pJUcL4PK7Y+xMZApdNq2AsqYz0BzsdIcPkGcZWrzR7UHFsVyrJpiMuMykU2sS2Xv6ZqhVt52bMQ3EpmrW+v7Yo88xmsPY2mnOTHKtCIzKIQTbM4bRjM8zoLGSzMQ6vHxp+epuU2czbYDqorKkQbdIczyn4lfkW7V7CZ2Ue.O9WcnG.O1kaATZDqHmShbfrfoOj8Gb6nnq0vnEtddQIc05NjZw4.jKUPYfgVCv8S7M6xHyasPht87pO6gAQD3sWffeojVSy.uUgRzcywKrmqP4BymuX9tkbEJiEccSAhYh0Tqq.8ztWH926a0IRa1BAT3Su2BtRf0V+Mxe7RcCJUTTDUrv6SoBIokW+aLdSDkDRDpdJaa2TyxQE5cLVSIkERIefmR0lfcmwapnhPpvjREujzFcLp1b7lLlUDYHa402X1byNdSDyIhH9XGOhXtbyMdSDyKTRruGQLet4GGIBtc0kHQwAdcKTa014fwb5P3X6xeHkNRJskVqVPvpi4Thvwv+3uyDkDQ3n3PXliIzgPmhu.woX72aigLdZ8iDuheIxG1630sXtc7nHRbx1uXtslo.RbBvwXt8Ip.xvyy3KJsLZC4aI+6A06XN0TRH0n5YgXaKM6li4zQYgzw3uCxbaqWQjgomCMa9FyMlSEyJhJF+cPla6NKfJF+8PlaqWKRVL16hL+1.Wjvv2G4krT91GLtSHBGnexvIY9MIuHYhuWxu6aTnPtwcBQ3P5dtICUtgViVJig9IeYpextqpLFZ4u36ej3q748WBaGE9KmJ5mUBhH0gwm4REqTtxbg7U.xWI27yUrxnWErqCuAAjim+wIk1TqkcSSmI.ponHpgYBjiznmm3TRIgThuKxKZ0IJtHehSKkERK9tIurkY6I.RohPRwexjWRWYO0SNZoeysAdYqxtR.9QGQysAogNVsUycFqHhDmLrSycnuHfT7rQGw3yNQohhhnhweaybGFNhnB0AcxMOQoixBoiOXhhNpHjNLGWnCgFjSQLHeKEGFh.hy+nvbrDZKqd7NQyLGJShHuI6oYl4ziR.ANALIyLGkUBHBO6yujzVa7FP.3iyTQIgTgq84KHgzy5nq3XZMVSJkERJi+ytLyAOlHhXretkYNDzDPCi+yrLyAxl.ZX7edkYNb3DIGF6mUY1CpNQBhIf0cA6wlmHYwGNIQFBG4dRXMWvdjBJfLl.VxEWxcZIvGbeLDxk+iNR7DNojaScrN0DANFGEQlSFSNQfyURADim2uiwgRF3TtT.kL9OEEANwMEQGpSXRjxBojIfooH3oQpHRY7elJbm5Xzo5ICY7YezQ0TGiani6oN1+zeUDINwL0w9GCsBHkIAaybGFtBnClImXRfNJIjNTmnnixBoiOXhhNpHjNF+MJeQhQY7UNjvuK4ysFcagOzk.4wqQY1iAZADn27WLdaSl8boV.k3MKFiwccXOkrEIPNXb2WY1SraQxhObRRVHbAVL3yhwIIYHzH1fOKFmTFiIW0sh9ljiNiwmSh1RGqli4O+3EPjSHFj4OP6EPKSBlj4Od8EITF6MJyeT+KRd7gSVxCgqxhIACy7WCBBHjI.SyzkYw1lsX2XheminkYApYNlWlEdW4DhHuI8kYg2cig.BbhXYV3cQcHfH7lIiWPZ8waRnjPRveRLtohiZswZpnrPpXRX4U3ccpHhHl.VdEdWsKBngIgkWg20Li.ZXRX4U3ck2HRNLAr7J7u9cDIHlHVdE9WFPhjEe3jDYHbD6IikWg+Ekj.xX7Y4Ubw9bLusoVMUQy08nbNhwsyHx+WUCkc0IGpc4hrLy+NpR.0NwLgw9WZVBnjIiIL1+J7Rj.YBXBi8uNwDIK9vIIYgvOe2jwDF6eUqIfLl.lUhWgNqDd2fYhVdHiNqyWPho0NVm33tuj6DPrSHFm69V2S.8LIXht66.PQBmCl7HFgKEtIAC1ce+HJRx7cl7HFgqGtwGi2mOZ2cjSxGtv83J7fdEizqSJ6Q2wfcTNysEbzWG9AkM6AhM6s1wawP7+xQ4F9zm5+4+wrR2tFM7ouSfCidHA1Meol85pNJanXAiM6nZQPsVZF9U4u6BsTXNo6+2sPKsZ0zU2vzVCcrp6kSyOZgtt9K7N1vav2CHegYKmKWBPinJ9tj413urCfOqXrmptIP+scwHTVujDgpaYVC6Gv1ZfiD1cpWW6QnYlFzprcTayyr+7qqYugdmFZFAHt17IRbJ47nFWlzJgbB66o0wJ.Y0Xe0Hbsp9H1KUDFWozWvl3fSJo6gtnappnGrC0xc4jy2TjX.9gS784eR.dyGitYOsaZt+1fZvhlOhdWrvHgxWpPkbUJVrRHWnI4pjqPgBylv8qBr3M3khzyTcNwWRHMcEippGQrVNGc99mZXsacGdVq6Ay4wJuk0uqM9AmZ3s2JfZKwX3wJmkcH5O5Gdpgyd2awyYSJgtRMN14trdk9y+CN8XSXKdtK6AP1wJ+kyQ4ezoG6BaGzlK91E83k2x9sG23Gepg2td.d64n26pGuLW1OJ5G8Gdpg4tVWJt3aj1iWdK6Gq8m+u7ziQgkBNjF8t583g65cCumS3rwNYq51E6kdMFeLydYiPai+0mZXuKsVvHzvaYliWdKaHZezO4zCucwfpttai+QH68x8m8xFkVyO5zC68FGULL1fuN2e7oFF11GYLL13o9Od5ggs4sOpXXrAHcq+Mmd5Rt4PwvtfnYz+hR2CcO2pF7tnlaJR+rNAlD6M55dZ9oObgQ78McTIyojGfaPVHlGzfBbqjtrrSfeE9qa5WQZcEGKsGsgpxCwP1yKb5Bkmsb4BEKWpP2eTi4KN2rUJMaY50.6uD8ZfcC+guR+lxoQSdaZ7sd5sMpo9HHo2Hu6Ui5VPkUUcolH8actaM5UM00M2+8LsdncakpAtUWUaf9f9qoVidqwlibsol9caimtczb4yj5xl6avld4bt4r0CU2261gkfTzaFYZEmOq+MU85JXVFphIWQrDrFST3KMZtqR47z6p0.8B+JAUx93Zc+gs3UfSL35Bb2c.u8IgtvWNbcA7rMOInLjKawHqN3l5XrBAqybO+8NITH9kCWg3VJNwpCG6pCbqtu2+jPc3WKb0A575GqRbrqRvsRIUOITI9MDLjg6GiHVo3XWofacm9AiQ9Qf+BJwJDG6JDreFoOy7jPg3WMbEBxm8IVi3XWif8ae01ZLxDA9aUEqPbrqPv9A69bmwHeKoefsXUhiOUhjzolh8qL1d+wHcB5WELVm33Wmfc9J+7C3OjRNdzI9UBWm.8oLiUHN9UHXmzx1e3IgBg.iDzu+ZrNwwuNA67V94emSBcBAwaPNU5hUIN9UIXm6xe5SOITI9MCWkveOmFqVb7qVvN+k+e+tiQtSfNnHhUHN9UHXm6x499mDJDBlXB7Y9erFwnSi3K0iEQLAl7B2ZmekgYgyn0Orqqk7RwbEJUnbYQKQFQqCmLOuqEYCyljir0ESh1HiZnSaAtkMXJ7ll6lJZF7qavWTBmF6pMgeqY9b1slI7SXK8mv2vse4mOXREtCMokW3zfTYq6zaox4I62twZwB2g.01mJDK2pOcVRh1pdi0BEtMe+27TgPI3t56ht6pOgBhfxvwAAC2oqYsSGFw1p28VdY+MH3XceFtyLTsSGFx1teiuf+x3i0hEtiAUiSEhk06iX4Bzsk3Xsbg8K49zu0oB4xZ8s6B9qDOVKV3NsZcNcXEaodKVtn6lgbrTvjxMnR1up4S26zQGl9JYnewzwaICW79GbpPxrzZ8Kdez2sb7VrH73EdBVrbi9MxO4KEMdKX31uHO9zgfYw9YIi9YcGukLrw8uvSOUHY1tOcYtLyo253svgM1+m9cOUHb1718aXFz2yZ7VrvF2+y+dmNrlsY+BjA+UkNAkK83J0F+bOOiIedCuSBUR4B4ncVzI.cuNIme56zkzLja.qHrWiSxSc2tkRC2E8J9YtEyF6QZWh2Zg5Z5pDZ4WS5war4c+5qrz1OX06t1xqr4SzMaXlssQif38i6Bu2dnv6eIg8VNO96CsglSU1K5b4u2Pdxe5dFMxqT52DbJkmW51nu+Jn+e.u1Xh.Zi8XCpOvmKnQj6I3D9LzyzzPO1Ou.lpkIjczjEWf7UgBJL3NaDGDgg6o5X+OHVOJY37tAyPgB0ENjxnPEGWjzxCj73x9SvcPYxS+CFdYB9D06jUlDQFb.+wPbis74FBkeChb4U74wCXeE7LbGTt7W7iFZCW2BJ43qXIP2HFhWnXXX6pbIn1kgpefjGWjN01AEHe1e3PeFRCUn.6s7Avw1vS5iuDp.4kQj3.KQt.YRsCJP3Nc2FLAxZl6OwzAgg1OB5frl4.KNtj6jYGTfrvOYHEHu.TiQnCRfF9TYOjKiLYgIxATlPmF6fxje5GM56jDPnv0xmREJP2DQBkKH99aaM5sWL2EwvONrvDeQoscuTfFAQIBU6vGk3TmIJWxDmSB+L22k3xrpZoCb+X3I2DJP6d0m5lSPhIwBC1oTUfYD4NcyKXkUhB8re7Bt4b9Amt4EBU5uHAXbmEagmmktp8mShVvQjheHWzUGQJ9EmDU7qD1D+wJuFVUetEy26cZmabYw27N0r5zZCkZ46wMKTe0X+lCDYkYAACD1ECt6LJDHmtt5hb477SIVO5OofVR+KA+dWkpOzF+Qozg.hskuqg9AGBFZAgKJwIYFJykUxwNGk0.lr0wJGctYKO2b4JNW221TcmQg.4zGNp2UTxwN+j66Z9sOsvOSgWByxmTL0xhri9z5Svc6CbejbryUqHxX5DMW8bzI66DgkNqHqoSzrzjtSW2IBOcNQVTmvUSIS41IBKcdQ1See6IXVZJu4L63joddOm8yIxd5DNW0cRuNY3p4EYR8nmqdD5Pk+EKxwOGsfHCpSzbTtqSjielZQgtn93IXl54nqx2SFdZIgNnNIySOOdYfhWEnmLr0xBcR8wSzVTQKfySFNZEgtnNIyQeIxZu7Hfk9phmGYUzMed77l1W1IyMhtsxdp21XCKUaUn1l5LCBmF6KfzTeL+gGRLWdzxkKR3xomJlKeDxkKQ3x+Ywb4iRtbYBW9eFwhgzT+0c+E0h4vGJNbENaxwb3QOGdVN6wwb3QOGdNNawwb3QOGd9.1gqLULGdDwgSRiBIW.Cwwr3QNKNe.Kwwr3QNKtP.Swwr3QNKtX.aw+zXV7nlEWJfs3XV7HmEWNfs3XV7HmEWIfs3XV7fxhOmnUbdRosMM02VqsnS40e92MvLAsvOoKV8aQWP5mQZvWCzWTZwNNNlsBd6byM0pu+2+PsXke++DAnrqT57RykqbwbUJVo6uHvryme1JyO67cKv8xgW0gl7bCy5AeqlJ0L2WDa34euE5B6lK+74xM2fdyi2W9SoEFXxUnZeeNEEb2PVX8.C52HxwrQCc0kuwRr6gz+EL5kW96SU5tnz8zLbTZnJiJc2x4.e3mbyVtXoYmsKrct4JmuR4xk51vRzP4WkhxnBag2eWrRwePXX9EjXJ7IFheIJhuo5dpV6xtCQ+QggzurzcLMz0Ljok+HFuOuP79hRVpM7rX9H1S0EtdLtqGmkt6c1dy6t1VcgwKGULd974lKeohylH7C.kO+57VfQGXKhT8S0CUefrVAMrGKQ87cCinNmzJar4cWeTPRiBTGKQ1R0Ac+KXK5qk6g7Ik1XyU1ZksOdw9jhr8dYzQ.jsloAUkhA+axtKPk+9A2ym0CYvkAyZbuGtOg2EFQhodA26nBJ56kysWlt+v07SawCZCNZf3BScVR4SL0+UI45cLph1mnxlF2wzQ8tFYlN0iSkbc.HvJZ1Zp5JGrxd.2Jy5JNMyZoXT61vK4lQtXtbSO8US8jTcUG0qSpj.4Q4k5pVglM59lvpW.lwnSqcUslQdOTWMuBB7gUpo4XZskihiJvvjVzr1AnafBChD+dtdEgdYKPignTTkbOevTPSiaan4fVk9tpJM0zq4wBsSfTdv.AO8t2FeQd.rSZZP4ZiN2nPnvTKqtmVUUh7AcrLY+PGy1gI7trz5l05nq.3+RMQmFSHY2kwGLSzLPahWVgm+9.lwXyTmgmGbVw7fbL7fPnvHhhuhDd66FNNdlPvQfScTfimcaZW3UpWWspiOB9BRq9M33airlepyvz9upa6CZA6Yp2AyJPs+4jniIxhCKac.9H2hgq7dpNLI8wO6YUd9Z.BZTki2c6Vs6naqtlpQC1gG+7qSQkaaztiCa5uqs5hf8iFVlcLpscSKUkZ7foh6ZyZm8VZKwTGs+usvxJsZCVuYwiUWcapRMMoWagU8NBq9M55Hrx.6cP18U1iro0klBACdCqKM0e+US.VlMaCBDKG27PIrhQM27m5rQVnku25LaZ1AMTD457Ap96zoE+8oCpIOCpKN48btXzVpF0vu7+C9glYdz6SQyLualI5VuHkzxGXnzRqpMVofyIOVEiaBj2JFJ.oTikciRFI7rah1ftAx3FNNfDlUphRcSUcUEaFIzu6B9sYWMwmec+LC1PO+S+ze4m6m8lnt4raTW+r3vD4e+6tLSdgfOqo0BhmvJD5klSnjLMutoZZFc0PeEFrXckGp1ocHPELiIXUteShJ2qJskCzcuE5VYB5.CC2hU8nSz.uRmmcmm+yR9YWeQEcEipLbvMdq6YBCigYUr6U32VSWeUkZpngrYiR71UQCV6e6XAVYzMUpw64yyWXwNfs5.9C8Wr.totQKvdESaIu.kF1Tssphy5jy4PZlmagM27lfAt1AgBrugFbZaKPSgy.1me86ZnBxRtxtjkosccfbv0EmuXazwpAuFJ1ntMeZfbkUhhDRnaqKP+QqpqvmoqKpUxssBVG5LRj2yG38BAduXf2KE38xAduRf2m0+cBCcck1HshyKsKnN7.6Z160keTuXzT7gZB63LSIWTqgWqPRYUnyruG3cMh5K18H5uFu+qrNGgxPNbOaO18C5DzUMN+PR5hiaogX7qXrGz0CRAgiIwc8gj3Pt0MMLa2zzPqJu9Mnu1nA5LbwGkCkNBZH90VHDKvqoYnpXw2scfXA81D6TSEQwzWVhftxHSVxm3dVeNWuCtGHkphZQDRdIrbxKo9hZfQFZ2ZVQEXexg29D8TgkWJjHgaCgqCbvLSshTo4x58yrKA+Zu6t2u2JYecl22XiMHuOO4c3W0YeOwHS7NRBF4rGsAivoBJ4JWgnArcTfwjHFY8OqS6Eh8YuyO8O85Kp01TWwBEE0QBe7jHfoy1sp+WR5VJV0pBpj0jWWwF7DSFZdRfSHtU.b4NpN6aZ8PjGzKa218sc0br.bi0cgZ.5YiF6gOvkEzPAH0fIPKTmk8vGTyzTd+oP81mTc9SperUxQOKDrF574JTV64jn4hNzK4BE7+zBSr7Ep51EniKdSWsclq.SQtDWn3K87k4CRFBWme9o+cWnKmlgf0w1f2.0MNnUmQEabpWHxlFQjj7X8bI8pRX173NRhE8i2H4kQmgTmPn3wbG6dwFtjDI7CYxTKM9ImtfDNpLYTPzm1jQUcqJfdnOSbt7rptS3yTmQGBiVm6pEnS85HTBBPM5yog6g9j.K3x+F25+U7jZ7EuI03RR1H0hGnZn0nkR77ZbZcdMRQ59GOwFi6SrwKSDTmjyrgpzrEnSqQmJNkHyTw25cy9sludgpEJszpucoNz2uUyaQmoCEEk290MZ29qSees70e6WuX0ByMW7LeDoY9f6p8nOS8we6mbZbpONyfL0GIIrqQ6bebtS8y8gnX7OOgc1qf7S7e+S+m9j3f7iCxONH+3f7iCxebLHex4Pr.62e1q19uOND+u3EheRolJNOX9byGGc+jbz8uLAGeIoabqk2ZSLpcQT2cuv7G8w0uTGq8TCDCoxAboN8u++PHSB.Ik0BZS6V7KSsEH2Qod22mcVXqNP7P7WqpcMeBe90Wop4Q2jIHEQ0hKxNYBigindIW7iHEFGGxGK9GW4eurDUYbrkAdIIZeiSRVX3ShE1vT7hyYhZJplnl8mWBofMZm6mO+5eQcteRhXl8ZleV3YO6WOd4cDOyOwy7S7L+DOyOiky7SR7MlTOl8mO9YO6Wz8r+7YeR7r+b5d1etnjInXDOCPSny.zT8dFfdExyxtSBTgSlYAB8yHZVfdmmGOKPwyBT7r.MQMKPwyowHXNMNuqKbw6mmQy7ZbQWFZulaCvu3e6341HdtMhmai341HdtMFKmaC1KtXQyP8O9a7ODX1Md5yd1eS7rabJe1MdEIaWUiGTUWAEQZ7LbL4NCG8ZGrfbe.e5Q5lZw3cxxXxNYYBdWWbY7XKagLfz+cdwB+hu8e80+B+Nu3h9CGGu6KFMQp9x9rzdtCLRj3KGGqZbrpwwpFGqZbrpioGyBqYtsYqdXAOjyNxO65wwod5NNU383.S+hRfokhCLMNvzC+wA.dfj9GTp7O7e7uL93.HIgcEGP5n53..yN6yhB+WINXz3fQiCFMNXz3fQGKCF8bHe46Qzne7M+E+uiOQ.hiFMNZzSwQiVNNZz3nQOrQidQ5HIQ5aj9mEGNZJJ+JNdzQS7nWfxOi+5nwAjFGPZb.owAjNg90QukVu95nnSSpIs8nLHjhiGMNdz33QiX7nUhiGMNdzC+WGEOPRjNrz+yiWxtIIrq3nQGUecTL6LNXz3fQiCFMNXz3fQmPOxrtkF3TQCEQ1ve5+k+OAWrte1yd1OKzEqqb7mG8TS3nWVpJRs3AM0Zz7Aykat3fS+BSvoyFGbZbvoG1fSuj6.KQ5qk9Ch+Zom2kgEGf5n5jOhxPiCQMND03PTiCQMND0IzPTWyr2gn9O9NACQUtXw+tOIND0S2gn9xzPT0M2ONB0uPEg5bwQnFGg5gOBU53J8OBU3mezWKNBUWFVbDpipHToLz3HTiiPMNB03HTiiPchLB0WTZIcHPgnGdpvMXZb3omdBOMkTUPqHNxzuPEY57wQlFGY5omP9NGdjs338FMw6kByM6Uvdu+m9ouZbvdwA6EGrWbvdwA6Ml94HWxb+cU00Gri21DIhi26z9kLaUhhQbHemlC46WJXHe4yEGyWbLeml9LezA3hC6aT8Y9nLzddEb9oe5qEG4WbjewQ9EG4WbjeiomjrKorqhsv0gp7e9M+EwA98Eu.+tfTUrdQbbeShw8clgNtu7ww8MlD224bWfm2CjLUQsHQqhXu1Kw9hbfEGZebVgEx8ZdiUKqVUCbnO3YflaCgqCxnPqHUZtrd+L6Rvu16t686sR1Wm48M1XCx6ySdG9Uc12SbjrdSiCVdjbF2RzwhiUdTcF2R3m87ijVud53PkiCUNNT43PkiCUdrLT4KHssRqcAB.7WUjY7m+yRF+cRiOnaiCR9TcPxEhCRdrNH4WiwRcbfxwAJeTEn7kXzyhCVdzDr7kY3o8Lf4hE+UiCXNNf43.liCXNNf4wzsP5lZ0DFp7B+3uw+PbnxeQbKjZAZEweW4uXExbw3PlGqCY9RXa0wAKGGr7Q21tEogEGl7nZa2h3l8bwW+rm85wAHGGfbb.xwAHGGf7X5sl5RVJ1MEdHK8e3e6+y3Hj+hWDxujTUrZQb3wegY61VJN733sa6ooqkT7.awA6MptVRwrydEs2SqW+JwQ6EGsWbzdwQ6EGs2wYzdGGXYKkpVlO.BjywxDiqmCmBfkFJ3w9jVG8tb9D6on2gy7dKv27GTsJeU0EfEFV.KNr.VZXAr7vBXkgEvYGV.mq+.hBc5FcbLaQr.lHw5arBQAbpU7T.OaB0V6pVC7yZqpVZscvQnUWCG6H5OjV8UjPQAC0R0lpUeX1OvNARgQEhA+L+Uu.5Zkw1Q9djRrDQSR9ZxKQJR1FpNKY1psoA7Rlz7EK8zWM0M0M2UQ2NKsI.HWwnADAABPZoy.EK0UtB7+xKgv.45lVx5Hi.NxTvPYukpE7VVaUmEgHRd2MWKS5lNNsseyqbk82e+rsLsfPezpplspYKTKSKeUEc82Syo4MWY6LoQNHhlDC6qPq32.CVMqNs.51zH8LxONca8N.Fl9MSuNJukg7R+jYjq2wnJhUmwFrO0wdFYKUafrsUmVN0iSkTqNMC4qcMYZSuENg691SmJIThjtrBJocMuZXmzTrI88uZpjOQF56qJGJDgx6R9jTOwmEtAX80SdI6JvvA1iJAuDBwMw.PLFolwiJaLMhp1SwRVAZWmlZ1nVcMSfctnYGiZ1YxgZZTA.PA2qgREPVesqE.+AJ55xt5Hxoke8vnGTody9WpWGxIy61tFTyxJ6onoiz4mNMfRn+Sqtbl9fMTgRCDKfLMWYH+wN69M0bTm9pxtYupIR29tO5fFpHMj7EyhocFAUX0hkZMA0g7hl50XqnTPYpYor+Mz0ZXnVaa0G4jgvUmQdGkcxc+YjU1IO92EtOBN3WogX5a5fTz6CMzKRn6lMc28k7vgxtHfxNEuOGJf0+5V0ZcyN1pKAc.2EhS2W2BFUzvYZRuFYxaYqpqU8g.GC3WTwsYaUi2ScWvMA0dzS+Jjdq1dXQhDcYf6kkTaaY15AsTZayYd6cdIp4MjAf6XBpExISdM4cJVYF4hyMiboBv+POOKP74fmQoAOWARuRIH84gzg7qf9K7d47P9yCch8qU5D1rNzznZN8tfSPomIssghkJ72lJNvuQjJ4o9++d0NplPUKfxr0L5OOPuUd2Gq05QtOB8hsbTQJ.oHI.NM8P2LaCRmlG391r4l08w4xMm6iymadOX+.EeXsqYumOhgoMJlgPLWZE+WJpQdtlhQCUKuWAGgrahZ.xqTri9xbdORvMxyDji7LF6nOW0R4aef2aX7y8kNEJjy6EUCsFsT7wcPJfEUDLmHSfeSwZzS1syWf9HR9R74kl.EiwONG8AB1hdhfqnmPXpWShD92xsYQspu1.8IZq69FECbekCKbSjhIduNGyKDLx8MBV49FGl0TaayVLrCvaC7UfNTd2Gonl2q7u0.rzVCIP8RghW9uOG6aDLy6UBp48JGtA9C0MxAIRA.dhA0Puw8BGhgRfAuvuNGyK9XE5MejB8FGNoa1MJoatOs3nalOeTB8F2KbnDJAFTB+5bLu3iRz66Ol2nnjamQsZvfcfsUe8KujP8Bbe9AVZsraZ5vkFthSwjvtVcP8PYRolkYatDppqrmJqND9Rcxu0IWSgT0H+WHzGy6DhJnQOcyPqNBW1+FPjox7YP90EsxnGQorUFNARAYN.SCAQHmxMLfhemBo2IfSX.pqzlQGA8JEJ5EjQHv33syF7FGwOIRg8eWD0hV8jLML5URYbWVkgxhPyeHK5hdmhunGCBWHi99ZzQeqR8CfeH3+pWQhY7LHL9VjlhI9hanq6EhgclztkCMhOy.NTP6EjdkyGTvlWTZSZw7gC5rEE3nEiAUc6mPftmXKaQ8qArVcDHVuxwBJViNR.6URFvQB7n.ra4X.EzsiB+xsbLPh6KEkV0qfLRIuNE8mcyWV+5.06HJnta4R6GJ1VH8M4UPZ+xtdAixRyPGZFuHJkMM1xUyj57bF5T1LiLdh..ekkSIKKibW1WYOKpPPva1tkd5oQAi.kCBfNiprlASOioQYjTVE4V98P0YFYUTnptfdULfX7HqhM86zmY5r3O4u6m.Nimqc6vfFZF0Tezcq6gE2mTYtL.TKtFTKZFM7BEXqCLbZlsstxAHuty.9ZmuvrSCvA3vSjkS8jTxoPyBPWTAh.UIg6faLuZrad3zWMITOTQA3fUjDD2hzQu+hAWCGQPH3VznIB.LnGB.p+o6307BX9x2k3UYOpJF+N6c0EpLwin5gDgmYxIO1x03Vz5dvZJLBcQ3LxFktIb.DwtJtvzqtKrNesS.zJxr5.XWu5BDBehx1o7cvA0Hww2lLvUO303X2cGFT.ONoGG1sfn36S1SNaxagh5nWcAbiJYGuVOzNAIWGGhPOpI+XH5WUslYuqIOO+6cEEp30i0zCAKu3fqmD1e3HISWx0if9IU8cwnuxU+hFIIKFE5or0y89cXvhvMxkDIW5WMxDvP+pwPkNLDXOjOAYstc5bkQfaMQSDQ8+o+1377nJBl27JazrrgPhdvQcCfYGeTH5bSOLoWLSdlP.scrioQTe2yI1HvOY7MNJrTlhGQtJAhdwX8CGcGNzY.TVYvpdptFjyvyjUL.WoiFO1yq6Hvh8ckOJbX+RGQFLFfdwe8BYeGVTI5bWFLpWL2frDNd6lZ0riVLAaRCnn+LVuPTh.a0qrQiohPhdvRcmSgc7QgHyN8wjdvLCvD3Xk9m2CQykFt.75OWMPviQf2F.hnwg8Qqdvm4m.ncBhZQ2Wi.XXub4HL1El+Gxb7jTxQYW9I14+wYjRkxKN7coU.4aBD9GO1sHrwuuKVx1KnHEfClsTcPqrhdAkaQXhyWsgKBHFLlBwAYewRuxvAVDPTlR4CJ5qthX3xWSdGFd6L9LrYX4C2mENnBwvwPJy3SByvhVnoAD5K0TwnlNZWaZmgow.jgOCRE.IGDB2pCMwHc0ujonJPJ6gdD8oASg8wTCvzbWUVS9qgo2rf9VCmlPBu9qOcJ4jOFTxwchvT0NZ2moqlWsg5xg.FxlzsPNI8UToyjdOx5JJ8L8Bjm.cjBQu+xR5llODHg5pp5bp+eKYIvD0ZPtxP1xn7kaXpZK2T0RkIbrFMzUkWriiCHfPIxHozUp+.RAH4yrpKpZop3nh+Z7nl3FF0VEZ.zhAHHPYANiFZI1tp6WeMM5S9xVjzLKtgFyHat6Gv8s+g2yp.smnOzrlSyan2toRFTA2sAIcb0jEaSU95x4ylS9Mkyks7zzuHMvA02DsLBTqsoZUGEC.YxnLS9bdeN6P+d4Uxla5HgFNpOxIRHRWe0cJvg9c2c+r2UAQfkZM2O4b3cbcvb3kuwRomlLCXAjUAET8ohPIXgWgail5Cu0W1M50k2XtfUGWUJa7J0osRCUYzRfqgJQCNnJrxtCp9qKDiGJuXMlhSSz7Dn493kLsLHaCp2LetYjoE4Mk2I2L4.8Z3+u+SNFUtGU51ohv3fhUgbkiB0EYFV7vUK9iQFo5wUcF8GNsU+0XEQEkrlgHqdtt0TEnetgY6NsWW0nyhfqTMrPpBgqlhFYgnRcCc8L4dzpqVX17KWpLBCwb+dzFfw.UmEsL22FT6TUrp1bQEqd0L9pU4dT97qh+AYEzGI5Ru1s2CnclCqcFrlBrZiXpqMTbZhgWC3ufFWY7xGpPNz+tuqxUDIu0fBbaG0VhoNs531xVUGvczpHBkHIqtI9BEbIdlBzG5urG4+DelPO5FGrU4625U.wcQ8a5t5RFAEudys513napMgTQVBHovxZ0r2RsshEZYlzKtaXJD9jJZqikAY640Q1HQOH+5X6OuA487j2Kd+qTnqWy6wWI964zwxfUhviraSWMY8ROX9UKeikJsxRcoGrhttVaa0L6PwvlWonG5fe18W2e5tvfPWsc95D7X4szZzTGsF5FZTEoq5olxkaTjI8DU6mFpG2gcfD42f7dWClfYSn0K4iGyww90GCF2YWyEMeTHcuj6U2KQFf6k82PL7JlWzaGGPCtbikP+2LxXFDcaJH+676PPTbrOSy3FQgoifYJWFra+WONbwbBYwcangzBaaoQH6cXrLfDVWoH7aFKDztekv+BZf0gwZxtws+pElgXjnORvk0TzMaHz8w968Hm3KYekc8Z84FA+zhp5axjDB202l6g2eixaoqUCbUmI1RjyPjLI4EY+xYAR.ukr4fIE4nw0793J9N4Kfb3txLHFza.9ZvFTIyfw.2uE407tqicjNYwbzWNfpfBb6LzpZZ4upu+12wzpkhN3teMj7.9WgbHAU3EoGnK3TzAy3OFXS.eKO7wI3pTgl+RDdzzDhxS9C+PLRwrDqCWoCi02vd6HFivhlPOH75cIYRjkcg0qy.WgOgwG8s.lnNDPkih0Axusg4tATkw4iROx5wdPHPIlzV8UIdenA8F6EnGW8Hjx8NLoKeE4BfBx9n+56XGlMrOy6.qfVA0zrqhhjDpm8QZV4YRO751CBbSfMSNiWh9Oc+P5H31yxuOkq6OHnhPWm9poN5TF43ciPcxApdQRBazNtDDEExV9pIIIoZTCRfjwWEDJhrUfKAlsYYh1oiY..mInHkHxHi1gepHN46GIwQ3FZPU8UJ7FEmI+LU.6insQBZ176UT9KhVoknCtfdDUsWeIgQmSVWVG9pwassbnqJ7p43vWMj0WxgudvK3kQAUQVEBi.7YTUQJNKqVU4fHVItF7Q63N4MTpQ2JaVjslFiU+M1D5oEXmpw1qvc2pkIseeiz8xogv2daPOjBHfv4VSwQIqBxeDzGG.Aec.opcc4txUF49bZxNQq2N1vMr8LAqouZtryN7HcerJmbf8J0mohLcld5YBcSAVZ5PsYhKJzbnipEqt2PXz8hWPV4a.7xrnA+.rkrbyBTfuFp.4vq7HRK3X1F2D3sEYR2pzRsMRShrWIm9ptaPvPjq4I0Fsx.C0jZC6R1S.MT7WRsM5Ko1Vwf5YM9in1VnFNqSynZgVI6gpj8XxiTO6M.0SJV7wa0y2GzIvz5+DlpHvxrcnpCtkE5PUCbKGtgiN5d8RNT0Sfk90PVGAVQNCWs3sx6OD0A2RuZ3ph.K.lgS9FxRPXnpH90Ox.TEcEF75pNCbTvXXDD+.4HcXCUkGhKUziCFmD3jrRCUvXSRXrvap5.1YUcSU1rtLJZHTRsg52VNiMLXI5UDZnZhrCng1oMGLM9KnKm4QHdEpMvkGYcystd8qI+HnQce8JWyuXtencjoR7HxJ6iajc89fFQIPhvlSjxS2UkhOkLn02MsTpoAxfUAvyrCu6sEPA+mCsSbgeir4mD8o+4KCsH4yA+49SSGCVjCw4n94il+pxfq43m+pt7Z1HA7SEMSTkuOgNngoFbIM.jQ.8jLXUzf18wYQzd6qcebYo60+Tg0.WMrkmvEjbLM0czZyszD9RmQhccjD7SdgGx6t69AnYVlaEmrlBXJKuvy9gsglZas1nw6gtExZ1a.Q1nYz.4qlBDJFvpb5oO.z9DTTNP6zwxBdbaRdYHgUlwqnWCb3h5DAjLAQYcVQ92BUBzbc9a4gWntBH.RxhoNVcTupm+D3OB0RniiRLKFskVfXxfreBM7RYO+HfFacPMSaKUfgUydKMippTH2DUKfJvagTKyEZyRYPnUzLA2s8v8YPj1UIsI7+jfZwDZXvGB3TlDyAEgLVRv3dCfUWMg+YEhg5if9epniRm++.qAh+D
                            

                            https://instagram.com/morphoice - 80s inspired Synthwave Music, Arcade & Gameboy homebrew!

                            LindonL 1 Reply Last reply Reply Quote 0
                            • LindonL
                              Lindon @Morphoice
                              last edited by

                              @Morphoice said in Can I manually trigger a Callback function?:

                              isnt your problem (for example) this:

                              inline function onSnarePromControl(control, value)
                              { 
                                 if (snareProms.contains(control)) {
                              	   for(e in snareProms)
                              	  	 e.setValue( e == control);
                              	   Snare.asSampler().loadSampleMap(snareMaps[snareProms.indexOf(control)]);
                              	  // Snare.setLoadingCallback(Synth.playNote(38,127));
                                 }  
                              }
                               
                              for (e in snareProms) {
                              	e.setControlCallback(onSnarePromControl);	
                              }
                              
                              

                              so these buttons are attempting to load their samples every time when this:

                              inline function onSnarePromControl(control, value)
                              { 
                                  
                                 if(!value)
                                     break;
                                 if (snareProms.contains(control)) {
                              	   for(e in snareProms)
                              	  	 e.setValue( e == control);
                              	   Snare.asSampler().loadSampleMap(snareMaps[snareProms.indexOf(control)]);
                              	  // Snare.setLoadingCallback(Synth.playNote(38,127));
                                 }  
                              }
                               
                              for (e in snareProms) {
                              	e.setControlCallback(onSnarePromControl);	
                              }
                              

                              fixes it so they only load their sample if they are ON....

                              HISE Development for hire.
                              www.channelrobot.com

                              LindonL MorphoiceM 2 Replies Last reply Reply Quote 0
                              • LindonL
                                Lindon @Lindon
                                last edited by Lindon

                                @Lindon plus....

                                It seems you have some redundant buttons you had a bassProm14 for which there is no sample...

                                HISE Development for hire.
                                www.channelrobot.com

                                MorphoiceM 1 Reply Last reply Reply Quote 0
                                • MorphoiceM
                                  Morphoice @Lindon
                                  last edited by

                                  @Lindon said in Can I manually trigger a Callback function?:

                                  e.setValue( e == control);

                                  i was iterating them all to "disable" the previous ones, whenever another map is selected
                                  so that only one button could be pressed, only the selected one's value becomes true.

                                  if i put the break then you can actually turn off the current tbutton with no other one selected having no sample loaded at all which makes no sense I suppose

                                  https://instagram.com/morphoice - 80s inspired Synthwave Music, Arcade & Gameboy homebrew!

                                  LindonL 1 Reply Last reply Reply Quote 0
                                  • MorphoiceM
                                    Morphoice @Lindon
                                    last edited by

                                    @Lindon I havent made all maps for all the buttons yet, the bassProm14 probably happened by mistake, it shouldnt be there at all

                                    https://instagram.com/morphoice - 80s inspired Synthwave Music, Arcade & Gameboy homebrew!

                                    1 Reply Last reply Reply Quote 0
                                    • LindonL
                                      Lindon @Morphoice
                                      last edited by

                                      @Morphoice said in Can I manually trigger a Callback function?:

                                      @Lindon said in Can I manually trigger a Callback function?:

                                      e.setValue( e == control);

                                      i was iterating them all to "disable" the previous ones, whenever another map is selected
                                      so that only one button could be pressed, only the selected one's value becomes true.

                                      if i put the break then you can actually turn off the current tbutton with no other one selected having no sample loaded at all which makes no sense I suppose

                                      thid way madness lies - just use the radio buttons..hang on I will do it for you...

                                      HISE Development for hire.
                                      www.channelrobot.com

                                      d.healeyD 1 Reply Last reply Reply Quote 0
                                      • d.healeyD
                                        d.healey @Lindon
                                        last edited by

                                        @Lindon said in Can I manually trigger a Callback function?:

                                        just use the radio buttons..hang on I will do it for you...

                                        Radio buttons have problems, rolling your own as @Morphoice is doing is usually better, at least you have more control over them. I never use the built in radio group.

                                        Libre Wave - Freedom respecting instruments and effects
                                        My Patreon - HISE tutorials
                                        YouTube Channel - Public HISE tutorials

                                        MorphoiceM LindonL 3 Replies Last reply Reply Quote 0
                                        • MorphoiceM
                                          Morphoice @d.healey
                                          last edited by

                                          @d-healey @Lindon I remember David recommending not to use radio buttons, hence my attempt...

                                          https://instagram.com/morphoice - 80s inspired Synthwave Music, Arcade & Gameboy homebrew!

                                          LindonL 1 Reply Last reply Reply Quote 0
                                          • LindonL
                                            Lindon @d.healey
                                            last edited by

                                            @d-healey said in Can I manually trigger a Callback function?:

                                            @Lindon said in Can I manually trigger a Callback function?:

                                            just use the radio buttons..hang on I will do it for you...

                                            Radio buttons have problems, rolling your own as @Morphoice is doing is usually better, at least you have more control over them. I never use the built in radio group.

                                            wow I cant think of a time when Ive disagreed with you more!!!

                                            HISE Development for hire.
                                            www.channelrobot.com

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            38

                                            Online

                                            1.8k

                                            Users

                                            11.9k

                                            Topics

                                            103.9k

                                            Posts