Forum
    • Categories
    • Register
    • Login

    Expansions Folder File Ref

    Scheduled Pinned Locked Moved General Questions
    14 Posts 4 Posters 584 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.
    • David HealeyD
      David Healey @DanH
      last edited by

      @DanH You can use .getChildFile() to get any file or directory within another directory.

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

      DanHD 1 Reply Last reply Reply Quote 0
      • DanHD
        DanH @David Healey
        last edited by

        @d-healey so it would be

        var ad = FileSystem.getFolder(FileSystem.Expansions);
        
        var bd = ad.getChildFile("mynewexpansion");
        

        ?

        DHPlugins / DC Breaks | Artist / Producer / DJ / Developer
        https://dhplugins.com/ | https://dcbreaks.com/
        London, UK

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

          @DanH
          Yes that looks correct.

          Until today I didn't know FileSystem.Expansions was a valid constant :) The docs need to be updated.

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

          Matt_SFM 1 Reply Last reply Reply Quote 0
          • Matt_SFM
            Matt_SF @David Healey
            last edited by

            @d-healey it's not written in the docs but it is available as an option in the script editor's autocomplete menu (along with a few others IIRC)

            Develop branch
            Win10 & VS17 / Ventura & Xcode 14. 3

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

              @Matt_SF

              it's not written in the docs

              It is now :D

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

              DanHD 1 Reply Last reply Reply Quote 2
              • DanHD
                DanH @David Healey
                last edited by

                @d-healey I've been testing and I can't write a file to the Expansions folder in AppData so it looks like it's not suitable for my purpose here. I've ended up doing a rather long-winded way of getting to my folder in my expansion - is there not a better way?!

                const AD = FileSystem.getFolder(FileSystem.AppData);
                
                const EXP = AD.getChildFile("Expansions");
                
                const NE = EXP.getChildFile("New Expansion");
                
                const SAM = NE.getChildFile("Samples");
                
                const f = SAM.getChildFile("New File.txt");
                
                f.writeString("aaarrrggghhhh!!!");
                

                DHPlugins / DC Breaks | Artist / Producer / DJ / Developer
                https://dhplugins.com/ | https://dcbreaks.com/
                London, UK

                Christoph HartC 1 Reply Last reply Reply Quote 0
                • Christoph HartC
                  Christoph Hart @DanH
                  last edited by

                  @DanH What's wrong with expansion.getRootFolder().getChildFile("Samples/New File.txt"); ?

                  DanHD 1 Reply Last reply Reply Quote 0
                  • DanHD
                    DanH @Christoph Hart
                    last edited by DanH

                    @Christoph-Hart I guess because I won't be in an active expansion. I'm making an installer for an expansion and trying to write the link file into the correct folder (without using HR1 files).

                    But can I just go

                    const EXP = AD.getChildFile("Expansions/New Expansion/Samples");
                    

                    ?

                    DHPlugins / DC Breaks | Artist / Producer / DJ / Developer
                    https://dhplugins.com/ | https://dcbreaks.com/
                    London, UK

                    Christoph HartC 1 Reply Last reply Reply Quote 0
                    • Christoph HartC
                      Christoph Hart @DanH
                      last edited by

                      @DanH If the expansion doesn't exist, I would prefer your solution from above:

                      var ad = FileSystem.getFolder(FileSystem.Expansions);
                      
                      var bd = ad.getChildFile("mynewexpansion");
                      

                      The expansion folder might be redirected to somewhere else, so this might not work in every use case.

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

                        Also you can drop the samples of the expansion in the Sample folder and they will be loaded just fine, this keeps them all in one place.

                        DanHD 1 Reply Last reply Reply Quote 0
                        • DanHD
                          DanH @Christoph Hart
                          last edited by DanH

                          @Christoph-Hart said in Expansions Folder File Ref:

                          Also you can drop the samples of the expansion in the Sample folder and they will be loaded just fine, this keeps them all in one place.

                          Yep, but user feedback was very much that they want full control over where they are stored 😆

                          I created the expansion folder in the AppData/Expansions folder, but I couldn't write a file using

                          var ad = FileSystem.getFolder(FileSystem.Expansions);
                          
                          var bd = ad.getChildFile("mynewexpansion");
                          

                          DHPlugins / DC Breaks | Artist / Producer / DJ / Developer
                          https://dhplugins.com/ | https://dcbreaks.com/
                          London, UK

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

                            @DanH getChildFile() doesn't write files. You need to use createDirectory()

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

                            DanHD 1 Reply Last reply Reply Quote 0
                            • DanHD
                              DanH @David Healey
                              last edited by

                              @d-healey I know I meant I can't get to the right folder using that code

                              DHPlugins / DC Breaks | Artist / Producer / DJ / Developer
                              https://dhplugins.com/ | https://dcbreaks.com/
                              London, UK

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

                              32

                              Online

                              2.1k

                              Users

                              13.0k

                              Topics

                              113.0k

                              Posts