auto_bus/include/bus_io.h
2022-05-08 11:48:04 +08:00

53 lines
1.0 KiB
C

//
// Created by ricardo on 2022/5/6.
//
#ifndef AUTO_PILOT_BUS_BUS_IO_H
#define AUTO_PILOT_BUS_BUS_IO_H
#include "rail.h"
#include "query.h"
enum read_state{
/**
* 时钟
*/
clock = 0,
/**
* 读取中
*/
reading,
/**
* 结束
*/
end
};
/**
* 读取输入的状态
*/
typedef enum read_state read_state_t;
/**
* 读取配置文件,创建轨道链表,同时读取需要使用的策略
* @return 指向轨道链表的指针
*/
rail_node_t* ReadConfigFile();
/**
* 读取标准输入流中的输入
* @param up_queries 上车的请求队列
* @param down_queries 下车的请求队列
* @return 当前读取的状态
*/
read_state_t ReadInput(up_bus_t* up_queries, down_bus_t* down_queries);
/**
* 打印当前的状态
* @param up_queries 上车的请求队列
* @param down_queries 下车的请求队列
* @param rails 轨道链表
*/
void PrintState(up_bus_t* up_queries, down_bus_t* down_queries, rail_node_t* rails);
#endif //AUTO_PILOT_BUS_BUS_IO_H