175 lines
4.3 KiB
Objective-C
Executable File
175 lines
4.3 KiB
Objective-C
Executable File
//
|
|
// ESPTaskParameter.m
|
|
// EspTouchDemo
|
|
//
|
|
// Created by 白 桦 on 5/20/15.
|
|
// Copyright (c) 2015 白 桦. All rights reserved.
|
|
//
|
|
|
|
#import "ESPTouchTaskParameter.h"
|
|
|
|
@interface ESPTaskParameter()
|
|
@property (nonatomic,assign) long intervalGuideCodeMillisecond;
|
|
@property (nonatomic,assign) long intervalDataCodeMillisecond;
|
|
@property (nonatomic,assign) long timeoutGuideCodeMillisecond;
|
|
@property (nonatomic,assign) long timeoutDataCodeMillisecond;
|
|
@property (nonatomic,assign) long timeoutTotalCodeMillisecond;
|
|
@property (nonatomic,assign) int totalRepeatTime;
|
|
@property (nonatomic,assign) int esptouchResultOneLen;
|
|
@property (nonatomic,assign) int esptouchResultMacLen;
|
|
@property (nonatomic,assign) int esptouchResultIpLen;
|
|
@property (nonatomic,assign) int esptouchResultTotalLen;
|
|
@property (nonatomic,assign) int portListening;
|
|
@property (nonatomic,assign) int targetPort;
|
|
@property (nonatomic,assign) int waitUdpReceivingMillisecond;
|
|
@property (nonatomic,assign) int waitUdpSendingMillisecond;
|
|
@property (nonatomic,assign) int thresholdSucBroadcastCount;
|
|
@property (nonatomic,assign) int expectTaskResultCount;
|
|
@end
|
|
|
|
@implementation ESPTaskParameter
|
|
|
|
static int _datagramCount = 0;
|
|
|
|
- (id) init
|
|
{
|
|
self = [super init];
|
|
if (self) {
|
|
self.intervalGuideCodeMillisecond = 10;
|
|
self.intervalDataCodeMillisecond = 10;
|
|
self.timeoutGuideCodeMillisecond = 2000;
|
|
self.timeoutDataCodeMillisecond = 4000;
|
|
self.timeoutTotalCodeMillisecond = 2000 + 4000;
|
|
self.totalRepeatTime = 1;
|
|
self.esptouchResultOneLen = 1;
|
|
self.esptouchResultMacLen = 6;
|
|
self.esptouchResultIpLen = 4;
|
|
self.esptouchResultTotalLen = 1 + 6 + 4;
|
|
self.portListening = 18266;
|
|
self.targetPort = 7001;
|
|
self.waitUdpReceivingMillisecond = 15000;
|
|
self.waitUdpSendingMillisecond = 45000;
|
|
self.thresholdSucBroadcastCount = 1;
|
|
self.expectTaskResultCount = 1;
|
|
}
|
|
return self;
|
|
}
|
|
|
|
// the range of the result should be 1-100
|
|
- (int) __getNextDatagramCount
|
|
{
|
|
return 1 + (_datagramCount++) % 100;
|
|
}
|
|
|
|
- (long) getIntervalGuideCodeMillisecond
|
|
{
|
|
return self.intervalGuideCodeMillisecond;
|
|
}
|
|
|
|
- (long) getIntervalDataCodeMillisecond
|
|
{
|
|
return self.intervalDataCodeMillisecond;
|
|
}
|
|
|
|
- (long) getTimeoutGuideCodeMillisecond
|
|
{
|
|
return self.timeoutGuideCodeMillisecond;
|
|
}
|
|
|
|
- (long) getTimeoutDataCodeMillisecond
|
|
{
|
|
return self.timeoutDataCodeMillisecond;
|
|
}
|
|
|
|
- (long) getTimeoutTotalCodeMillisecond
|
|
{
|
|
return self.timeoutTotalCodeMillisecond;
|
|
}
|
|
|
|
- (int) getTotalRepeatTime
|
|
{
|
|
return self.totalRepeatTime;
|
|
}
|
|
|
|
- (int) getEsptouchResultOneLen
|
|
{
|
|
return self.esptouchResultOneLen;
|
|
}
|
|
|
|
|
|
- (int) getEsptouchResultMacLen
|
|
{
|
|
return self.esptouchResultMacLen;
|
|
}
|
|
|
|
|
|
- (int) getEsptouchResultIpLen
|
|
{
|
|
return self.esptouchResultIpLen;
|
|
}
|
|
|
|
|
|
- (int) getEsptouchResultTotalLen
|
|
{
|
|
return self.esptouchResultTotalLen;
|
|
}
|
|
|
|
- (int) getPortListening
|
|
{
|
|
return self.portListening;
|
|
}
|
|
|
|
// target hostname is : 234.1.1.1, 234.2.2.2, 234.3.3.3 to 234.100.100.100
|
|
- (NSString *) getTargetHostname
|
|
{
|
|
int count = [self __getNextDatagramCount];
|
|
return [NSString stringWithFormat: @"234.%d.%d.%d", count, count, count];
|
|
}
|
|
|
|
- (int) getTargetPort
|
|
{
|
|
return self.targetPort;
|
|
}
|
|
|
|
- (int) getWaitUdpReceivingMillisecond
|
|
{
|
|
return self.waitUdpReceivingMillisecond;
|
|
}
|
|
|
|
- (int) getWaitUdpSendingMillisecond
|
|
{
|
|
return self.waitUdpSendingMillisecond;
|
|
}
|
|
|
|
- (int) getWaitUdpTotalMillisecond
|
|
{
|
|
return self.waitUdpReceivingMillisecond + self.waitUdpSendingMillisecond;
|
|
}
|
|
|
|
- (int) getThresholdSucBroadcastCount
|
|
{
|
|
return self.thresholdSucBroadcastCount;
|
|
}
|
|
|
|
- (void) setWaitUdpTotalMillisecond: (int) waitUdpTotalMillisecond
|
|
{
|
|
if (waitUdpTotalMillisecond < self.waitUdpReceivingMillisecond + [self getTimeoutTotalCodeMillisecond])
|
|
{
|
|
// if it happen, even one turn about sending udp broadcast can't be completed
|
|
NSLog(@"ESPTouchTaskParameter waitUdpTotalMillisecod is invalid, it is less than mWaitUdpReceivingMilliseond + [self getTimeoutTotalCodeMillisecond]");
|
|
assert(0);
|
|
}
|
|
self.waitUdpSendingMillisecond = waitUdpTotalMillisecond - self.waitUdpReceivingMillisecond;
|
|
}
|
|
|
|
- (int) getExpectTaskResultCount
|
|
{
|
|
return self.expectTaskResultCount;
|
|
}
|
|
|
|
- (void) setExpectTaskResultCount: (int) expectTaskResultCount
|
|
{
|
|
_expectTaskResultCount = expectTaskResultCount;
|
|
}
|
|
@end
|