grpcfwclient.h 946 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. #ifndef GRPCFWCLIENT_H
  2. #define GRPCFWCLIENT_H
  3. #include <mutex>
  4. #include <thread>
  5. #include <condition_variable>
  6. #include <iostream>
  7. #include <grpcpp/grpcpp.h>
  8. #include "commonrpc.grpc.pb.h"
  9. #include "commonrpc.pb.h"
  10. using grpc::Channel;
  11. using grpc::ClientContext;
  12. using grpc::Status;
  13. class grpcfwclient
  14. {
  15. public:
  16. grpcfwclient();
  17. ~grpcfwclient();
  18. private:
  19. void threadrpc();
  20. private:
  21. std::thread * mpthread = NULL;
  22. bool mbRun = true;
  23. std::string mstrserverip = "127.0.0.1";
  24. std::string mstrserverport = "19111";
  25. std::condition_variable mcv;
  26. std::mutex mmutexcv;
  27. std::mutex mmutexReq;
  28. std::mutex mmutexReply;
  29. iv::queryrpcReq mReq;
  30. bool mbReqUpdate = false;
  31. int mnConnectFail = 0; //4 14 fail;
  32. iv::queryrpcReply mReply;
  33. bool mbReplyUpdate = false;
  34. public:
  35. void SetReq(iv::queryrpcReq & xreq);
  36. int GetReply(iv::queryrpcReply & xReply);
  37. };
  38. #endif // GRPCFWCLIENT_H