XNSim/XNCore/XNThreadManager_p.h

75 lines
1.3 KiB
C
Raw Normal View History

2025-04-28 12:25:20 +08:00
/**
* @file XNThreadManager_p.h
* @author jinchao
* @brief 线
* @version 1.0
* @date 2024-11-07
*
* @copyright Copyright (c) 2024 XN
*
*/
#pragma once
#include "XNBaseFrameObject_p.h"
#include "XNThread.h"
/**
* @brief
*/
struct funInfo {
/**
* @brief
*/
XNCallBack fun;
/**
* @brief
*/
quint32 freqGroup;
/**
* @brief
*/
quint32 RunPos;
/**
* @brief
*/
quint32 RunPriority;
};
/**
* @brief
*/
using funInfoPtr = QSharedPointer<funInfo>;
/**
* @brief 线
*/
class XNThreadManagerPrivate : public XNBaseFrameObjectPrivate
{
public:
XNThreadManagerPrivate(XNThreadManager *q) : XNBaseFrameObjectPrivate(q) {}
Q_DECLARE_PUBLIC(XNThreadManager)
private:
/**
* @brief 线
*/
RunStatus _eRunStatus;
/**
* @brief
*/
QMap<quint32, std::vector<funInfoPtr> > funList;
/**
* @brief
*/
double dRunFreq = BASE_RUN_FREQ;
/**
* @brief
*/
double dRunInter = BASE_RUN_INTER;
/**
* @brief 线ID
*/
QSet<quint32> threadIDMap;
/**
* @brief 线
*/
quint32 threadCount = 0;
};