Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qcore_mac_p.h File Reference

(194565a371aca8c69a3cd0fd03b7fb2fcfcf5db3)

#include "private/qglobal_p.h"
#include <QtCore/qoperatingsystemversion.h>
#include <optional>
#include <CoreFoundation/CoreFoundation.h>
#include "qstring.h"
#include "qpair.h"
#include <os/log.h>
#include <os/activity.h>
Include dependency graph for qcore_mac_p.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  QAppleRefCounted< T, U, RetainFunction, ReleaseFunction >
class  QMacAutoReleasePool
class  QCFType< T >
class  QCFString
class  QObjCWeakPointerBase
class  QObjCWeakPointer< T >
class  AppleUnifiedLogger
class  QAppleLogActivity
class  QMacNotificationObserver
class  QMacKeyValueObserver
class  QMacVersion

Macros

#define __IMAGECAPTURE__
#define QT_NAMESPACE_ALIAS_OBJC_CLASS(__KLASS__)
#define QT_MAC_WEAK_IMPORT(symbol)
#define QT_DECLARE_NAMESPACED_OBJC_INTERFACE(classname, definition)
#define QT_FORWARD_DECLARE_OBJC_ENUM(name, type)
#define QtExtras   QT_MANGLE_NAMESPACE(QtExtras)
#define QT_USE_APPLE_UNIFIED_LOGGING
#define QT_APPLE_LOG_ACTIVITY_CREATE(condition, description, parent)
#define QT_APPLE_LOG_ACTIVITY_WITH_PARENT_3(condition, description, parent)
#define QT_APPLE_LOG_ACTIVITY_WITH_PARENT_2(description, parent)
#define QT_APPLE_LOG_ACTIVITY_WITH_PARENT(...)
#define QT_APPLE_LOG_ACTIVITY_2(condition, description)
#define QT_APPLE_LOG_ACTIVITY_1(description)
#define QT_APPLE_LOG_ACTIVITY(...)
#define QT_APPLE_SCOPED_LOG_ACTIVITY(...)

Typedefs

using AppleApplication = UIApplication
template<typename T>
using QAppleOsType = QAppleRefCounted<T, void *, os_retain, os_release>

Functions

 Q_FORWARD_DECLARE_OBJC_CLASS (NSObject)
 Q_FORWARD_DECLARE_OBJC_CLASS (NSString)
 Q_FORWARD_DECLARE_OBJC_CLASS (UTType)
Q_CORE_EXPORT QDebug operator<< (QDebug debug, const QMacAutoReleasePool *pool)
Q_CORE_EXPORT QDebug operator<< (QDebug debug, const QCFString &string)
Q_CORE_EXPORT QDebug operator<< (QDebug, CGPoint)
Q_CORE_EXPORT QDebug operator<< (QDebug, CGSize)
Q_CORE_EXPORT QDebug operator<< (QDebug, CGRect)
Q_CORE_EXPORT QDebug operator<< (QDebug, UIEdgeInsets)
Q_CORE_EXPORT bool qt_apple_isApplicationExtension ()
Q_CORE_EXPORT bool qt_apple_runningWithLiquidGlass ()
Q_CORE_EXPORT std::optional< UTType * > qt_apple_bundleType (const QString &path)
Q_CORE_EXPORT bool qt_apple_isSandboxed ()
QT_END_NAMESPACE Q_FORWARD_DECLARE_OBJC_CLASS (UIApplication)
QT_BEGIN_NAMESPACE Q_CORE_EXPORT AppleApplicationqt_apple_sharedApplication ()
 QT_MAC_WEAK_IMPORT (_os_activity_current)

Macro Definition Documentation

◆ __IMAGECAPTURE__

#define __IMAGECAPTURE__

Definition at line 37 of file qcore_mac_p.h.

◆ QT_APPLE_LOG_ACTIVITY

#define QT_APPLE_LOG_ACTIVITY ( ...)
Value:
#define QT_APPLE_LOG_ACTIVITY(...)
#define QT_OVERLOADED_MACRO(MACRO,...)
Definition qoverload.h:77

Definition at line 372 of file qcore_mac_p.h.

◆ QT_APPLE_LOG_ACTIVITY_1

#define QT_APPLE_LOG_ACTIVITY_1 ( description)
Value:
QT_APPLE_LOG_ACTIVITY_2(true, description)
#define QT_APPLE_LOG_ACTIVITY_2(condition, description)

Definition at line 371 of file qcore_mac_p.h.

◆ QT_APPLE_LOG_ACTIVITY_2

#define QT_APPLE_LOG_ACTIVITY_2 ( condition,
description )
Value:
QT_APPLE_LOG_ACTIVITY_CREATE(condition, description, OS_ACTIVITY_CURRENT)
#define QT_APPLE_LOG_ACTIVITY_CREATE(condition, description, parent)
GLenum condition

Definition at line 370 of file qcore_mac_p.h.

◆ QT_APPLE_LOG_ACTIVITY_CREATE

#define QT_APPLE_LOG_ACTIVITY_CREATE ( condition,
description,
parent )
Value:
[]() { \
if (!(condition)) \
return QAppleLogActivity(); \
return QAppleLogActivity(os_activity_create(description, parent, OS_ACTIVITY_FLAG_DEFAULT)); \
}()

Definition at line 359 of file qcore_mac_p.h.

◆ QT_APPLE_LOG_ACTIVITY_WITH_PARENT

#define QT_APPLE_LOG_ACTIVITY_WITH_PARENT ( ...)
Value:
#define QT_APPLE_LOG_ACTIVITY_WITH_PARENT(...)

Definition at line 367 of file qcore_mac_p.h.

◆ QT_APPLE_LOG_ACTIVITY_WITH_PARENT_2

#define QT_APPLE_LOG_ACTIVITY_WITH_PARENT_2 ( description,
parent )
Value:
QT_APPLE_LOG_ACTIVITY_WITH_PARENT_3(true, description, parent)
#define QT_APPLE_LOG_ACTIVITY_WITH_PARENT_3(condition, description, parent)

Definition at line 366 of file qcore_mac_p.h.

◆ QT_APPLE_LOG_ACTIVITY_WITH_PARENT_3

#define QT_APPLE_LOG_ACTIVITY_WITH_PARENT_3 ( condition,
description,
parent )
Value:

Definition at line 365 of file qcore_mac_p.h.

◆ QT_APPLE_SCOPED_LOG_ACTIVITY

#define QT_APPLE_SCOPED_LOG_ACTIVITY ( ...)
Value:
QAppleLogActivity scopedLogActivity = QT_APPLE_LOG_ACTIVITY(__VA_ARGS__).enter();
QAppleLogActivity && enter()

Definition at line 374 of file qcore_mac_p.h.

◆ QT_DECLARE_NAMESPACED_OBJC_INTERFACE

#define QT_DECLARE_NAMESPACED_OBJC_INTERFACE ( classname,
definition )
Value:
using classname = QT_MANGLE_NAMESPACE(classname);
#define Q_FORWARD_DECLARE_OBJC_CLASS(classname)
#define QT_MANGLE_NAMESPACE(name)

Definition at line 71 of file qcore_mac_p.h.

◆ QT_FORWARD_DECLARE_OBJC_ENUM

#define QT_FORWARD_DECLARE_OBJC_ENUM ( name,
type )
Value:
typedef type name;
GLenum type
EGLImageKHR EGLint * name

Definition at line 76 of file qcore_mac_p.h.

◆ QT_MAC_WEAK_IMPORT

#define QT_MAC_WEAK_IMPORT ( symbol)
Value:
extern "C" decltype(symbol) symbol __attribute__((weak_import));
struct capHdr __attribute__

Definition at line 62 of file qcore_mac_p.h.

◆ QT_NAMESPACE_ALIAS_OBJC_CLASS

#define QT_NAMESPACE_ALIAS_OBJC_CLASS ( __KLASS__)

Definition at line 59 of file qcore_mac_p.h.

◆ QT_USE_APPLE_UNIFIED_LOGGING

#define QT_USE_APPLE_UNIFIED_LOGGING

Definition at line 281 of file qcore_mac_p.h.

◆ QtExtras

#define QtExtras   QT_MANGLE_NAMESPACE(QtExtras)

Definition at line 93 of file qcore_mac_p.h.

Typedef Documentation

◆ AppleApplication

using AppleApplication = UIApplication

Definition at line 272 of file qcore_mac_p.h.

◆ QAppleOsType

template<typename T>
using QAppleOsType = QAppleRefCounted<T, void *, os_retain, os_release>

Definition at line 311 of file qcore_mac_p.h.

Function Documentation

◆ operator<<() [1/6]

QDebug operator<< ( QDebug debug,
const QCFString & string )

Definition at line 362 of file qcore_mac.mm.

◆ operator<<() [2/6]

QDebug operator<< ( QDebug debug,
const QMacAutoReleasePool * pool )

Definition at line 354 of file qcore_mac.mm.

◆ operator<<() [3/6]

QDebug operator<< ( QDebug dbg,
CGPoint point )

Definition at line 239 of file qcore_mac.mm.

◆ operator<<() [4/6]

QDebug operator<< ( QDebug dbg,
CGRect rect )

Definition at line 251 of file qcore_mac.mm.

◆ operator<<() [5/6]

QDebug operator<< ( QDebug dbg,
CGSize size )

Definition at line 245 of file qcore_mac.mm.

◆ operator<<() [6/6]

QDebug operator<< ( QDebug dbg,
UIEdgeInsets insets )

Definition at line 260 of file qcore_mac.mm.

◆ Q_FORWARD_DECLARE_OBJC_CLASS() [1/4]

Q_FORWARD_DECLARE_OBJC_CLASS ( NSObject )

◆ Q_FORWARD_DECLARE_OBJC_CLASS() [2/4]

Q_FORWARD_DECLARE_OBJC_CLASS ( NSString )

◆ Q_FORWARD_DECLARE_OBJC_CLASS() [3/4]

QT_END_NAMESPACE Q_FORWARD_DECLARE_OBJC_CLASS ( UIApplication )

◆ Q_FORWARD_DECLARE_OBJC_CLASS() [4/4]

Q_FORWARD_DECLARE_OBJC_CLASS ( UTType )

◆ qt_apple_bundleType()

std::optional< UTType * > qt_apple_bundleType ( const QString & path)

Returns the bundle type of the item at path, or std::nullopt if it is not a bundle.

Whether an item is a bundle is determined by its uniform type conforming to com.apple.bundle, covering applications (.app), app extensions (.appex), frameworks, and generic bundles. It is not determined by the mere presence of a Contents directory or similar structure.

Directories whose extension is not a recognized bundle type, such as audio unit components (.component), are still resolved as bundles when they carry bundle metadata (a PkgInfo or Info.plist declaring the package type), as the system then classifies them as a generic bundle. A bare directory without such metadata is not considered a bundle.

Definition at line 531 of file qcore_mac.mm.

◆ qt_apple_isApplicationExtension()

bool qt_apple_isApplicationExtension ( )

Definition at line 508 of file qcore_mac.mm.

Referenced by qt_apple_sharedApplication().

Here is the caller graph for this function:

◆ qt_apple_isSandboxed()

bool qt_apple_isSandboxed ( )

Definition at line 566 of file qcore_mac.mm.

◆ qt_apple_runningWithLiquidGlass()

Q_CORE_EXPORT bool qt_apple_runningWithLiquidGlass ( )

◆ qt_apple_sharedApplication()

AppleApplication * qt_apple_sharedApplication ( )

Definition at line 543 of file qcore_mac.mm.

References qt_apple_isApplicationExtension().

Here is the call graph for this function:

◆ QT_MAC_WEAK_IMPORT()

QT_MAC_WEAK_IMPORT ( _os_activity_current )