Class AUParameterTree

  • All Implemented Interfaces:
    NSCoding, NSSecureCoding, NSObject

    public class AUParameterTree
    extends AUParameterGroup
    implements NSSecureCoding
    AUParameterTree The top level group node, representing all of an audio unit's parameters. An audio unit's parameters are organized into a tree containing groups and parameters. Groups may be nested. The tree is KVO-compliant. For example, if the tree contains a group named "LFO" , containing a parameter named rate, then "LFO.rate" refers to that parameter object, and "LFO.rate.value" refers to that parameter's value. An audio unit may choose to dynamically rearrange the tree. When doing so, it must issue a KVO notification on the audio unit's parameterTree property. The tree's elements are mostly immutable (except for values and implementor hooks); the only way to modify them is to publish a new tree. API-Since: 9.0
    • Constructor Detail

      • AUParameterTree

        protected AUParameterTree​(org.moe.natj.general.Pointer peer)
    • Method Detail

      • accessInstanceVariablesDirectly

        public static boolean accessInstanceVariablesDirectly()
      • allocWithZone

        public static AUParameterTree allocWithZone​(org.moe.natj.general.ptr.VoidPtr zone)
      • automaticallyNotifiesObserversForKey

        public static boolean automaticallyNotifiesObserversForKey​(@NotNull
                                                                   @NotNull java.lang.String key)
      • cancelPreviousPerformRequestsWithTarget

        public static void cancelPreviousPerformRequestsWithTarget​(@NotNull
                                                                   @NotNull java.lang.Object aTarget)
      • cancelPreviousPerformRequestsWithTargetSelectorObject

        public static void cancelPreviousPerformRequestsWithTargetSelectorObject​(@NotNull
                                                                                 @NotNull java.lang.Object aTarget,
                                                                                 @NotNull
                                                                                 @NotNull org.moe.natj.objc.SEL aSelector,
                                                                                 @Nullable
                                                                                 @Nullable java.lang.Object anArgument)
      • classFallbacksForKeyedArchiver

        @NotNull
        public static @NotNull NSArray<java.lang.String> classFallbacksForKeyedArchiver()
      • classForKeyedUnarchiver

        @NotNull
        public static @NotNull org.moe.natj.objc.Class classForKeyedUnarchiver()
      • createGroupFromTemplateIdentifierNameAddressOffset

        @NotNull
        public static @NotNull AUParameterGroup createGroupFromTemplateIdentifierNameAddressOffset​(@NotNull
                                                                                                   @NotNull AUParameterGroup templateGroup,
                                                                                                   @NotNull
                                                                                                   @NotNull java.lang.String identifier,
                                                                                                   @NotNull
                                                                                                   @NotNull java.lang.String name,
                                                                                                   long addressOffset)
        Initialize a group as a copied instance of a template group.
        Parameters:
        templateGroup - A group to be used as a template and largely copied.
        identifier - An identifier for the new group (non-localized, persistent).
        name - The new group's human-readable name (localized).
        addressOffset - The new group's parameters' addresses will be offset from those in the template by this value.
      • createGroupTemplate

        @NotNull
        public static @NotNull AUParameterGroup createGroupTemplate​(@NotNull
                                                                    @NotNull NSArray<? extends AUParameterNode> children)
        Create a template group which may be used as a prototype for further group instances. Template groups provide a way to construct multiple instances of identical parameter groups, sharing certain immutable state between the instances. Template groups may not appear in trees except at the root.
      • createGroupWithIdentifierNameChildren

        @NotNull
        public static @NotNull AUParameterGroup createGroupWithIdentifierNameChildren​(@NotNull
                                                                                      @NotNull java.lang.String identifier,
                                                                                      @NotNull
                                                                                      @NotNull java.lang.String name,
                                                                                      @NotNull
                                                                                      @NotNull NSArray<? extends AUParameterNode> children)
        Create an AUParameterGroup.
        Parameters:
        identifier - An identifier for the group (non-localized, persistent).
        name - The group's human-readable name (localized).
        children - The group's child nodes.
      • createParameterWithIdentifierNameAddressMinMaxUnitUnitNameFlagsValueStringsDependentParameters

        @NotNull
        public static @NotNull AUParameter createParameterWithIdentifierNameAddressMinMaxUnitUnitNameFlagsValueStringsDependentParameters​(@NotNull
                                                                                                                                          @NotNull java.lang.String identifier,
                                                                                                                                          @NotNull
                                                                                                                                          @NotNull java.lang.String name,
                                                                                                                                          long address,
                                                                                                                                          float min,
                                                                                                                                          float max,
                                                                                                                                          int unit,
                                                                                                                                          @Nullable
                                                                                                                                          @Nullable java.lang.String unitName,
                                                                                                                                          int flags,
                                                                                                                                          @Nullable
                                                                                                                                          @Nullable NSArray<java.lang.String> valueStrings,
                                                                                                                                          @Nullable
                                                                                                                                          @Nullable NSArray<? extends NSNumber> dependentParameters)
        Create an AUParameter. See AUParameter's properties for descriptions of the arguments.
      • createTreeWithChildren

        @NotNull
        public static @NotNull AUParameterTree createTreeWithChildren​(@NotNull
                                                                      @NotNull NSArray<? extends AUParameterNode> children)
        Create an AUParameterTree.
        Parameters:
        children - The tree's top-level child nodes.
      • debugDescription_static

        public static java.lang.String debugDescription_static()
      • description_static

        public static java.lang.String description_static()
      • hash_static

        public static long hash_static()
      • instanceMethodSignatureForSelector

        public static NSMethodSignature instanceMethodSignatureForSelector​(org.moe.natj.objc.SEL aSelector)
      • instancesRespondToSelector

        public static boolean instancesRespondToSelector​(org.moe.natj.objc.SEL aSelector)
      • isSubclassOfClass

        public static boolean isSubclassOfClass​(org.moe.natj.objc.Class aClass)
      • keyPathsForValuesAffectingValueForKey

        @NotNull
        public static @NotNull NSSet<java.lang.String> keyPathsForValuesAffectingValueForKey​(@NotNull
                                                                                             @NotNull java.lang.String key)
      • resolveClassMethod

        public static boolean resolveClassMethod​(org.moe.natj.objc.SEL sel)
      • resolveInstanceMethod

        public static boolean resolveInstanceMethod​(org.moe.natj.objc.SEL sel)
      • setVersion_static

        public static void setVersion_static​(long aVersion)
      • superclass_static

        public static org.moe.natj.objc.Class superclass_static()
      • supportsSecureCoding

        public static boolean supportsSecureCoding()
      • version_static

        public static long version_static()
      • parameterWithAddress

        @Nullable
        public @Nullable AUParameter parameterWithAddress​(long address)
        parameterWithAddress: Search a tree for a parameter with a specific address.
        Returns:
        The parameter corresponding to the supplied address, or nil if no such parameter exists.
      • parameterWithIDScopeElement

        @Nullable
        public @Nullable AUParameter parameterWithIDScopeElement​(int paramID,
                                                                 int scope,
                                                                 int element)
        parameterWithID:scope:element: Search a tree for a specific v2 audio unit parameter. V2 audio units publish parameters identified by a parameter ID, scope, and element. A host that knows that it is dealing with a v2 unit can locate parameters using this method, for example, for the Apple-supplied system audio units.
        Returns:
        The parameter corresponding to the supplied ID/scope/element, or nil if no such parameter exists, or if the audio unit is not a v2 unit.
      • _supportsSecureCoding

        public boolean _supportsSecureCoding()
        Description copied from interface: NSSecureCoding
        This property must return YES on all classes that allow secure coding. Subclasses of classes that adopt NSSecureCoding and override initWithCoder: must also override this method and return YES. The Secure Coding Guide should be consulted when writing methods that decode data.
        Specified by:
        _supportsSecureCoding in interface NSSecureCoding
        Overrides:
        _supportsSecureCoding in class AUParameterGroup
      • useStoredAccessor

        @Deprecated
        public static boolean useStoredAccessor()
        Deprecated.