Slimming down a script(for best efficiency)
-
@ten7kur This is how I would approach it:
HiseSnippet 1958.3oc6Z0saSbDEd23rzXWREk1K5MUZZTuvVklZyesRoHVxOPSIFrrSApPTX7tyZOhcmwZ2woIEEoJ0mBtiGgdauiGo9FzdlY206rK1NlPfBT6bimeNy467cNyLmyD2Jj6Phh3gFlk28fADCySa04.ln+F8wTlw1aZX9AVM29da01X8CFfihHtFllktgbPyxKZn972WccrOl4Px5xv3NbpCYGZ.Uj0aK6aR88uN1krKMPa1WzdaGNaCtOeH.jRV0MFfcdLtG4VX4zVvxv7Ta4RE7vNBrfDYXt35b2C5zm+qr34eGZDsqOQ1ngQGXgh695beWIhk8ZrQepuaqTCNxvvzpUl4WJ17+TqlTW5n9yngynF.kIgNeXtvzfWCc3Ue1gmoF7VLFderUGmP5.Q1HRr8gVayDjPOL3BzgU7bMVX2kr1fCyfIVM.+Xx0CgFijn5ktb8ygtT850Va4Jx+9luAI8unlb2g9jnkq.9lHAZObHpSv.4PIiftB59pfkU6QDa44QbDUWoCMXfOQsBOrSyV0Wo14VtBZJeNpUnwJ0dvZSeITXd8gBA.zBvsCwGVz0ELEZSYAPaavCFvYPCPgy.LmnjGM7Tn6lLd27XqYqGpn4qL40VMgUj9k7x0BOcwfwWIya9EnNXIiBxpHCJmsbEJymxHHugLUGHNKGYIW6PteUmzE9bfx8GRpsbkmDarTOT03tdRl0m8MvjuaepSeTThtoQnH0xSbylkzfnt6CFSNsuJk4R1+1dYpu1ZSPIcHBjnOA83X9srJhJg4VMhHtiDhUyG2dePkOPRaWSHBocGJF+DjcTSp3QKJvquhqYxAk0RsmCWtxgvW83gnpcQPzPNdnFpqTeINiMv99cgyEqNdeUpCO1kqBs.xQPY8Fq2NgiNZGMPx6RffuqsyNnto6wJqPLEbb0WCQQeegSFV0mv5I5CC8UekL9nbreqbx5ssGf.Bh6IccAxPCX5vw8tISQFakyDuOUwswDesQqn1pVHbvgGFRh.KxEreTfBUZyrnq4ARZdxdt3XgTlYs304vJkS7d5waiwWkmo02WJ2GeD9HXJS2E8J3INlz7KM4kDzOU9KYq03ouLRHl8z3nawEjaypVqxSpTtxgUPEGxyarikrbvASicXY5IgSSvprgAcIgolDLwXBMoezUth5D+ZpteRwCr1g3IjN+Q8eW7dDvOFbCBiDhgDIxSou3vfvMx3ywcfXaZu9u5J47mC80IZIcYhO2pxgPNI4S5wZxI8nmSlS70VZSjy1lQE2d.gMoTgLRtqCRJZwDO.LUgJknOJIkn36+MnPlOmxRdktgB35ooZLqx1HUVKSknSRtN9TWRnRtJVoazyo2G44U44yh7ksRhzKB6yXa7SauIVfkYDlvC.2LfDJnRZ2bSxdPp1w4GV1ZSRziE7AJhJ47BHG9ihp1ej998MrOHS42z9Woth9Yi11tOQFYom7dH1kxuQHe3fBj8rp+FZ523Wzz+u+imL5+CmE219R2MBj8.4W9C3KQBxfNzeK0Y7rm9z+5pA5U97kOO.qA8ur.ZMdzKf1evFtLJwQ4P6R7MBntt9jV7Hp7HF8RnlMKHKvICI1dZjn8irKXHJ94DxPrrjpdJFwKVDCTJk7xA4YL50WM5VCrZMzKjQVrBCV6CzMfWKEcMqv8isZQEN8GOdWXL3E1895FuIkvtrUbkTYfcQqqeuW+0qpCkklviIbZUgnPKRXiShWTXvL+hBlkdEeAg5iqD8S8V8KHLeu2+G2684wP4rVcDgDLbLeuj5+U3I4B+2n68ZER74X272.8b60GBbUX9d+SakptV.eHKmtRrg1jADrnY7cnICtjc61pq+KJ0eeUUfxtgPoD.MnOvsYDfyE513Fg7nHOvbTqUj9PsFF1SxUY8zlrGILJee2ZX.32YLhuLaXSYpi+TDQ5moNMwPd16qOakVpuKV4qWvJtciBsOeg1WnP6KVn8kJz9xEZ+sYsiIzl3AxnB4SrVHc9klsz4gE.R.f3qcT55zdiV73oqeJ5HZVAEMwRpDNRqq4m3NwSbKMav8HdV4xoXL9QW2hsGrSE5QhwyBon5gG5KR6M+M1M4L9f9bF0I+9BHNuWORnN1GqAAUdBaKy54SsaS7I3HhdZn6.YJfCyuc+khKZL6bwz7WelULbQxi5PuebSYo20to7jwMmkZpJj+Fop+rVE+WWLoKIelrl9MI93bD2cyWwzOa+BWidF6sgcRghVbebXQZuzIkst3LGaj8e44cgXY4wQ.k+tDfUgDu6.3yHKk+s.31lOTlHPZJSVPdUcfbIcH5YWsfLis310SemtNDlqpw+.eRFrQZpXxAajN3rRIejUblLHvBCEuk6+NskJGOjLk72m8cNoKEXaIeW89nlkHLYNkpx.8gDz80OgMBp1PBIHU2WxpkZLuZo4UKMuZo4UK8RUsz4mWsz7pk9+S0RS7RRzEtvmXeLpVx34yqVZd0RyqVZd0RyqV5+1pkdSfx2D5H.6DxenS7uEGIerjpGfIXpem4ksZJaix90+XUe05xeaCzG53Hux8qAu33k47GCYtvwPlKdLj4RGCYt7wPlu8XHy2MUYjEjbsgBdP7IrPGs1JN30bqQAukL9WTOlxqD
It might be subtle to grasp for the beginner, but it allows you to add as many modules/samplers as you need with almost no maintenance cost...
And the simplest solution if your code allows it:
HiseSnippet 1909.3oc6Zs0aSbDEd23roXCAUn7.OzJsEUUYqllZGtUoTDlbApKDvxldSUzzw6N1dD6NypYGGHEgD+M5a8mPesukeR8eP6YlcWuytw1rDBTRqMBjmyLm47cNmYNWFbaNyAGFx3Flke39AXCyyX0cepX3lCQDpQqsLLeOqcZ8Ca2wXi8CPggXWCSyR2QNoY4EMTe9qatAxCQcvojLL9NFwAeOhOQjRscy6R77tMxE+Phu1puRyVNL5lLO1H.HkrpaDfbdLZ.99H4xVvxvboscIBFuq.IvgFlKtAyc+tCYOgFs9uiDR54gkCZXzE1nHx2l44JQrjpwlCIdtsST3PCCSq1opeoH0+BV6PbIiomZFde0D1obnaOLWXVvqgN7pWb3YpAuEif24r55vIAhzYjX6zVsnBLuOBbA5vJZsFKzeQqMYvJnhU8QOFeaNLXLGUu50puh8UqWu15KWQ9mu3Kr6hEBBcfcaDE6EtbEv6DJr2CwSloM0Kz9F1+Tx1N.K1j4GvnvfpWp6Nsara5JaboZqrbE6o8oP6wkp8n0mwd.eT.eiQBAf0LH1OnK1C6H1PPmMlqOabNKj9RgWho8is6h7C7vRKoDTDFc4JDpGghs6OhpHXynY.sTrblWUmDYtBnXdiv0VtxyhDZeF2tJATt5qaSr+JcuzpdX5.wPf9m8Y0dVJFS+l1h+IxiVMDN1lHw9HuPbs0UK84QbD8u57jAqqRnt3m9f9ofsV1sTvAfC1pmC+UA6d1DZVmTM6dqFJMwJN1D440CBGTcxVknSsZlt6yD3GPqVqxypTtxyqXmep98m3bwaG3Yl3zx.V7YwXU5H+dXdhqAVnzNQ5GS29F2v9tTVuZJxOarwO5xl88v8Exaaio+8n8vf4w+NXJlifPKRKxsDBNo2HAt5gmFXtQhvWuR98WLDa2gLX3quPVaE6OOVJIaSzwiJOGhRkMLn0zCCpGk1I5Zk1BYzVTh3AAX5zBNZDeWDBStTrG.VpPEj7rwAIiBFXPfXgKYIuean.NfKSUZmhxWiD9RS3MUd65QbwbEuUj7tqJUoN++R+9UNnH7WVwOXxyK9KVH1O8XwmE+1W9xevAEG+xyU4AvG1z3aasERfjIohcDfyI.yEDoe2bK7dP1+nTVks1BG9XAK.NdLNpITVwKyW8zwx6Ea1b+Tge2lOg3JFlNamlCwxi150SvQtD1c3rQA47ZEU9MzjuwOqI+W7MGOx+zQxe4jD5xLsJweNqbo9jHwx78fcXe4WdD7kXDXYVGNImHcKysgo5MHoNpxKkTKFQf8mE00zI2iwgS.cI+Zlx4hn1ATqQg5zMWPSmNaQtKnYWWQ2uVsYn.GnI2e+29s+7l95EZ9IG3izX+Sx4IL9kC4I95l9L23CgNjdfI1m355gayBIx325pR.hCZgl5bXOQPRDnVfNcdqtDYpbaoZsq5LKrEPEqPgUsTmiT5qQgLPoW10TPWc6yml29nNRcLYerrjh9smsorURKC5lmyLs6DmOuzZ7N8kh8RxyI6LnPte8f0mbtfLA2xataHZoiNYbE4005ncG4vMBBsixbG4IqJSuGU4VEOgDd5MCJa3iBvdecayajFWKJbOmUahvY3jw6BS.uxzMugwa7y.rr0186CMZjB1Est8O7lumecnbpo7fLmQ0LOLByabb7pLAE9UYLK8Z9JL0mzybrz6zuBy76d+e7t2GEAEHDsfiQPFjAwOaiBOwcn7V8tWaN1igbylb6flaLBrU4JL4OZpD0s7YinYjUrNzAGfQhchx6GO4oZ1oipek7b8W2TcP4gbjyiAyf9DOfhAatPWG2jyBC6CpiZuxTTT6Q7ARaUJkN38v7vrzt+HevuSkO6nr3MYi5eaHV5mIN6fDbxS0WsRJ0eHR4qWvJZbibiWK23Kma7UxM9p4Fesbiud53HC5Nn.4oB4yTm6APNUwd.DXCT05pEJcCxfwadzx0ihN1LqfhFawEaDpQZdD2oFwsTwf6K4o4Kmfwnx41ltGbSEnHw34gxp6iF4IRnlMi8NLJKXHiRbxdu.NmOX.lqi8IpP2RHfqkoTtPyNXOLJDqWg68fJEP7rW2ekrEMJtsXV9qKZEAWaYnN6+ajorzIsLkGOt4zRSUG4uSh3mPKMSIIYS4qPtE1Ckwv88YaF6GadnznW7fVvMItnMyCwya1KcboqKV3yFRU5jyYYY3HvjeRBvpiDmb.76Kekf2AfaG1HYg.IkLYA0U0EpkzAqWc0BxJ1hFWO4+UjtXpqZveCehmrQRoXxIajLYQMIm0JpRFaPC4h2w8emwRUimsrj7+K66bR1JP2h+t5+PGyRXprlRUafdPA5d5QXCgtMjPBJ08UraoFy6VZd2Ry6VZd2RuRcKs17tkl2sz+e5VZpIIk+lMZdD5VxXd2Ry6VZd2Ry6VZd2R+K2szaCT91PF9HGNaWmne8fR6woTT.KAU8a0ur0Nxw1i+MCZYUe05xe1Djccbjob+bvKNYdV6HvykOB7bki.OW8Hvy0NB7b8i.Oe4L4Q1PxsFIX9QQXABs2N5vq41iO7Vx3e.WOD.yA
Note that you can still use control callbacks for the knobs instead of the property editor connections...
-
Don‘t call the getComponent method in the control callback, but store it in a variable. The rest is cosmetics.
-
@d-healey said in Slimming down a script(for best efficiency):
You don't need valGain or valPan, you can just refer to these attributes directly with SimpleGain_SMP0.Gain and SimpleGain_SMP0.Balance.
Doing this: the Slider is not responding correctly..
inline function onSMP0Control(component, value) { SMP_INDEX = 0;//Sampler //Get Volume value //valGain = (SimpleGain_SMP0.getAttribute(0)); SimpleGain_SMP0.Gain; Content.getComponent("SMP_Gain").setValue(SMP0.Gain); //Get Pan value //valPan = (SimpleGain_SMP0.getAttribute(3)); SimpleGain_SMP0.Balance; Content.getComponent("SMP_Pan").setValue(SMP0.Balance); }; Content.getComponent("SMP0").setControlCallback(onSMP0Control); //SMP 1 inline function onSMP1Control(component, value) { SMP_INDEX = 1;//Sampler //Get Volume value SimpleGain_SMP1.Gain; Content.getComponent("SMP_Gain").setValue(SMP1.Gain); //Get Pan value SimpleGain_SMP1.Balance; Content.getComponent("SMP_Pan").setValue(SMP1.Balance); }; Content.getComponent("SMP1").setControlCallback(onSMP1Control);
-
@ustk said in Slimming down a script(for best efficiency):
@ten7kur This is how I would approach it:
HiseSnippet 1958.3oc6Z0saSbDEd23rzXWREk1K5MUZZTuvVklZyesRoHVxOPSIFrrSApPTX7tyZOhcmwZ2woIEEoJ0mBtiGgdauiGo9FzdlY206rK1NlPfBT6bimeNy467cNyLmyD2Jj6Phh3gFlk28fADCySa04.ln+F8wTlw1aZX9AVM29da01X8CFfihHtFllktgbPyxKZn972WccrOl4Px5xv3NbpCYGZ.Uj0aK6aR88uN1krKMPa1WzdaGNaCtOeH.jRV0MFfcdLtG4VX4zVvxv7Ta4RE7vNBrfDYXt35b2C5zm+qr34eGZDsqOQ1ngQGXgh695beWIhk8ZrQepuaqTCNxvvzpUl4WJ17+TqlTW5n9yngynF.kIgNeXtvzfWCc3Ue1gmoF7VLFderUGmP5.Q1HRr8gVayDjPOL3BzgU7bMVX2kr1fCyfIVM.+Xx0CgFijn5ktb8ygtT850Va4Jx+9luAI8unlb2g9jnkq.9lHAZObHpSv.4PIiftB59pfkU6QDa44QbDUWoCMXfOQsBOrSyV0Wo14VtBZJeNpUnwJ0dvZSeITXd8gBA.zBvsCwGVz0ELEZSYAPaavCFvYPCPgy.LmnjGM7Tn6lLd27XqYqGpn4qL40VMgUj9k7x0BOcwfwWIya9EnNXIiBxpHCJmsbEJymxHHugLUGHNKGYIW6PteUmzE9bfx8GRpsbkmDarTOT03tdRl0m8MvjuaepSeTThtoQnH0xSbylkzfnt6CFSNsuJk4R1+1dYpu1ZSPIcHBjnOA83X9srJhJg4VMhHtiDhUyG2dePkOPRaWSHBocGJF+DjcTSp3QKJvquhqYxAk0RsmCWtxgvW83gnpcQPzPNdnFpqTeINiMv99cgyEqNdeUpCO1kqBs.xQPY8Fq2NgiNZGMPx6RffuqsyNnto6wJqPLEbb0WCQQeegSFV0mv5I5CC8UekL9nbreqbx5ssGf.Bh6IccAxPCX5vw8tISQFakyDuOUwswDesQqn1pVHbvgGFRh.KxEreTfBUZyrnq4ARZdxdt3XgTlYs304vJkS7d5waiwWkmo02WJ2GeD9HXJS2E8J3INlz7KM4kDzOU9KYq03ouLRHl8z3nawEjaypVqxSpTtxgUPEGxyarikrbvASicXY5IgSSvprgAcIgolDLwXBMoezUth5D+ZpteRwCr1g3IjN+Q8eW7dDvOFbCBiDhgDIxSou3vfvMx3ywcfXaZu9u5J47mC80IZIcYhO2pxgPNI4S5wZxI8nmSlS70VZSjy1lQE2d.gMoTgLRtqCRJZwDO.LUgJknOJIkn36+MnPlOmxRdktgB35ooZLqx1HUVKSknSRtN9TWRnRtJVoazyo2G44U44yh7ksRhzKB6yXa7SauIVfkYDlvC.2LfDJnRZ2bSxdPp1w4GV1ZSRziE7AJhJ47BHG9ihp1ej998MrOHS42z9Woth9Yi11tOQFYom7dH1kxuQHe3fBj8rp+FZ523Wzz+u+imL5+CmE219R2MBj8.4W9C3KQBxfNzeK0Y7rm9z+5pA5U97kOO.qA8ur.ZMdzKf1evFtLJwQ4P6R7MBntt9jV7Hp7HF8RnlMKHKvICI1dZjn8irKXHJ94DxPrrjpdJFwKVDCTJk7xA4YL50WM5VCrZMzKjQVrBCV6CzMfWKEcMqv8isZQEN8GOdWXL3E1895FuIkvtrUbkTYfcQqqeuW+0qpCkklviIbZUgnPKRXiShWTXvL+hBlkdEeAg5iqD8S8V8KHLeu2+G2684wP4rVcDgDLbLeuj5+U3I4B+2n68ZER74X272.8b60GBbUX9d+SakptV.eHKmtRrg1jADrnY7cnICtjc61pq+KJ0eeUUfxtgPoD.MnOvsYDfyE513Fg7nHOvbTqUj9PsFF1SxUY8zlrGILJee2ZX.32YLhuLaXSYpi+TDQ5moNMwPd16qOakVpuKV4qWvJtciBsOeg1WnP6KVn8kJz9xEZ+sYsiIzl3AxnB4SrVHc9klsz4gE.R.f3qcT55zdiV73oqeJ5HZVAEMwRpDNRqq4m3NwSbKMav8HdV4xoXL9QW2hsGrSE5QhwyBon5gG5KR6M+M1M4L9f9bF0I+9BHNuWORnN1GqAAUdBaKy54SsaS7I3HhdZn6.YJfCyuc+khKZL6bwz7WelULbQxi5PuebSYo20to7jwMmkZpJj+Fop+rVE+WWLoKIelrl9MI93bD2cyWwzOa+BWidF6sgcRghVbebXQZuzIkst3LGaj8e44cgXY4wQ.k+tDfUgDu6.3yHKk+s.31lOTlHPZJSVPdUcfbIcH5YWsfLis310SemtNDlqpw+.eRFrQZpXxAajN3rRIejUblLHvBCEuk6+NskJGOjLk72m8cNoKEXaIeW89nlkHLYNkpx.8gDz80OgMBp1PBIHU2WxpkZLuZo4UKMuZo4UK8RUsz4mWsz7pk9+S0RS7RRzEtvmXeLpVx34yqVZd0RyqVZd0RyqV5+1pkdSfx2D5H.6DxenS7uEGIerjpGfIXpem4ksZJaix90+XUe05xeaCzG53Hux8qAu33k47GCYtvwPlKdLj4RGCYt7wPlu8XHy2MUYjEjbsgBdP7IrPGs1JN30bqQAukL9WTOlxqD
It might be subtle to grasp for the beginner, but it allows you to add as many modules/samplers as you need with almost no maintenance cost...
And the simplest solution if your code allows it:
HiseSnippet 1909.3oc6Zs0aSbDEd23roXCAUn7.OzJsEUUYqllZGtUoTDlbApKDvxldSUzzw6N1dD6NypYGGHEgD+M5a8mPesukeR8eP6YlcWuytw1rDBTRqMBjmyLm47cNmYNWFbaNyAGFx3Flke39AXCyyX0cepX3lCQDpQqsLLeOqcZ8Ca2wXi8CPggXWCSyR2QNoY4EMTe9qatAxCQcvojLL9NFwAeOhOQjRscy6R77tMxE+Phu1puRyVNL5lLO1H.HkrpaDfbdLZ.99H4xVvxvboscIBFuq.IvgFlKtAyc+tCYOgFs9uiDR54gkCZXzE1nHx2l44JQrjpwlCIdtsST3PCCSq1opeoH0+BV6PbIiomZFde0D1obnaOLWXVvqgN7pWb3YpAuEif24r55vIAhzYjX6zVsnBLuOBbA5vJZsFKzeQqMYvJnhU8QOFeaNLXLGUu50puh8UqWu15KWQ9mu3Kr6hEBBcfcaDE6EtbEv6DJr2CwSloM0Kz9F1+Tx1N.K1j4GvnvfpWp6Nsara5JaboZqrbE6o8oP6wkp8n0mwd.eT.eiQBAf0LH1OnK1C6H1PPmMlqOabNKj9RgWho8is6h7C7vRKoDTDFc4JDpGghs6OhpHXynY.sTrblWUmDYtBnXdiv0VtxyhDZeF2tJATt5qaSr+JcuzpdX5.wPf9m8Y0dVJFS+l1h+IxiVMDN1lHw9HuPbs0UK84QbD8u57jAqqRnt3m9f9ofsV1sTvAfC1pmC+UA6d1DZVmTM6dqFJMwJN1D440CBGTcxVknSsZlt6yD3GPqVqxypTtxyqXmep98m3bwaG3Yl3zx.V7YwXU5H+dXdhqAVnzNQ5GS29F2v9tTVuZJxOarwO5xl88v8Exaaio+8n8vf4w+NXJlifPKRKxsDBNo2HAt5gmFXtQhvWuR98WLDa2gLX3quPVaE6OOVJIaSzwiJOGhRkMLn0zCCpGk1I5Zk1BYzVTh3AAX5zBNZDeWDBStTrG.VpPEj7rwAIiBFXPfXgKYIuean.NfKSUZmhxWiD9RS3MUd65QbwbEuUj7tqJUoN++R+9UNnH7WVwOXxyK9KVH1O8XwmE+1W9xevAEG+xyU4AvG1z3aasERfjIohcDfyI.yEDoe2bK7dP1+nTVks1BG9XAK.NdLNpITVwKyW8zwx6Ea1b+Tge2lOg3JFlNamlCwxi150SvQtD1c3rQA47ZEU9MzjuwOqI+W7MGOx+zQxe4jD5xLsJweNqbo9jHwx78fcXe4WdD7kXDXYVGNImHcKysgo5MHoNpxKkTKFQf8mE00zI2iwgS.cI+Zlx4hn1ATqQg5zMWPSmNaQtKnYWWQ2uVsYn.GnI2e+29s+7l95EZ9IG3izX+Sx4IL9kC4I95l9L23CgNjdfI1m355gayBIx325pR.hCZgl5bXOQPRDnVfNcdqtDYpbaoZsq5LKrEPEqPgUsTmiT5qQgLPoW10TPWc6yml29nNRcLYerrjh9smsorURKC5lmyLs6DmOuzZ7N8kh8RxyI6LnPte8f0mbtfLA2xataHZoiNYbE4005ncG4vMBBsixbG4IqJSuGU4VEOgDd5MCJa3iBvdecayajFWKJbOmUahvY3jw6BS.uxzMugwa7y.rr0186CMZjB1Est8O7lumecnbpo7fLmQ0LOLByabb7pLAE9UYLK8Z9JL0mzybrz6zuBy76d+e7t2GEAEHDsfiQPFjAwOaiBOwcn7V8tWaN1igbylb6flaLBrU4JL4OZpD0s7YinYjUrNzAGfQhchx6GO4oZ1oipek7b8W2TcP4gbjyiAyf9DOfhAatPWG2jyBC6CpiZuxTTT6Q7ARaUJkN38v7vrzt+HevuSkO6nr3MYi5eaHV5mIN6fDbxS0WsRJ0eHR4qWvJZbibiWK23Kma7UxM9p4Fesbiud53HC5Nn.4oB4yTm6APNUwd.DXCT05pEJcCxfwadzx0ihN1LqfhFawEaDpQZdD2oFwsTwf6K4o4Kmfwnx41ltGbSEnHw34gxp6iF4IRnlMi8NLJKXHiRbxdu.NmOX.lqi8IpP2RHfqkoTtPyNXOLJDqWg68fJEP7rW2ekrEMJtsXV9qKZEAWaYnN6+ajorzIsLkGOt4zRSUG4uSh3mPKMSIIYS4qPtE1Ckwv88YaF6GadnznW7fVvMItnMyCwya1KcboqKV3yFRU5jyYYY3HvjeRBvpiDmb.76Kekf2AfaG1HYg.IkLYA0U0EpkzAqWc0BxJ1hFWO4+UjtXpqZveCehmrQRoXxIajLYQMIm0JpRFaPC4h2w8emwRUimsrj7+K66bR1JP2h+t5+PGyRXprlRUafdPA5d5QXCgtMjPBJ08UraoFy6VZd2Ry6VZd2RuRcKs17tkl2sz+e5VZpIIk+lMZdD5VxXd2Ry6VZd2Ry6VZd2R+K2szaCT91PF9HGNaWmne8fR6woTT.KAU8a0ur0Nxw1i+MCZYUe05xe1Djccbjob+bvKNYdV6HvykOB7bki.OW8Hvy0NB7b8i.Oe4L4Q1PxsFIX9QQXABs2N5vq41iO7Vx3e.WOD.yA
Note that you can still use control callbacks for the knobs instead of the property editor connections...
I like your solution!! Need to sit for a moment and digest it. But Sampler1(on Button SMP1) is not displaying the correct values. Even though the code is the same?!?!
-
@Christoph-Hart said in Slimming down a script(for best efficiency):
Don‘t call the getComponent method in the control callback, but store it in a variable. The rest is cosmetics.
Was trying all sorts to get the value before.
Ok. Variable it is!
Thanks! -
@ten7kur And a lot easier than my first solution
After all, I removed the non-necessary for loops:HiseSnippet 1873.3oc6ZszbSbDDdWKu.VAmBHbHWRUSbwAop.iDlGoJJJV7CHNf.UR7JEEAFu6HooX0LplcjAGJph+FbK+Dx0bieR4dNjzyL6pcVYIYgwP3gru34QO8W+08Lc2xptfGPhi4BG2Et6N8HNtG0q4NLYm05foLmMW2w8vd017gazvY0c5giiIgNttEtgZQ2El2Q+yee0UwQXV.IaJGm6yoAjaQ6RkYyV2+lznnqiCI2k10Z2m2ey.NaMdDuO.jBdUb5gCdFtM41X01lyyw8PaDRkbQSIVRhcbmeUd3NM6veNyr+6SioaEQTCp5zDNHyzWmGEpPrZVm05PiBqmZvwNNtd0yL+BFy+jd0ngzAymQCGSu.JSBa9vctIAup1vqxzCOWK3MuAdG2qYff1SlshBaei2lLIQzBCt.aXY1qybO3vdqwgcvjK2E+Lx0EvfART5BWrxoQWnRkxWdwhpeO6YQJ+KpFOreDIdwhfuIVh1FKPM61SsTxJnqfdjNXY41D4FsZQBjkVpIsauHh9DdRyZ0qrT4SuXQzD9YuNgpKU9wWdxGgFyq1WJAfNDbaRhfCcUISi1TV.z1Z7t83LX.nvo.liUx8FdZzcSFeq7XqV8mno4qL9yVugkT9k7xUGOYwf0Wx3MAMuIKj7BDuER1gfh0zAIDEiUjrXwhpyjF9hA99eD0zrDxPcTNawhTVDkQPs5yzSf3rbTqBIBdTofTXbZ.pQ8IkWr3KMTCsEpjYpWlwUY+E.yGzgFzIEVHZ7.nlsK.lfYmSyKSUV2cZko5xWdLJnIQpofmY7DKni8R33kiIx6qfWo7Q3OBT4iUD70jRAcq9xQuA0DkUJdvgBdf2yyL4I0xo1yqVr3qf+rEWfJsEBhaxwCkQaozWhiXMbTzVvKnkFseJ8htwcqCBAxQRYsGomNgi1amrEIGvEBRLruP3TQc0FlYSixVimFBNUcWtngIr8civtyi5xVw2paO6g8BaYRlK58vTR7qCrlLiIIlYz1RFhLlhEfuMWRtCqT4hur3BEeUQzvK0p0HWK43faaibYUFZwjDrDqe2sHhTCA1n4hdx7nqbE8idk0S+xguIdKRKoxSLX9Gf2l.A2cuAgQDXHWZdpb2KCBWMKlXT2zaPa248WIm6znyjnkziwbgr3qfzx4y66M9791kkDXd41Zib1lLp7N8HrwUMfSxy8PcAym3AfsJ0UE7sIUEXRA5Pgj+GxSkUyQCb.Wt55rlV4plJWVEdiU1lQzPhPKaQuzac4jGsxJem+zH+BdIQ5Cqdm25buMWGKwphhR3Afa5QDRph1cWmrMTsooDoE7VmD+LIumlnRt7BkwtWT0KFnuWul+NYJ+l9OmFJ6jsZC+NDUjkc8qBbHkeCAueugHsoU+UszuyuYo+W+KGL5+alF2lEF7svvSeperjzqI82ScJ+wadyec0t1MAbp21EaI9oFB0NOcWn9m8g7BINr.5VjHmtzvvHRcdLU8Tic2DSmkjE.kgD+VVFh+tLDMOc.YHddJUOAiX20yCcUnRNndqwtUiAYMv5yvtldUc6L3r2w1.9fz+wzB2i6UmJC5LZ7N2HvKbK9CMdS5laQOSSEYfcduq+vO7stYCkiLl9pOptmLXDQT8fn45dScy0tE9PzL8g9jtY5Y289Z7t2OXfxI7ZJEDL7Le6jla03IIw+G06d0EjHNNLeFn25uZefqD4m8O80p5Zc48Y4zUhMzfzifk0L4PSV7H9MZnKCXXo96qpCTtq.Zo.nA6EtCi.btz1FWSviiaAli9rhsWpdeQaEWkMSCx1DQb94tc+tfemwHQpphcUkeduXhxOSCpgg5seg8t0ZoxcwZe8bdlwUGZ74FZ7JCM97CM9BCM9hCM9RYiMDZMbOUTg5Sabnx5O7zUVOb.PA.jHqctJs8fC2Licv6.ZVCEqWfm875XedsvzA283iScgTLZ9vF2fsMbsDlQgwS.0i1B2ORlNa9zy03LduNbFMH+k.HntcahvF6izff1Mg6fYybR+FjHBNlXWy4sfxBvh72sem3hpSOWLI+026YfKR8tF5KizhE9bKs3ASHeVcn5P9ajp9S3M7GY+3xH95UV4et55jHbNh6A4aO5W82UNyi4uIbSRHqyivhgo8BGTgzyO0wFY+2M9bHVV8bDP4eNAXcHwmO.9Xp91+D.tM38Uenzo0G4AEQ0DJbLfXWJ0bpxyLiqj9A60jvB0C9W3mjEqlV2kZwpoKNsTx25YJaAAVnP9It+6nd5B5Pp5u+R12EjdTfsk725OTT2BDlp.RcOeQP03Q1uvFCsVnfDTW66XqQUm0ZzrVil0ZzrViFeqQmaVqQyZM5qmViFaFQ8+iy8QqQNucVqQyZMZVqQyZMZVqQ++1ZzGCT9wPGcwAB9SBLeaaT7wQzy.LAS+kodAuZpwnAeGe77prbE02ZA5SBBTobOC3EGsLmaeHyJ6CYN+9PlKrOj4h6CYtz9PleZhxnZH4Z8k7tlWXgIpugI30ciAAuEb9O.h9mpl.
-
@ten7kur said in Slimming down a script(for best efficiency):
But Sampler1(on Button SMP1) is not displaying the correct values
Seems good here when I import the snippet...
-
@ustk said in Slimming down a script(for best efficiency):
HiseSnippet 1873.3oc6ZszbSbDDdWKu.VAmBHbHWRUSbwAop.iDlGoJJJV7CHNf.UR7JEEAFu6HooX0LplcjAGJph+FbK+Dx0bieR4dNjzyL6pcVYIYgwP3gru34QO8W+08Lc2xptfGPhi4BG2Et6N8HNtG0q4NLYm05foLmMW2w8vd017gazvY0c5giiIgNttEtgZQ2El2Q+yee0UwQXV.IaJGm6yoAjaQ6RkYyV2+lznnqiCI2k10Z2m2ey.NaMdDuO.jBdUb5gCdFtM41X01lyyw8PaDRkbQSIVRhcbmeUd3NM6veNyr+6SioaEQTCp5zDNHyzWmGEpPrZVm05PiBqmZvwNNtd0yL+BFy+jd0ngzAymQCGSu.JSBa9vctIAup1vqxzCOWK3MuAdG2qYff1SlshBaei2lLIQzBCt.aXY1qybO3vdqwgcvjK2E+Lx0EvfART5BWrxoQWnRkxWdwhpeO6YQJ+KpFOreDIdwhfuIVh1FKPM61SsTxJnqfdjNXY41D4FsZQBjkVpIsauHh9DdRyZ0qrT4SuXQzD9YuNgpKU9wWdxGgFyq1WJAfNDbaRhfCcUISi1TV.z1Z7t83LX.nvo.liUx8FdZzcSFeq7XqV8mno4qL9yVugkT9k7xUGOYwf0Wx3MAMuIKj7BDuER1gfh0zAIDEiUjrXwhpyjF9hA99eD0zrDxPcTNawhTVDkQPs5yzSf3rbTqBIBdTofTXbZ.pQ8IkWr3KMTCsEpjYpWlwUY+E.yGzgFzIEVHZ7.nlsK.lfYmSyKSUV2cZko5xWdLJnIQpofmY7DKni8R33kiIx6qfWo7Q3OBT4iUD70jRAcq9xQuA0DkUJdvgBdf2yyL4I0xo1yqVr3qf+rEWfJsEBhaxwCkQaozWhiXMbTzVvKnkFseJ8htwcqCBAxQRYsGomNgi1amrEIGvEBRLruP3TQc0FlYSixVimFBNUcWtngIr8civtyi5xVw2paO6g8BaYRlK58vTR7qCrlLiIIlYz1RFhLlhEfuMWRtCqT4hur3BEeUQzvK0p0HWK43faaibYUFZwjDrDqe2sHhTCA1n4hdx7nqbE8idk0S+xguIdKRKoxSLX9Gf2l.A2cuAgQDXHWZdpb2KCBWMKlXT2zaPa248WIm6znyjnkziwbgr3qfzx4y66M9791kkDXd41Zib1lLp7N8HrwUMfSxy8PcAym3AfsJ0UE7sIUEXRA5Pgj+GxSkUyQCb.Wt55rlV4plJWVEdiU1lQzPhPKaQuzac4jGsxJem+zH+BdIQ5Cqdm25buMWGKwphhR3Afa5QDRph1cWmrMTsooDoE7VmD+LIumlnRt7BkwtWT0KFnuWul+NYJ+l9OmFJ6jsZC+NDUjkc8qBbHkeCAueugHsoU+UszuyuYo+W+KGL5+alF2lEF7svvSeperjzqI82ScJ+wadyec0t1MAbp21EaI9oFB0NOcWn9m8g7BINr.5VjHmtzvvHRcdLU8Tic2DSmkjE.kgD+VVFh+tLDMOc.YHddJUOAiX20yCcUnRNndqwtUiAYMv5yvtldUc6L3r2w1.9fz+wzB2i6UmJC5LZ7N2HvKbK9CMdS5laQOSSEYfcduq+vO7stYCkiLl9pOptmLXDQT8fn45dScy0tE9PzL8g9jtY5Y289Z7t2OXfxI7ZJEDL7Le6jla03IIw+G06d0EjHNNLeFn25uZefqD4m8O80p5Zc48Y4zUhMzfzifk0L4PSV7H9MZnKCXXo96qpCTtq.Zo.nA6EtCi.btz1FWSviiaAli9rhsWpdeQaEWkMSCx1DQb94tc+tfemwHQpphcUkeduXhxOSCpgg5seg8t0ZoxcwZe8bdlwUGZ74FZ7JCM97CM9BCM9hCM9RYiMDZMbOUTg5Sabnx5O7zUVOb.PA.jHqctJs8fC2Licv6.ZVCEqWfm875XedsvzA283iScgTLZ9vF2fsMbsDlQgwS.0i1B2ORlNa9zy03LduNbFMH+k.HntcahvF6izff1Mg6fYybR+FjHBNlXWy4sfxBvh72sem3hpSOWLI+026YfKR8tF5KizhE9bKs3ASHeVcn5P9ajp9S3M7GY+3xH95UV4et55jHbNh6A4aO5W82UNyi4uIbSRHqyivhgo8BGTgzyO0wFY+2M9bHVV8bDP4eNAXcHwmO.9Xp91+D.tM38Uenzo0G4AEQ0DJbLfXWJ0bpxyLiqj9A60jvB0C9W3mjEqlV2kZwpoKNsTx25YJaAAVnP9It+6nd5B5Pp5u+R12EjdTfsk725OTT2BDlp.RcOeQP03Q1uvFCsVnfDTW66XqQUm0ZzrVil0ZzrViFeqQmaVqQyZM5qmViFaFQ8+iy8QqQNucVqQyZMZVqQyZMZVqQ++1ZzGCT9wPGcwAB9SBLeaaT7wQzy.LAS+kodAuZpwnAeGe77prbE02ZA5SBBTobOC3EGsLmaeHyJ6CYN+9PlKrOj4h6CYtz9PleZhxnZH4Z8k7tlWXgIpugI30ciAAuEb9O.h9mpl.
Just checked. Yea! All working!! yhhh..
Many Many thanks @ustk ! Need to sit and study this. Im grinning!:))))))
Thanks all for the inputs!! -
for (b in SmpSelectBtns) b.setControlCallback(onSmpSelectBtnsControl);
ughhh!
I understand that "b" is "SmpSelectBtns" array But ive never seen a ControlCallback like this!!
My digestions struggling at this moment -
@ten7kur That isn't the control callback, that's assigning the function called
onSmpSelectBtnsControl
as a callback function to each buttonb
. -
@d-healey said in Slimming down a script(for best efficiency):
t's assigning the function c
mhm i see. Its a FOR statment/loop after the function.
Never seen it like this.
Though im getting the Logic, the code is still Extra Wings for me. Will digest hopefully -
@ten7kur Did you see my HISE Scripting 101 video?
-
@d-healey said in Slimming down a script(for best efficiency):
@ten7kur Did you see my HISE Scripting 101 video?
I did, though its been some time. Will view it again.