This class is an interface that is used to create Quarks that distribute Faust-based plugins. It is not used directly, but should be inherited by a class in your Quark. After doing so, it will allow the users of your Quark to easily install, compile and uninstall all the faust plugins included in your Quark. All you have to do is inherit this class.
Here's how to do that in a subclass in your Quark. Change KometFaustPackage to whatever name you want:
When that's done, your users can install and compile or uninstall easily using your new subclass:
It is also possible to do this automatically, see below.
Set the folder containing the faust files in your Quark relative to the root of your Quark.
By default it is "faust", assuming that all Faust files are found in a folder at the root of your Quark called that.
Overwrite this in a subclass if your files are not in this folder.
Here's how to do that in your subclass. Change KometFaustPackage to whatever in your package.
Get the Quark that this class belongs to. Used in subclasses to locate the package it is distributed with.
Name of this quark. See above.
The folder to which the compiled SuperCollider plugins, classes and help files will be installed. Overwrite this in your subclass if you want something different.
Check if the output folder exists.
Make the output folder
Compile all Faust files in your package and install them.
Uninstall the Faust plugins associated with your package.
By calling this in the Class: *initClass method of your subclass, a StartUp action is added which when the class library has been compiled will check if the faust plugins associated with your package have already been installed, if not it will automatically install them.
Here's how to do that in your subclass. Change KometFaustPackage to whatever in your package.