RaylinkProxy.h 992 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. //
  2. // RaylinkProxy.h
  3. // raylink_sdk_flutter
  4. //
  5. // Created by Sim Tsai on 2022/12/14.
  6. //
  7. #import <Foundation/Foundation.h>
  8. NS_ASSUME_NONNULL_BEGIN
  9. @protocol RaylinkProxyDelegate <NSObject>
  10. @optional
  11. - (void)sdnRouteChange:(NSString *)sdnId type:(int)type;
  12. - (void)onProxyConnected:(NSString *)sdnId status:(int)status;
  13. - (void)OnProxyDisconnected_cb:(NSString *)sdnId;
  14. @end
  15. typedef void(^RaylinkProxyConnectBlock)(int port);
  16. @interface RaylinkProxy : NSObject
  17. + (instancetype)sharedManager;
  18. @property (nonatomic, weak) id<RaylinkProxyDelegate> delegate;
  19. - (void)initProxy:(NSString *)logPath rootSdnInfo:(NSData *)rootSdnInfo;
  20. - (BOOL)createNewConnection:(NSString *)sdnId;
  21. - (NSUInteger)createHttpService:(NSString *)sdnId;
  22. - (void)closeConnection:(NSString *)sdnId;
  23. - (void)closeHttpService:(NSString *)sdnId;
  24. - (BOOL)addSdnId:(NSString *)sdnId ip:(NSString *)ip allowPort:(NSUInteger)port;
  25. - (NSString *)getSdnId;
  26. - (BOOL)isSdnConnected;
  27. @end
  28. NS_ASSUME_NONNULL_END