QTimerInfo: refactor QTimerInfo

- Add a constructor
- Initialize members in-class
- Reorder the data members so as not to waste space between them, now
  all the padding is at the end

Change-Id: Ic88200fbff049615a6a43e322e724cf619fc3cdb
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
bb10
Ahmad Samir 2023-06-01 19:40:22 +03:00
parent 619b03401d
commit e25b0d8f27
2 changed files with 11 additions and 11 deletions

View File

@ -285,12 +285,7 @@ void QTimerInfoList::registerTimer(int timerId, qint64 interval, Qt::TimerType t
void QTimerInfoList::registerTimer(int timerId, milliseconds interval,
Qt::TimerType timerType, QObject *object)
{
QTimerInfo *t = new QTimerInfo;
t->id = timerId;
t->interval = interval;
t->timerType = timerType;
t->obj = object;
t->activateRef = nullptr;
QTimerInfo *t = new QTimerInfo(timerId, interval, timerType, object);
steady_clock::time_point expected = updateCurrentTime() + interval;

View File

@ -26,12 +26,17 @@ QT_BEGIN_NAMESPACE
// internal timer info
struct QTimerInfo {
int id; // - timer identifier
Qt::TimerType timerType; // - timer type
std::chrono::milliseconds interval; // - timer interval
QTimerInfo(int timerId, std::chrono::milliseconds msecs, Qt::TimerType type, QObject *obj)
: interval(msecs), id(timerId), timerType(type), obj(obj)
{
}
std::chrono::steady_clock::time_point timeout; // - when to actually fire
QObject *obj; // - object to receive event
QTimerInfo **activateRef; // - ref from activateTimers
std::chrono::milliseconds interval = std::chrono::milliseconds{-1}; // - timer interval
int id = -1; // - timer identifier
Qt::TimerType timerType; // - timer type
QObject *obj = nullptr; // - object to receive event
QTimerInfo **activateRef = nullptr; // - ref from activateTimers
};
class Q_CORE_EXPORT QTimerInfoList