CConnectMage.h 842 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. #pragma once
  2. #include "CThread.h"
  3. #include "CLashConfig.h"
  4. #include "ClashApi.h"
  5. class CConnectMage
  6. {
  7. public:
  8. CConnectMage();
  9. ~CConnectMage();
  10. BOOL setProxy();
  11. void Stop();
  12. void ReqConfig();
  13. void ChangeClashNode();
  14. void ChangeClashProxyMode();
  15. void ChangeClashInit();
  16. void Init();
  17. void SetNodeName(std::string name);
  18. public:
  19. void SetClashConfig(CLashConfig* m);
  20. ConnectState GetConnectStatus();
  21. private:
  22. void ThreadFun_ChangeClash_Config(LPARAM lParam);
  23. void ThreadFun_ChangeClash_ProxyMode(LPARAM lParam);
  24. void ThreadFun_ChangeClash_Node(LPARAM lParam);
  25. void ThreadFun_ChangeClash_Stop(LPARAM lParam);
  26. private:
  27. ConnectState m_connect_status;
  28. CLashConfig* m_clash_config;
  29. ClashApi* m_clash_Api;
  30. SStringW m_error;
  31. AsynTaskHandle<LPARAM> m_Asyntask;
  32. std::string m_name;
  33. bool m_isclash_config;
  34. };