Forum
    • Categories
    • Register
    • Login

    Is there a way to peek inside sample objects?

    Scheduled Pinned Locked Moved Scripting
    5 Posts 3 Posters 372 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.
    • SimonS
      Simon
      last edited by Simon

      I've noticed trace() doesn't work on all objects. Is there a way to peek inside them without checking the source code? What's special about those objects?

      Concretely, I wanted to get the properties of some mapped samples using createSelection(). It would be nice to be able to just dump all the sample properties with trace(), but it prints empty.

      I know I can get properties with sample.get, but mostly was curious why trace() doesn't work and if there's maybe another way.

      HiseSnippet 1373.3ocyW81aaSDF+bS8zZXLwl1K3E7BSERjNlBIsooqfPKsMock0rZEWFHgfna1maNE66rt6bKgoI9JwGA9HsuAvyY6jXmE5RCaikWDkm+d+tm+dwVvcIRIWfLJe1nHBx3VlNiXpAGL.SYniaiLtsYWrTQDVor1eTDVJIdHCiRGoYXr1pnjOu5Q6iCvLWxTVHzy3TWxIzPpZJW6VOgFDbH1ibFMLm1MZcrKmc.OfGC3ojYMTD1cH9bxSwZ0VwD8Xrb.x39l01tIgryV9dd3s1xqYyl69vcaracresF3mWu4tM1rwNa9vc7QF2niGUwENJrhHQFqtO2ajy.9krzC3YTI84ADMQcjCbxorOjG3ouhZtnCFPC7rGGnjHjgo8zvVozv18L6R8nS3OM78IIBrlZQ9.nwJEgWoBvq9+F7lCjLxAoUSgzcLcbEzH0TIZ77QlGyfroOFxS4gRptnUNZEyC3fFLU0P7PxgBfXhEUZVq1Crfu13aKCoJoxRRBHtJJmY8cVIENUOmnRfWBUk0cvgQADQ802nJVlQTYiptBBbkcFack0+0p2e8MJCGsjGPpFInLUk0Oa.UZEv4CguoCIVjvH0HKphDJsV25qrTBMnlfgM.XMOOHUP8Vd+fY4b0mOOW8y09k43s8iUVWRrFx3WBl9kRKrqJFGDLxB+ModAh7b+2javLOsabAX.QKqHAOhHTThzxWvCAOm5r7dQGVqjE9pdHMHom.bseLKM7yYOkqHmxprQ4WTdsxurr0rh78mqLc1VvCRRKyQrtEUbUFVgEG9bh3AVWfChISTDJCKVaeiEq11Ms3Kmhb1wLp5zHRF8U2bhxpdge8CG2Fqv5liLd1SBz.u1jKfQSosJqY1lHGp3QvvoWqOB5f4dwAXUw1Z8vuLAP7nPujtegIopQ4GNdM50qck85KJDuioMU4NX9Xbk4fQHR8t.iYSH+XyN99P87T.tp4g+zxNNbwO9OK83uqoiBl4DRYmm0FkfgxliGP81XyVzBuYyVPB3XOG5umSs+p09wPLRTj6e1J4n1KjGyJbVYHuGIBlkBo4b1byV85cjfGGMqUu5QIEEmAS6FBgh7BNkQfXsJ+c7.AWJ8gqShuj4EYGKNWGqlxoG4BhPVj2SiCg7MiQB.iMMLzckRhN+Rc6hUB5ukW6jSo1Y3jbLrtOgt9LzaNC8VyP2XF5smgt4Lz6Lk1vrX82MWrQVcwQ1X3JlSy8oYUYfrTNEGWjS0Iw3Dbj6sI+H9BhOWDlS24r3+FuqdKxpKVy2aXZ7G9iSK7zo0FiQGpN60gcAzlBbzX7tvRBebbfZL2hiL5xY7nAbF0sXSATje94DQdrO2KzdJEzSNky8Z0C1+ik45p+hVmPYDrnXu90JVb8eF4byWepYJbszy4r9uj2duVlckqDKsPqDeqi2ke8360P2syVTZAmtP8Add9VlIi1szah++Bp83wJXC63sblvpPGX8uKI+BwUzKYSoqoo0.xgv7RH9a3Slv5i2dpEVerPj6XWA2srem7jWiRDldaRxK8Bf8xA4KokviLzPB13gjII0PXKEPmR.685w0uCvzXOP6S3OgLZLwio4HNg+LsiSQ8ioYD+g9tm93iwfd7+WAYri4Kr6c5224fy5e3omztSuW5DK2Caa+01bBQRw82tY+DV8ss62l35hqdI9BT63n.pKjdzIQzqgyixiyixiyiVNb17ZgSaLULGX99nBHD6J38cS+qX55falvAp.XIWj0L6pospiR96Y4KCBg2Bz20snqdMC2bYMbqk0vFKqgaurF1bYMbmk0vG9lMT+Ts8hU7vzEUHTW6NoM2FclzbWB8O78wakH
      
      David HealeyD SimonS 2 Replies Last reply Reply Quote 0
      • David HealeyD
        David Healey @Simon
        last edited by David Healey

        @Simon Script watch table

        361a69b9-d67e-4ec5-949f-7043c08a177d-image.png

        Trace is working here, but it only goes one level, each sample is an object. Actually I don't think that's the reason because when I manually create such a multi-level object trace still displays it.

        Free HISE Bootcamp Full Course for beginners.
        YouTube Channel - Public HISE tutorials
        My Patreon - HISE tutorials

        1 Reply Last reply Reply Quote 0
        • SimonS
          Simon @Simon
          last edited by Simon

          The script watch table only shows the path to the .wav sample though, not all the other attributes. Just had to expand it more lol.

          Did you try the snippet? trace() for me prints empty when called on a single sample object, not just when they're in an array.

          David HealeyD 1 Reply Last reply Reply Quote 0
          • David HealeyD
            David Healey @Simon
            last edited by

            @Simon Yeah I had a look at your snippet. What I notice is the Sample object seems to be a "real" object, in that the variable types it contains are reg variables, so it's something unique to the internal object that HISE is creating here.

            Free HISE Bootcamp Full Course for beginners.
            YouTube Channel - Public HISE tutorials
            My Patreon - HISE tutorials

            Christoph HartC 1 Reply Last reply Reply Quote 1
            • Christoph HartC
              Christoph Hart @David Healey
              last edited by

              Dave is right you can only trace generic JSON objects not the one that wrap around C++ things.

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

              37

              Online

              2.1k

              Users

              13.0k

              Topics

              113.0k

              Posts