Class AUAudioUnitBusArray

  • All Implemented Interfaces:
    NSFastEnumeration, NSObject

    public class AUAudioUnitBusArray
    extends NSObject
    implements NSFastEnumeration
    AUAudioUnitBusArray Container for an audio unit's input or output busses. Hosts can observe a bus property across all busses by using KVO on this object, without having to observe it on each individual bus. (One could add listeners to individual busses, but that means one has to observe bus count changes and add/remove listeners in response. Also, NSArray's addObserver:toObjectsAtIndexes:forKeyPath:options:context: is problematic; it does not let the individual objects override the observation request, and so a bus which is proxying a bus in an extension process does not get the message.) Some audio units (e.g. mixers) support variable numbers of busses, via subclassing. When the bus count changes, a KVO notification is sent on "inputBusses" or "outputBusses," as appropriate. Subclassers should see also the AUAudioUnitBusImplementation category. The bus array is bridged to the v2 property kAudioUnitProperty_ElementCount.
    • Constructor Detail

      • AUAudioUnitBusArray

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

      • accessInstanceVariablesDirectly

        public static boolean accessInstanceVariablesDirectly()
      • allocWithZone

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

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

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

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

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

        public static org.moe.natj.objc.Class classForKeyedUnarchiver()
      • 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

        public static NSSet<java.lang.String> keyPathsForValuesAffectingValueForKey​(java.lang.String key)
      • new_objc

        public static java.lang.Object new_objc()
      • 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()
      • version_static

        public static long version_static()
      • addObserverToAllBussesForKeyPathOptionsContext

        public void addObserverToAllBussesForKeyPathOptionsContext​(NSObject observer,
                                                                   java.lang.String keyPath,
                                                                   long options,
                                                                   org.moe.natj.general.ptr.VoidPtr context)
        addObserverToAllBusses:forKeyPath:options:context: Add a KVO observer for a property on all busses in the array.
      • busType

        public long busType()
        Which bus array this is (input or output).
      • count

        public long count()
        [@property] count
      • countByEnumeratingWithStateObjectsCount

        public long countByEnumeratingWithStateObjectsCount​(org.moe.natj.general.ptr.VoidPtr state,
                                                            org.moe.natj.general.ptr.Ptr<org.moe.natj.objc.ObjCObject> buffer,
                                                            long len)
        Specified by:
        countByEnumeratingWithStateObjectsCount in interface NSFastEnumeration
      • initWithAudioUnitBusType

        public AUAudioUnitBusArray initWithAudioUnitBusType​(AUAudioUnit owner,
                                                            long busType)
        initWithAudioUnit:busType: Initializes an empty bus array.
      • initWithAudioUnitBusTypeBusses

        public AUAudioUnitBusArray initWithAudioUnitBusTypeBusses​(AUAudioUnit owner,
                                                                  long busType,
                                                                  NSArray<? extends AUAudioUnitBus> busArray)
        initWithAudioUnit:busType:busses: Initializes by making a copy of the supplied bus array.
      • isCountChangeable

        public boolean isCountChangeable()
        [@property] countChangeable Whether the array can have a variable number of busses. The base implementation returns false.
      • objectAtIndexedSubscript

        public AUAudioUnitBus objectAtIndexedSubscript​(long index)
        objectAtIndexedSubscript:
      • ownerAudioUnit

        public AUAudioUnit ownerAudioUnit()
        The audio unit that owns the bus.
      • removeObserverFromAllBussesForKeyPathContext

        public void removeObserverFromAllBussesForKeyPathContext​(NSObject observer,
                                                                 java.lang.String keyPath,
                                                                 org.moe.natj.general.ptr.VoidPtr context)
        removeObserverFromAllBusses:forKeyPath:context: Remove a KVO observer for a property on all busses in the array.
      • replaceBusses

        public void replaceBusses​(NSArray<? extends AUAudioUnitBus> busArray)
        Sets the bus array to be a copy of the supplied array. The base class issues KVO notifications.
      • setBusCountError

        public boolean setBusCountError​(long count,
                                        org.moe.natj.general.ptr.Ptr<NSError> outError)
        [@property] setBusCount:error: Change the number of busses in the array.