RaylinkProxy.h 923 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  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. @end
  14. typedef void(^RaylinkProxyConnectBlock)(int port);
  15. @interface RaylinkProxy : NSObject
  16. + (instancetype)sharedManager;
  17. @property (nonatomic, weak) id<RaylinkProxyDelegate> delegate;
  18. - (void)initProxy:(NSString *)logPath rootSdnInfo:(NSData *)rootSdnInfo;
  19. - (BOOL)createNewConnection:(NSString *)sdnId;
  20. - (NSUInteger)createHttpService:(NSString *)sdnId;
  21. - (void)closeConnection:(NSString *)sdnId;
  22. - (void)closeHttpService:(NSString *)sdnId;
  23. - (BOOL)addSdnId:(NSString *)sdnId allowPort:(NSUInteger)port;
  24. - (NSString *)getSdnId;
  25. - (BOOL)isSdnConnected;
  26. @end
  27. NS_ASSUME_NONNULL_END