HISE Logo Forum
    • Categories
    • Register
    • Login

    inline function

    Scheduled Pinned Locked Moved General Questions
    30 Posts 4 Posters 1.0k 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 @MikeB
      last edited by

      @MikeB
      Of course, your preset list is empty. The presets are not transferred with the snippet.

      -- yes so I loaded the snippet into a product with presets - to avoid this issue... so your problem is here:

      which calls this:
      
      	inline function loadPresetFile(presetName) {
      		Console.print("CAllING LoadPresetFile");
      	
      		local presetFile = FileSystem.findFiles(getPresetFolder(), presetName + ".preset", true);
      		//return presetFile[0].loadAsObject();
      	}
      

      HISE Development for hire.
      www.channelrobot.com

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

        @MikeB Please you use code tags for your snippets, it will make them a little easier to copy and take up less vertical room.

        8bb8fd92-bf4b-4a4f-8646-b6e74467d6e7-image.png

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

        1 Reply Last reply Reply Quote 1
        • MikeBM
          MikeB @Lindon
          last edited by

          @Lindon

          I have known this for 3 days - I am shown that the problem lies in this line!!!!!

          It doesn't help if you point out every time that this is the problem.

          The question I am asking here is not WHERE is the problem BUT how can I fix it!

          "One hour of trial and error can save 10 minutes of reading the manual."
          "It's easier to hit the developer with feature requests than to spend 10 minutes reading the manual. :-)))"
          HISE Develop - Mac Pro 5.1, OS X 10.14.6, Projucer 6.02, Xcode 10.3

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

            @MikeB

            Did you try returning a value from the function by uncommenting
            //return presetFile[0].loadAsObject();?

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

            MikeBM 1 Reply Last reply Reply Quote 0
            • MikeBM
              MikeB @d.healey
              last edited by MikeB

              @d-healey

              Of course

              This is the result without the comments!

              Bildschirmfoto 2022-11-13 um 15.37.36.png

              "One hour of trial and error can save 10 minutes of reading the manual."
              "It's easier to hit the developer with feature requests than to spend 10 minutes reading the manual. :-)))"
              HISE Develop - Mac Pro 5.1, OS X 10.14.6, Projucer 6.02, Xcode 10.3

              d.healeyD MikeBM 2 Replies Last reply Reply Quote 0
              • d.healeyD
                d.healey @MikeB
                last edited by

                @MikeB That error implies that presetFile is not what you think it is.

                Use if (presetFile.length > 0) before trying to load it to make sure a preset file has actually been found. Also if you only want a single file and you know the name of the file why not use .getChildFile() instead of findFiles?

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

                MikeBM LindonL 2 Replies Last reply Reply Quote 0
                • MikeBM
                  MikeB @MikeB
                  last edited by

                  It is supposed to be a simple preset browser with no frills.

                  There are no examples except this one and it doesn't work anymore and HISE hangs on it all the time in the latest version.

                  Now the professionals in HISE programming have looked at this and have not come up with a solution.

                  How is a novice programmer supposed to achieve anything here?

                  Everyone here says - very simple, build your own sequencer or your own preset browser if it doesn't work the way you want.

                  Actually, I just want my arpeggiator not to stop running when I change presets. That's all.

                  SOLUTION: own sequencer (there is no description whatsoever, let alone a snippet)
                  SOLUTION: own preset browser - there is this one snippet - which no longer works today.

                  Translated with www.DeepL.com/Translator (free version)

                  "One hour of trial and error can save 10 minutes of reading the manual."
                  "It's easier to hit the developer with feature requests than to spend 10 minutes reading the manual. :-)))"
                  HISE Develop - Mac Pro 5.1, OS X 10.14.6, Projucer 6.02, Xcode 10.3

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

                    @MikeB here:

                    HiseSnippet 3271.3oc2as0baabEFTRnSD8kX63IsOzoyNZ5zRUqvPPQIRFOol5Zrh0EVSYG2llXCArjbi.wh.rTxLYxz7So+E5a8sleB8mPdou6+AsmcA.whaTvrIoIkiMGu6d1y46bYOmCVB20kZf87ntJkV9zINXkRWWs2Da1vcFpSrUNXWkR2QsqK1Cy11kdoG1840zT1dhitmG1ToToE+.NckVdIEwmW8fs0szsMvQSon7TJw.eHYDgEMa2NOhXYsutI9TxHIpaz4.Cp8NTK5X.SKpVSwQ23b8A3i04jsfpRoe1dlDF0sGSmg8TJsz1TyI8FRuz1m9mR7HmYg4CzT5ALxe58oVlbDymUYmgDKytg5tmhRI0tQVhE8sD2U8HhIY57QVjaIV.EsCY6QoEhCuEiAOMY3USBdY.oEjfzR9P51p8LbINrnU334ZpGXyvt80AytLT7oUYgEti5NTfBaV0Q5mi22EFLcGU1rVs0PaTq1p2ub428cQbJcoVdHFEcFF4oeA1DQrQNhffxfywigtP2E0yhXbN7kI1E89nPAL.y1gNxgZCCprhDMq.7OZyai0GyH8Gas8XFiZmKCRPGmIBTtKtOwF6gzsrPFgHV21DY.ybFDw3g5ScC.M5L+P2x1PLjGDOgQwBoQeYYD7IBc9qdHAFlGvhHgiI91ilopGmTAn1I.NUn1QqGrVv9RHadnhOohH1YXaSPXHNRNe1nIIUyFSPPfOw4ilojLEGSmIGDLc8BJ6SbXDX5B.g.JCQRVL6TByBW.VInKMi7WjmS5TJm3qHNIhvUxWKO47YhmSNW1xdx44aUO47HKZFxYGd9YqYJKeRjkm+L4KS+0yvSl0WNTmwVP5wniDUj2Bb9ta.EdgGguffuzg5Bmkmf5iYFCI1CDm96S.+n3fMOKEaHF8D3HcPzpIwEa.IimH3Kw1BRZf5O11fGejILBxEv+XQgjIAx+Xg.d+.+9CgLMVvIKAPh7vdgZQ5zAUVgvvi7VYMY9U8ynD6Jq7mgzZAa7qhLBIAaFIPpXD50VCbtViwoQuPp.tmRI2YGBlUq54XQX9H39Yp2oTYKptYPdCvvWQvnOVH7OQhE..8nV3pNtDdH0kXjtKFwbmv8ZPgENWP5gx3RBaH34Hd7PThNTc78VAcufUk3JDWb4PxPCDPoNZ+CNbOD8rOCbvn2AYSYbFRvPxcZezG16jiWC4QQFC0sGfA6.WrIHHjwSEPTz8S4ZjWEeHHT5s7NQHqJS8U2eVNqbxuNSWFoOpRvjwM5dIXVkhAgjIXmovSk8TH0vc5SdQk5zDPEUcilLqCdSCBiRi5GFyvujIG4FctapkapVIBWi34ZnAIc1qlfSwKfIHpRecKOb9z4GsYVIAE4muK5P+UaUikhsf9x7Qd9ndVHIsQSRrtX1XW6DNyX8.9dxcMx8g9Xa00hukjc88dI6WL1ViLjgIQKmNGDyk2qaF9bQGkYopoRFXpyz4p6xYkhCeA3JFCEjlffrcWBOaieRNQZsv1PGyfxUtPoXfDn+USDEl4xg5LOdKpmisqVsJDOixTD9Zf.DbRl5GkLnSc1bppJshjeOokL9dRr5zxReU4Y.FQG4vijbAHJuoFP+Nv4FAQoZPagCi7+Yf0fW3FnwkNRT0VTG2ahGTPIUe5AmlChrxHlLdxw.5RFWxy.zSH.d3S.wRSF02fW7xwKmThoq6yCKVVNuEunqDu4da9PuJoP6ZnU9cU82Dzd.yUjmMNyB693i+D9JbyZEg4Z5ik4sJL+xxsV3L1anfnpLZOF3yFTQaUAiWF9afEQZCvJv4lTZZhx8QavWiSbH3gXnJ+UTrm+.ZXSoB7Btc+zLC3iMFaJBNBCYDlr0DAShCVve3Ge3g.dAtYNuuGZ5w8315pDucCaIz+rengFbRNA0ZjJ7bOzJgtlj9Dt830vGGxeIObB8cqjJ0k3eK7fECnLHoPnFEI6Ot1m.ZivqDnHwbpAjjiacFkEmlkKKsMsAkmQkeyEI3irkS.tH1T8RWnqwfloDRKGPFws8dITxzKUzWfBOefZpwKOSTpdtDxLsv3DFvkuRph8wTPIsqrZYXWP5STxk52Oy0BJ4XwYcFKyurL2YswJ1iGcF+LheSAgDpTZo3WKkZ9WKk7slY3+HhRDRsOvl.8Hhsy6tzTBdtR9UXEfJfTl3BrtYvEX4WVRgXpT5FpREpTDvN55.6zQIOV3WgRvhaqlntUR17pGn7jC1Eh0.LUJ.d.jcvtLB2ZTZW7EDCr+krsr5tXuyYTGA9C5xRoTYeweivqfS2FaIj9aF+BRUd4T49MtclHeQnWRLYCkWcHlLXXzsh14uz4rAg28YYUsMa1rYcsMT384lwz7G9Jb5qqVuVsFZs1ncSMoEpKVQqcyVZaTu8lfeWRiVNtFcn9YAZzaGnQnvKHSbKHRJlRaIEC8kchqXcnIULki53.EErYRROoYiqj76VMtnU5CdqdjuH1UDqj1sjQTwcTS9PXxZvARZv27Qc7k9MDaAEPMw6H5HPH5tS7i0iqlJ+wN77nGD7f4g2V8UnlIsL+9XZyx4pMWWMpicI83EFxgXOKRO3WJU.0ofcZLLGJhLrulOruS.rwlOM35ZBfdzC9jmK3EuHQPzekjDleq67.ywdXgbENvnSWWWsQ8VMZtY60aUSbdAxBzANbPs5wF2uesZZkkFTurnu8mCxnrEkBZnGq7QDCWL8QT2Ak4iqoEyjb87RW7VpodT67LJJ2MgQQIkQoySJ1IK4eQkHq.ejbVjqoB4IZrdiVsqGOIh7BWDVpnzhkVpHoStsZh6SURe+5sikhLg9hdQpX0Fo02rrn9mCto74fGnfgRf5S+wWlg2JB6g+5WQW8PdoAgAwA+2dVJv2tXfWNLExZWei5atYs1ISq2ntVq0aUuQiZIpDrd8lZarQSs50xH64ZcBMMxw2JEKk5an5e8Nx1f+jrM3vD1fu9OLu1.eTtjJHrzm5SkYtXv2OGp+8njqa76ZU3MTCD37oFoSfTVM72nSVGTTdca0HY6CZ0a2tlViTwYvJ0ZuQsV0WOQlij4UJsnbRnB1vWdo91MYpuOMoJ70cS6FjrMxGhzZrNj4Z80qWO8gn500Z1rUyFwTGQ4gVsZ2tcilJNgM2dfIWg1x0AOX.QG5lViW+AxLvvh0dS0iGOpGC6DnaizeobqriHllV3tTOBO9HZkZc736I1wTniUI05FuFs9JIxikMne5UaPezqiAsYiVfAMqrRbi1FsajHqjVy50gMAkPBNXbmHniBvdgsz+L0GB8nonTjxO2ZpJjtO1FRVnW8EyUerRVHe85WJIOp3dVQGXG1KVlsyl9cO3Fx5t3G4Og0H1qbvhE9UNPaluxARO41aUfG65lp9nH6m4JfcWAOtg5iEsp75xBo7IIO0U7GgThIWSkyAAVlOTbKAC5cNIGXHNPeklCfKPWyOBOw6+FKBnLNXr4iromkjA+lzViaEv.Hl9L51zWF9vS3OeLFJbMc5hqPwR1ehACNB7X9Owv7oMKCOTFzkhEd9hvtl5d17l9NkfmkJrT7GgwW9c0MNWvj6BliQjSgi7RKjfa2sC+1rTJ82T0p2pZ7OG2E9Z8paAeu6tvWOiO9gawGuGe7S6V8+ceTJtU3oXKpAgMIeqPmDVg9WrMnka+HPKena2ziqJF27Cgw1eNe86wG2lu95i+gbbgsB2Q8Pr8.1v7sAu5ejvFbNWFOkqiOi18GwiUJVxgaqtyPcanezdXKwkoWfbCYxnet5IiYNiYeGwtaqdT28fpftgLLUFiBl86M4LZOaybXSsBcqjA8njVWR+d8cK0inl7eh33ulg72sxfE3MLJWym+96YCMRNQlyem8tGVTHda0tDlwvrw3BYfQ9cB+8.Fm10zd86CQPQ.bI08e12Oudlxh+l9hGJ6RfBD7WeVgveawXzGw6.7Cv1X2zstE+sm8eVz2dVmB+1y5W88TWcaOGpWLFGVQySdxm3g22E+4Ol6MkmeGptalK8pGrOnjYtmd5rwthvhsFQGaGh+W72+U+qGjrm0kJVOqWwaw6R+n6s38m.G1KUpap2BbHqHYjiEdO6KfJ9vL9uI36h6qO1hENa7X4in1TmgTahgbPviwLWxfAXWYrmoBsEiwqkJ0O0ig5A5xAs+5NGBAa5tfcBOm1BshaKlk+5Wn5CWD+.H5mtIoW7+uSR+X5XFwdvQ5PPH7X+hmTDxMBOUiekc9uDZoE3427GWiO1O4nsoXv+F9DrnFebofE0BW7GDYLR2vk97v2zcvA8FhY.81V7+KhkUOhOFoE1tgpZsp0TFAY3dtgA2D+NPByr2S84XOqOG6owbrmMli8r4brmlywdZMy8vKtr0XFcj+QNXht6I9EnKUx+4QEQ5J+G.obBkgB
                    

                    Theres a ton of debugging statements in there to show you how to find out what went wrong for your self - maybe try and follow this approach -

                    This fixes one and one only of your callbacks so it works - you will need to go through all the others working out what gets sent in and what comes out...

                    HISE Development for hire.
                    www.channelrobot.com

                    1 Reply Last reply Reply Quote 0
                    • MikeBM
                      MikeB @d.healey
                      last edited by

                      @d-healey

                      There is a preset file with the following content!

                      Bildschirmfoto 2022-11-13 um 15.51.53.png

                      "One hour of trial and error can save 10 minutes of reading the manual."
                      "It's easier to hit the developer with feature requests than to spend 10 minutes reading the manual. :-)))"
                      HISE Develop - Mac Pro 5.1, OS X 10.14.6, Projucer 6.02, Xcode 10.3

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

                        @d-healey said in inline function:

                        @MikeB That error implies that presetFile is not what you think it is.

                        Use if (presetFile.length > 0) before trying to load it to make sure a preset file has actually been found. Also if you only want a single file and you know the name of the file why not use .getChildFile() instead of findFiles?

                        it isnt because you cant say this apparently:

                        local presetFile = FileSystem.findFiles(getPresetFolder(),presetName + ".preset", true);
                        

                        instead you have to say this:

                        local tempName = presetName + ".preset";
                        local presetFile = FileSystem.findFiles(getPresetFolder(), tempName, true);
                        

                        HISE Development for hire.
                        www.channelrobot.com

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

                          I just tried loading the snippet Lindon posted and it seems to work just fine on my system.

                          You need to add more checking statements to validate that the data you are expecting at each stage is actually returned. Currently the script has no checks and just assumes that all data will be there and will be correct.

                          Peek 2022-11-13 15-05.gif

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

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

                            @Lindon Working here with local presetFile = FileSystem.findFiles(getPresetFolder(),presetName + ".preset", true);

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

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

                              @d-healey -yeah well that was essentially the line I changed to get a file back - then passed the file back into his function and loadAsObject() there... and as you say it now works.

                              @MikeB - what David and I are both saying is in order to proceed and improve you will need to learn how to debug your own work - theres plenty of examples in the snippet I posted above to get you on the right track.

                              AND: you need to type check/safety check your calls - make sure you are getting back the object type and values you think you are... As you will see that roughly all I am doing in the snippet I posted : checking what has arrived and what is in variables at each step along the way...until I track down what the problem is.

                              HISE Development for hire.
                              www.channelrobot.com

                              MikeBM 1 Reply Last reply Reply Quote 0
                              • MikeBM
                                MikeB @Lindon
                                last edited by

                                @Lindon @d-healey

                                Thanks a lot guys,

                                I've got to call it a day. HISE keeps crashing.

                                giphy.gif

                                I will work on it intensively over the next few days.
                                Have a nice Sunday evening
                                (I think it's already Monday for Lindon)

                                "One hour of trial and error can save 10 minutes of reading the manual."
                                "It's easier to hit the developer with feature requests than to spend 10 minutes reading the manual. :-)))"
                                HISE Develop - Mac Pro 5.1, OS X 10.14.6, Projucer 6.02, Xcode 10.3

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

                                  @MikeB its actually late afternoon for Dave and me (we are in the same time zone..) - keep plugging away at it.

                                  HISE Development for hire.
                                  www.channelrobot.com

                                  MikeBM 1 Reply Last reply Reply Quote 0
                                  • MikeBM
                                    MikeB @Lindon
                                    last edited by MikeB

                                    @Lindon
                                    Funny, somehow I sent you to Australia :-)
                                    But you are both in Great Britain.

                                    ...and it's tea time there and coffee and cake here in Germany.

                                    "One hour of trial and error can save 10 minutes of reading the manual."
                                    "It's easier to hit the developer with feature requests than to spend 10 minutes reading the manual. :-)))"
                                    HISE Develop - Mac Pro 5.1, OS X 10.14.6, Projucer 6.02, Xcode 10.3

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

                                      @MikeB said in inline function:

                                      @Lindon
                                      Funny, somehow I sent you to Australia :-)
                                      But you are both in Great Britain.

                                      ...and it's tea time there and coffee and cake here in Germany.

                                      Well I did live in Australia for 25 years...so maybe I seem Australian....

                                      HISE Development for hire.
                                      www.channelrobot.com

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

                                      13

                                      Online

                                      1.7k

                                      Users

                                      11.8k

                                      Topics

                                      102.8k

                                      Posts