"""
Classes from the 'PhotoFoundation' framework.
"""

try:
    from rubicon.objc import ObjCClass
except ValueError:

    def ObjCClass(name):
        return None


def _Class(name):
    try:
        return ObjCClass(name)
    except NameError:
        return None


PFEmbeddedMulticasterImplementation = _Class("PFEmbeddedMulticasterImplementation")
PFMulticasterDistributionMethods = _Class("PFMulticasterDistributionMethods")
PFChecksum = _Class("PFChecksum")
PFBlockControl = _Class("PFBlockControl")
PFLimitedConcurrencySlotQueue = _Class("PFLimitedConcurrencySlotQueue")
PFUtilities = _Class("PFUtilities")
PFPropertyListUtilities = _Class("PFPropertyListUtilities")
PFDispatchQueueExtensionManager = _Class("PFDispatchQueueExtensionManager")
PFStringUtilities = _Class("PFStringUtilities")
PFZlibDataCompression = _Class("PFZlibDataCompression")
PFZlibDataDecompressionOptions = _Class("PFZlibDataDecompressionOptions")
PFZlibDataCompressionOptions = _Class("PFZlibDataCompressionOptions")
PFCachePolicy = _Class("PFCachePolicy")
PFCacheApproximateLRUMaximumCountPolicy = _Class(
    "PFCacheApproximateLRUMaximumCountPolicy"
)
PFCacheLRUMaximumCountPolicy = _Class("PFCacheLRUMaximumCountPolicy")
PFCacheStatistics = _Class("PFCacheStatistics")
PFCacheEntry = _Class("PFCacheEntry")
PFCacheApproximateLRUCacheEntry = _Class("PFCacheApproximateLRUCacheEntry")
PFCache = _Class("PFCache")
PFISO6709Parser = _Class("PFISO6709Parser")
PFLoggerBackendAdapter = _Class("PFLoggerBackendAdapter")
PFLoggerBackendFile = _Class("PFLoggerBackendFile")
PFLoggerBackendOSLog = _Class("PFLoggerBackendOSLog")
PFLoggerBackendComposite = _Class("PFLoggerBackendComposite")
PFMulticaster = _Class("PFMulticaster")
PFAsyncDispatchMulticaster = _Class("PFAsyncDispatchMulticaster")
PFMainThreadAsyncDispatchMulticaster = _Class("PFMainThreadAsyncDispatchMulticaster")
PFDirectMessagingMulticaster = _Class("PFDirectMessagingMulticaster")
PFMainThreadDirectMessagingMulticaster = _Class(
    "PFMainThreadDirectMessagingMulticaster"
)
_PFPlaceholderMulticaster = _Class("_PFPlaceholderMulticaster")
_PFMulticasterMessageReceivers = _Class("_PFMulticasterMessageReceivers")
_PFMulticasterReceiverList = _Class("_PFMulticasterReceiverList")
PFCancelerObserver = _Class("PFCancelerObserver")
PFCanceler = _Class("PFCanceler")
PFLogger = _Class("PFLogger")
PFStateMachineTransition = _Class("PFStateMachineTransition")
PFStateMachineSubflowTransition = _Class("PFStateMachineSubflowTransition")
PFStateMachineReturnTransition = _Class("PFStateMachineReturnTransition")
PFStateMachineNode = _Class("PFStateMachineNode")
PFStateMachineGraph = _Class("PFStateMachineGraph")
PFStateMachine = _Class("PFStateMachine")
PFStateMachineCancelToken = _Class("PFStateMachineCancelToken")
PFBase64Codec = _Class("PFBase64Codec")
PFBase64MercuryCodec = _Class("PFBase64MercuryCodec")
PFDispatchQueueStatisticsBlockInfo = _Class("PFDispatchQueueStatisticsBlockInfo")
_PFDQDEBlockInfo = _Class("_PFDQDEBlockInfo")
_PFDQDECallSite = _Class("_PFDQDECallSite")
_PFDQRBEThreadStack = _Class("_PFDQRBEThreadStack")
PFWeakContainer = _Class("PFWeakContainer")
PFWeakHash = _Class("PFWeakHash")
_PFWeakContainerSentenal = _Class("_PFWeakContainerSentenal")
PFMutualExclusionAssertion = _Class("PFMutualExclusionAssertion")
PFAssertionPolicyUnitTest = _Class("PFAssertionPolicyUnitTest")
PFAssertionPolicyThrowAlways = _Class("PFAssertionPolicyThrowAlways")
PFAssertionPolicyThrow = _Class("PFAssertionPolicyThrow")
PFAssertionPolicyAbort = _Class("PFAssertionPolicyAbort")
PFAssertionPolicyDebuggerWarning = _Class("PFAssertionPolicyDebuggerWarning")
PFAssertionPolicyDebuggerFatal = _Class("PFAssertionPolicyDebuggerFatal")
PFAssertionPolicyAlert = _Class("PFAssertionPolicyAlert")
PFAssertionPolicyAlertRadar = _Class("PFAssertionPolicyAlertRadar")
PFAssertionPolicyCrashReport = _Class("PFAssertionPolicyCrashReport")
PFAssertionPolicyLog = _Class("PFAssertionPolicyLog")
PFAssertionPolicyComposite = _Class("PFAssertionPolicyComposite")
PFAssertionPolicyUnique = _Class("PFAssertionPolicyUnique")
PFAssertionInfo = _Class("PFAssertionInfo")
PFFile = _Class("PFFile")
PFFileIStream = _Class("PFFileIStream")
PFFileIOStream = _Class("PFFileIOStream")
PFFolder = _Class("PFFolder")
PFDispatchQueue = _Class("PFDispatchQueue")
PFLimitedConcurrencyQueue = _Class("PFLimitedConcurrencyQueue")
PFDispatchQueueBaseClass = _Class("PFDispatchQueueBaseClass")
PFConcurrentQueueClass = _Class("PFConcurrentQueueClass")
PFLimitedConcurrencyQueueClass = _Class("PFLimitedConcurrencyQueueClass")
PFSerialQueueClass = _Class("PFSerialQueueClass")
PFConcurrentQueue = _Class("PFConcurrentQueue")
PFSerialQueue = _Class("PFSerialQueue")
PFExtendedDispatchQueue = _Class("PFExtendedDispatchQueue")
PFNotification = _Class("PFNotification")
PFTimeIntervalCoalescer = _Class("PFTimeIntervalCoalescer")
PFAsyncTaskBarrier = _Class("PFAsyncTaskBarrier")
PFBookmarkCoordinator = _Class("PFBookmarkCoordinator")
PFTimedPerfCheck = _Class("PFTimedPerfCheck")
_PFPriorityQueueExtensionBlockInfo = _Class("_PFPriorityQueueExtensionBlockInfo")
PFDispatchQueueExtension = _Class("PFDispatchQueueExtension")
PFDispatchQueueBlockOnDemandExtension = _Class("PFDispatchQueueBlockOnDemandExtension")
PFDispatchQueueStatisticsExtension = _Class("PFDispatchQueueStatisticsExtension")
PFDispatchQueueDebugExtension = _Class("PFDispatchQueueDebugExtension")
PFDispatchQueueRunBlockExtension = _Class("PFDispatchQueueRunBlockExtension")
PFDispatchQueueOSTransactionExtension = _Class("PFDispatchQueueOSTransactionExtension")
PFPriorityQueueExtension = _Class("PFPriorityQueueExtension")
PFQOSPriorityQueueExtension = _Class("PFQOSPriorityQueueExtension")
PFDispatchQueueClearingExtension = _Class("PFDispatchQueueClearingExtension")
PFQOSMeter = _Class("PFQOSMeter")
PFCoalescer = _Class("PFCoalescer")
PFCoalescerContext = _Class("PFCoalescerContext")
PFCoalescerActivityToken = _Class("PFCoalescerActivityToken")
PFTaggedPointer = _Class("PFTaggedPointer")
PFAssertionHandler = _Class("PFAssertionHandler")
PFDirectoryEnumerator = _Class("PFDirectoryEnumerator")
PFUuidData = _Class("PFUuidData")
