generated from zhangwei/Train_Identify
			
		
			
	
	
		
			106 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			C
		
	
	
	
		
		
			
		
	
	
			106 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			C
		
	
	
	
|  | /*
 | ||
|  |  * @Author: your name | ||
|  |  * @Date: 2022-01-27 10:27:26 | ||
|  |  * @LastEditors: your name | ||
|  |  * @LastEditTime: 2022-02-17 10:40:16 | ||
|  |  * @Description: file content | ||
|  |  * @FilePath: \lirs\code\GrpcEngine\GrpcEngine.h | ||
|  |  *  | ||
|  |  * Copyright © 2022 <Shandong Matrix Software Engineering Co., Ltd> | ||
|  |  */ | ||
|  | /**
 | ||
|  |  * grpc微服务接口 | ||
|  |  * */ | ||
|  | 
 | ||
|  | #ifndef GRPC_ENGINE_H
 | ||
|  | #define GRPC_ENGINE_H
 | ||
|  | 
 | ||
|  | #include <grpcpp/ext/proto_server_reflection_plugin.h>
 | ||
|  | #include <grpcpp/grpcpp.h>
 | ||
|  | #include <grpcpp/health_check_service_interface.h>
 | ||
|  | 
 | ||
|  | #include "grpcservice.grpc.pb.h"
 | ||
|  | 
 | ||
|  | #include "AppCommon.h"
 | ||
|  | 
 | ||
|  | using grpc::Server; | ||
|  | using grpc::ServerBuilder; | ||
|  | using grpc::ServerContext; | ||
|  | using grpc::Status; | ||
|  | using grpc::StatusCode; | ||
|  | 
 | ||
|  | using MatrixAi::Train; | ||
|  | using MatrixAi::Request; | ||
|  | using MatrixAi::Reply; | ||
|  | using MatrixAi::QueryWorkstationRequest; | ||
|  | using MatrixAi::QueryWorkstationReply; | ||
|  | using MatrixAi::UpdateWorkstationRequest; | ||
|  | using MatrixAi::UpdateWorkstationReply; | ||
|  | using MatrixAi::QueryCameraRequest; | ||
|  | using MatrixAi::QueryCameraReply; | ||
|  | using MatrixAi::UpdateCameraRequest; | ||
|  | using MatrixAi::UpdateCameraReply; | ||
|  | using MatrixAi::QueryFTPRequest; | ||
|  | using MatrixAi::QueryFTPReply; | ||
|  | using MatrixAi::UpdateFTPRequest; | ||
|  | using MatrixAi::UpdateFTPReply; | ||
|  | 
 | ||
|  | #include "EngineBase.h"
 | ||
|  | #include "EngineFactory.h"
 | ||
|  | #include "MyYaml.h"
 | ||
|  | 
 | ||
|  | class GrpcEngine : public ai_matrix::EngineBase, public Train::Service | ||
|  | { | ||
|  | public: | ||
|  |     GrpcEngine(); | ||
|  |     ~GrpcEngine(); | ||
|  | 
 | ||
|  |     APP_ERROR Init() override; | ||
|  |     APP_ERROR DeInit() override; | ||
|  |     APP_ERROR Process() override; | ||
|  | 
 | ||
|  |     //识别状态控制-来车
 | ||
|  |     Status Come(ServerContext *context, const Request *request,Reply *reply); | ||
|  | 
 | ||
|  |     //识别状态控制-车走
 | ||
|  |     Status Leave(ServerContext *context, const Request *request, Reply *reply); | ||
|  | 
 | ||
|  |     //识别状态控制-停车
 | ||
|  |     Status TemporaryStop(ServerContext *context, const Request *request,Reply *reply); | ||
|  | 
 | ||
|  |     //识别状态控制-倒车
 | ||
|  |     Status Reversing(ServerContext *context, const Request *request, Reply *reply); | ||
|  | 
 | ||
|  |     //查看“工作站设置”
 | ||
|  |     Status QueryWorkstation(ServerContext *context, const QueryWorkstationRequest *request, QueryWorkstationReply *reply); | ||
|  | 
 | ||
|  |     //修改“工作站设置”
 | ||
|  |     Status UpdateWorkstation(ServerContext *context, const UpdateWorkstationRequest *request, UpdateWorkstationReply *reply); | ||
|  | 
 | ||
|  |     //查询摄像头配置
 | ||
|  |     Status QueryCamera(ServerContext *context, const QueryCameraRequest *request, QueryCameraReply *reply); | ||
|  | 
 | ||
|  |     //修改摄像头配置
 | ||
|  |     Status UpdateCamera(ServerContext *context, const UpdateCameraRequest *request, UpdateCameraReply *reply); | ||
|  | 
 | ||
|  |     //查询FTP的配置
 | ||
|  |     Status QueryFTP(ServerContext *context, const QueryFTPRequest *request, QueryFTPReply *reply); | ||
|  | 
 | ||
|  |     //修改FTP的配置
 | ||
|  |     Status UpdateFTP(ServerContext *context, const UpdateFTPRequest *request, UpdateFTPReply *reply); | ||
|  | 
 | ||
|  |     //重启识别程序
 | ||
|  |     Status RebootAI(ServerContext *context, const Request *request, Reply *reply); | ||
|  | private: | ||
|  |     std::string strPort0_; | ||
|  | 
 | ||
|  |     //接口调用必须的命令标志
 | ||
|  | 	const int HEAD = 0x7d; | ||
|  |      | ||
|  |     // 线程的运行函数
 | ||
|  | 	static void* system_restart(void* args); | ||
|  | }; | ||
|  | 
 | ||
|  | ENGINE_REGIST(GrpcEngine) | ||
|  | 
 | ||
|  | #endif
 |