HISE Logo Forum
    • Categories
    • Register
    • Login

    Compiling Just an Empty Clone Container Fails

    Scheduled Pinned Locked Moved Bug Reports
    23 Posts 6 Posters 455 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
      Im using

      c808118776c8f41f5f718faa4f9af3ea5313ba72

      from 17th feb.

      Im also doing this form a completely fresh, new and empty project...

      HISE Development for hire.
      www.channelrobot.com

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

        @clevername27 said in Compiling Just an Empty Clone Container Fails:

        @d-healey Did I answer your question about which versions well enough? I didn't mean to sound flippant—just that I really have tried them all (including the version you mentioned).

        I was only asking Lindon because he said it worked for him.

        @Lindon said in Compiling Just an Empty Clone Container Fails:

        form a completely fresh, new and empty project...

        But you're using the snippet Bill posted?

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

        LindonL 1 Reply Last reply Reply Quote 1
        • HISEnbergH
          HISEnberg @clevername27
          last edited by

          @clevername27 I was curious about your issue here so I tinkered around with it, and I managed to get this to compile (based off of your example):

          HiseSnippet 1111.3oc6V0saaaCElzNLoIKccEn.a2MeY5PQfkiShC1EsINwqFaNwXJKn2EPSQGSDIRAIpj5Mr2s8HrGk8FrcnnrkTpbRlQ61tXx.Fh7bN57wuyebXjhwiiUQH7FmOMjivaRbmJ0S5NgJjn9GivqRNmGqQGMMjFGy8PXb8uyHCu9Jnzm+30GQ8oRFOeKD5Bkfw+AQfPmu6v278Be+dTO94hfBZ29M8YJYWkuJAvQcRSTHkcM8J9oTiZ0Hn2RimfveCo03QrVi2emNNG3bv9sOvwY2NiZ2rEya2C1Ym81wabqNz85.Fs5IdBsJxUS07XDdkiTdScmntUZcvEhXwHetYgCxE7rc6dJeOyQzrKp6Dgu2vYDTLBgICyoq5V55EjABOw78yosuHUPibKJRf3ZkgW8RvyoH7ZV.dU.IbAHshEROm3xhDg5bIF77Yj9RMOZLEhSEghUWD92HcUfBR81Azq48hfEyMXq8Z17UMf+d42NNQxzBkrgRdpRyOSt0K23W1X8M90MZbWQiGWoLiahT997nJEaRMhtOC2RlDLhG8pF2P8S3yUDN9k4Txh4zhgbl8TWPQkruTnOKjKWTh.Jipf29o9GS0TSfHaOPuPdjVXf.9X9MPYfMrrN4Xd70ZUHTH7AwLHaQ4k3S0kSgLEZYB.NnTbyDbjwB8zhEhezxqdrP74jgBMaR0XrVEXDXpOEXLqZ7ojSFOlyz4.bERu28oozqn6exL26J7MISlNnot+YY6zHcKm6oK5u+X6hF9n6hhqeeMAcVxlfq7etlfeLpmp8+0S+KWOU0nrOmLT4O0NhB7qA.eY5VgSTRAqgURiduyoxYZeMop4GEFYPdzX249ot7ABmx02phtN8.k8NBulA4eEILRDGzWxd6zQQBOHHyMiAQG56qtM+Tk4adTrI9iWizba3mUqtpfPQVlAjPXWxgviTx8OLPk.X.Sv0.f.2Y5bpv2nlaRLLMy6LYZyHSKFSb6Tv+vEk5QY.ELcHEZYA4el4gPvlGsMadPegHOmzM7h85ZKTYi+l0dhfQorVPfg0LWwCW2H2Rao.KkyViv7URNZwfLUbU3Xlol3YWyawVh8gfQgA31bRyJnhqlAOaR5GegQJi5itvbAjrTh6.9UMJ+TKBtjYRWPO.OW0Qn7GnHv2jztUm8On09sa2tZZDMjFAeD3FbYk1+8NTPJTwO.t17UvgafPloFg3.olCnueNW.EJZdnq3mmK0d6ySSBxhBkL8X9XZhutzdnE4qlk7EgzBVWk2f4vg9Bsq3JY9Ixp9c8WqR9aYopiTpqCnoU8K2MB+QUhVHuZ.UGIdOfKfsbg.MaVoc7rp5r0Mmk65B00oK9S3ISniYMNSnyLg+i3i.JKRcIy1o0PfOIcGHwPllQuNYfYcCGzMVxKeNV.bSgKYrxepOvvVKqg6rrF1dYMb2k0v8VVC2eYMryCan4hbGlnUA1gOHzfgmjlniwmHovTxzIun+Bk4oc+B
          
          

          I couldn't make any sense of the debug console but it seems to me that the clone container is looking for the number of clones to be specified or it will fail to compile. I also had to add some type of processing in the container or else it would fail. I've used the clone container successfully in the past.

          General rule of thumb I follow is make sure the NumClones is the first macro control (and the ranges match for each node it controls), and to precompile all of your processing in a separate scriptnode and load that into the clone container (less error prone, plus it keeps the network more organized).

          Screenshot 2025-02-21 at 8.54.35 AM.png

          clevername27C 1 Reply Last reply Reply Quote 1
          • clevername27C
            clevername27 @hujackus
            last edited by clevername27

            @hujackus As @d-healey mentioned, we may be looking at different issues. That said, here are some links to error messages and possibly-useful information I've received in and around this issue. (@d-healey suggested running the compile directly from inside Xcode, which indeed provided more verbosity in error reporting.)

            • Link 1

            • Link 2

            • Link 3

            • Link 4

            1 Reply Last reply Reply Quote 0
            • clevername27C
              clevername27 @HISEnberg
              last edited by clevername27

              @HISEnberg Interesting and thank you - especially about the parameter ordering. I eventually stopped making the number of clones dynamic, and I think my snippets are all such—but maybe if I don't change the number of active clones during execution, the dynamic process is still happening - in which case, maybe it makes sense to always set the number of clones, manually?

              I also don't think any of us have stopped to realise the moral and ethical implications of cloning, but I guess one thing at a time.

              1 Reply Last reply Reply Quote 0
              • clevername27C
                clevername27 @hujackus
                last edited by clevername27

                @hujackus I am feeling like a proper lazy slug looking at all the sleuthing you're doing. (I'm taking a look, now.)

                And…you may be on to something. I tried compiling my snippet with that function always returning TRUE, and it compiled. 🚀

                When you say struct, do you mean class? (Structs don't have methods, although I guess you could use a function pointer.)

                I'm assuming that the function is returning whether Clone nodes can be used in polyphonic networks. So, I changed the return value from FALSE to TRUE. Seems to work. Cheers for your detective work, @hujackus.

                Update: Didn't work for my original snippet.

                df454456-5612-42f3-a5b2-35e799c2e18b-image.png

                @d-healey If this works for others, do you want to submit this?

                d.healeyD hujackusH 2 Replies Last reply Reply Quote 0
                • clevername27C
                  clevername27 @hujackus
                  last edited by

                  This post is deleted!
                  1 Reply Last reply Reply Quote 0
                  • LindonL
                    Lindon @d.healey
                    last edited by Lindon

                    @d-healey said in Compiling Just an Empty Clone Container Fails:

                    @Lindon said in Compiling Just an Empty Clone Container Fails:

                    form a completely fresh, new and empty project...

                    But you're using the snippet Bill posted?

                    Yes

                    HISE Development for hire.
                    www.channelrobot.com

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

                      @clevername27 said in Compiling Just an Empty Clone Container Fails:

                      Structs don't have methods

                      They can in C++ and do in the HISE codebase.

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

                      clevername27C 1 Reply Last reply Reply Quote 1
                      • clevername27C
                        clevername27 @d.healey
                        last edited by

                        @d-healey You're absolutely right.

                        1 Reply Last reply Reply Quote 0
                        • hujackusH
                          hujackus @clevername27
                          last edited by hujackus

                          @clevername27 said in Compiling Just an Empty Clone Container Fails:

                          When you say struct, do you mean class?

                          Yeah clone_base is a struct. It has a few methods, but no member named ‘isPolyphonic’. I'm assuming there is a wrapper class somewhere trying to cast a clone_base into a class that has a isPolyphonic() function.

                          Setting the default return value of NodeBase::isPolyphonic() from false to true is an interesting lead. Looking for subclasses of NodeBase now to see how it relates to the clone_base struct.

                          Check out the music of Conway's Game of Life - https://www.youtube.com/@hujackus
                          ConwayMatrix - http://hujackus.altervista.org/conwaymatrix/

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

                          47

                          Online

                          1.7k

                          Users

                          11.7k

                          Topics

                          101.8k

                          Posts