47 #include <qtcore_tracepoints_p.h>
299 :
t(
type), m_reserved(0),
362 {
return new QEvent(*
this); }
447 struct QBasicAtomicBitField {
449 BitsPerInt = std::numeric_limits<uint>::digits,
450 NumInts = (
N + BitsPerInt - 1) / BitsPerInt,
459 constexpr QBasicAtomicBitField() =
default;
461 bool allocateSpecific(
int which) noexcept
465 const uint bit = 1U << (which % BitsPerInt);
467 &&
entry.testAndSetRelaxed(old, old | bit);
477 int allocateNext() noexcept
485 for (
uint i =
next.loadRelaxed();
i < NumBits; ++
i) {
486 if (allocateSpecific(
i)) {
488 const uint oldNext =
next.loadRelaxed();
489 next.testAndSetRelaxed(oldNext, qMax(
i + 1, oldNext));
503 static inline int registerEventTypeZeroBased(
int id) noexcept
510 return userEventTypeRegistry.allocateNext();
705 #include "moc_qcoreevent.cpp"
small capitals from c petite p scientific i
[1]
T loadRelaxed() const noexcept
The QByteArray class provides an array of bytes.
QChildEvent(Type type, QObject *child)
static QCoreApplication * instance()
static void removePostedEvent(QEvent *)
~QDynamicPropertyChangeEvent()
QDynamicPropertyChangeEvent(const QByteArray &name)
The QEvent class is the base class of all event classes. Event objects contain event parameters.
static int registerEventType(int hint=-1) noexcept
virtual QEvent * clone() const
The QObject class is the base class of all Qt objects.
QBasicAtomicBitField< QEvent::MaxUser - QEvent::User+1 > UserEventTypeRegistry
GLenum GLuint GLint level
GLint GLsizei GLsizei GLenum GLenum GLsizei void * data