这幽灵车终于跑起来了

This commit is contained in:
2022-06-28 21:15:50 +08:00
parent ab830fcd9e
commit ccf82dd0f5
12 changed files with 160 additions and 30 deletions

View File

@@ -12,7 +12,7 @@ class BusFCFSStrategy : public BusStrategyBase
bus_query_t *GetTargetQuery();
bus_query_t *HandleQuery();
bus_query_t *HandleBTWQuery();
};

View File

@@ -13,7 +13,7 @@ class BusSCANStrategy : public BusStrategyBase
bus_query_t *GetTargetQuery();
bus_query_t *HandleQuery();
bus_query_t *HandleBTWQuery();
};

View File

@@ -12,7 +12,7 @@ class BusSSTFStrategy : public BusStrategyBase
bus_query_t *GetTargetQuery();
bus_query_t *HandleQuery();
bus_query_t *HandleBTWQuery();
};

View File

@@ -40,17 +40,17 @@ public:
virtual bus_query_t *GetTargetQuery() = 0;
/**
* 获取公交车现在可以处理的请求
* 获取公交车现在可以顺便处理的请求
* @return 请求指针
*/
virtual bus_query_t *HandleQuery() = 0;
virtual bus_query_t *HandleBTWQuery() = 0;
signals:
/**
* 删除请求信号
* @param query 需要删除请求的指针
*/
void DeleteQuerySignal(bus_query_t *query);
void DeleteQuerySignal(int query_type, int node_id);
/**
* 打印状态信号
@@ -58,8 +58,25 @@ public:
*/
void PrintStateSignal(QString string);
/**
* 获得公交车前进方向的信号
*/
void GetBusDirectionSignal();
/**
* 运行公交车的信号
* @param direction 公交车前进的方向
* @param duration 前进需要的时间
*/
void BusRunningSignal(int direction, int duration);
public slots:
void AppendQuerySlot(int query_type, int node_id) const;
/**
* 添加请求的槽函数
* @param query_type 请求的类别
* @param node_id 请求的站点ID
*/
void AppendQuerySlot(int query_type, int node_id);
/**
* 处理开始事件的槽函数
@@ -76,6 +93,10 @@ public slots:
*/
void OneTickSlot(int remaining_time);
void GetBusDirectionSlot();
void OnStopSlot();
private:
/**
* 储存当前的状态
@@ -91,6 +112,7 @@ private:
void SetConnection() const;
void HandleQuery();
};