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
qohoscommon_p.h File Reference

(dc8a6de42c8adb89275628f0adb067e9664a795d)

#include <QtCore/qglobal.h>
#include <QtCore/qlogging.h>
#include <QtCore/qdebug.h>
#include <cstdlib>
#include <functional>
#include <memory>
#include <mutex>
#include <stdexcept>
#include <type_traits>
#include <utility>
Include dependency graph for qohoscommon_p.h:

Go to the source code of this file.

Classes

class  QOhosNamedFunc< Func, func >
class  QOhosNoOpConsumer
class  QOhosMutexProtectedValue< T >

Namespaces

namespace  QtOhos

Macros

#define Q_OHOS_NAMED_FUNC(func)
#define qOhosReportFatalErrorAndAbort(...)

Typedefs

template<typename Func, typename... FuncArgs>
using QOhosInvokeResult = decltype(std::declval<Func>()(std::declval<FuncArgs>()...))
template<typename ... Ts>
using QOhosConsumer = std::function<void(Ts...)>
template<typename T>
using QOhosSupplier = std::function<T()>

Functions

template<typename Func, Func func>
QOhosNamedFunc< Func, funcmakeQOhosNamedFunc (const char *funcName)
template<typename ... Ts>
QOhosConsumer< Ts... > makeQOhosNoOpConsumer ()
QOhosNoOpConsumer makeQOhosNoOpConsumer ()
template<typename T>
std::shared_ptr< T > QtOhos::moveToSharedPtr (T &&obj)
template<typename T>
std::shared_ptr< T > QtOhos::makeSharedPtrWithAttachedExtraData (std::shared_ptr< T > baseSharedPtr, std::shared_ptr< void > extraData)
template<typename T>
std::weak_ptr< T > QtOhos::makeWeakPtr (const std::shared_ptr< T > &obj)
std::shared_ptr< voidQtOhos::makeDestroyNotifier (std::function< void()> callOnDestroy)

Macro Definition Documentation

◆ Q_OHOS_NAMED_FUNC

#define Q_OHOS_NAMED_FUNC ( func)
Value:
(QT_PREPEND_NAMESPACE(makeQOhosNamedFunc)<decltype(func)*, func>)(QT_STRINGIFY(func))
QOhosNamedFunc< Func, func > makeQOhosNamedFunc(const char *funcName)
GLenum func
Definition qopenglext.h:663
#define QT_STRINGIFY(x)

Definition at line 31 of file qohoscommon_p.h.

◆ qOhosReportFatalErrorAndAbort

#define qOhosReportFatalErrorAndAbort ( ...)
Value:
do { \
QT_PREPEND_NAMESPACE(QMessageLogger)(QT_MESSAGELOG_FILE, QT_MESSAGELOG_LINE, QT_MESSAGELOG_FUNC).fatal(__VA_ARGS__); \
std::abort(); \
} while (false)
\inmodule QtCore
Definition qlogging.h:74
#define QT_MESSAGELOG_FUNC
Definition qlogging.h:162
#define QT_MESSAGELOG_FILE
Definition qlogging.h:160
#define QT_MESSAGELOG_LINE
Definition qlogging.h:161

Definition at line 33 of file qohoscommon_p.h.

Typedef Documentation

◆ QOhosConsumer

template<typename ... Ts>
using QOhosConsumer = std::function<void(Ts...)>

Definition at line 45 of file qohoscommon_p.h.

◆ QOhosInvokeResult

template<typename Func, typename... FuncArgs>
using QOhosInvokeResult = decltype(std::declval<Func>()(std::declval<FuncArgs>()...))

Definition at line 42 of file qohoscommon_p.h.

◆ QOhosSupplier

template<typename T>
using QOhosSupplier = std::function<T()>

Definition at line 48 of file qohoscommon_p.h.

Function Documentation

◆ makeQOhosNamedFunc()

template<typename Func, Func func>
QOhosNamedFunc< Func, func > makeQOhosNamedFunc ( const char * funcName)

Definition at line 70 of file qohoscommon_p.h.

◆ makeQOhosNoOpConsumer() [1/2]

QOhosNoOpConsumer makeQOhosNoOpConsumer ( )

Definition at line 162 of file qohoscommon_p.h.

◆ makeQOhosNoOpConsumer() [2/2]

template<typename ... Ts>
QOhosNoOpConsumer makeQOhosNoOpConsumer ( )
inline

Definition at line 156 of file qohoscommon_p.h.