Delegate¶
本章では、ASR033WDelegate プロトコルに定義されているデリゲートメソッドについて解説します。
このプロトコルを実装することで、ASR033Wの各種イベントやデータを受信できます。
receivedASR033WSearchInformation:isFinish:¶
ASR-033Wの情報を受信した後に呼び出されるデリゲートメソッドです。
検索デバイスの情報取得が完了したタイミングで実行されます。
@MainActor
func receivedASR033WSearchInformation(
_ information: [AnyHashable : Any]!,
isFinish: Bool
)
- (void)receivedASR033WSearchInformation:(NSDictionary *)information
isFinish:(BOOL)isFinish;
パラメータ¶
項目名 |
型 |
説明 |
|
|
ASR-033Wの情報を格納した辞書 |
|
|
検索状況。 |
サンプルコード¶
func receivedASR033WSearchInformation(_ information: [AnyHashable : Any]!, isFinish: Bool) {
if isFinish {
// 検索完了時の処理
} else {
// 検索中の処理
}
}
- (void)receivedASR033WSearchInformation:(NSDictionary *)information isFinish:(BOOL)isFinish{
if(isFinish == YES) {
// 検索完了
} else {
// 検索中
}
}
receivedASR033WNetworkState:error:¶
ASR-033Wの接続状態を受信した際に呼び出されるデリゲートメソッドです。
接続成功・切断・不明なネットワーク状態などを通知します。
@MainActor
func receivedASR033WNetworkState(
_ state: ASR033WNetworkState,
error: (any Error)!
)
- (void)receivedASR033WNetworkState:(ASR033WNetworkState)state
error:(NSError *)error;
パラメータ¶
項目名 |
型 |
説明 |
|
|
ASR-033Wの接続状態。列挙型 |
|
|
接続失敗時のエラー情報。成功時は |
サンプルコード¶
func receivedASR033WNetworkState(_ state: ASR033WNetworkState, error: (any Error)!) {
if (state == ASR033WNetworkStateConnected) {
// 接続成功
} else if (state == ASR033WNetworkStateDisconnected) {
// 接続失敗
} else if (state == ASR033WNetworkStateUnknown) {
// 不明な状態
} else {
// その他のエラー
}
}
- (void)receivedASR033WNetworkState:(ASR033WNetworkState)state error:(NSError *)error{
if (state == ASR033WNetworkStateConnected) {
// 接続成功
} else if (state == ASR033WNetworkStateDisconnected) {
// せ
} else if (state == ASR033WNetworkStateUnknown) {
// 不明な状態
} else {
// その他のエラー
}
}
receivedASR033WInventoryPC:epc:tid:ant:rssi:phase:frequency:¶
インベントリで読み取ったタグ情報を受信するデリゲートメソッドです。
startInventoryWithAntenna1 などでインベントリを開始した後、読み取りごとに呼び出されます。
@MainActor
func receivedASR033WInventoryPC(
_ pc: String!,
epc: String!,
tid: String!,
ant: Int32,
rssi: Int32,
phase: Float,
frequency: Float
)
- (void)receivedASR033WInventoryPC:(NSString *)pc
epc:(NSString *)epc
tid:(NSString *)tid
ant:(int)ant
rssi:(int)rssi
phase:(float)phase
frequency:(float)frequency;
パラメータ¶
項目名 |
型 |
説明 |
|
|
タグのPCデータ |
|
|
タグのEPCデータ |
|
|
タグのTIDデータ |
|
|
使用アンテナ番号 |
|
|
応答波の信号強度 |
|
|
応答波の位相 |
|
|
応答波の周波数(MHz) |
サンプルコード¶
func receivedASR033WInventoryPC(_ pc: String!,
epc: String!,
tid: String!,
ant: Int32,
rssi: Int32,
phase: Float,
frequency: Float) {
print(
"PC: \(pc ?? "nil")\n" +
"EPC: \(epc ?? "nil")\n" +
"TID: \(tid ?? "nil")\n" +
"ANT: \(ant)\n" +
"RSSI: \(rssi)\n" +
"PHASE: \(phase)\n" +
"FREQUENCY: \(frequency)"
)
}
- (void)receivedASR033WInventoryPC:(NSString *)pc
epc:(NSString *)epc
tid:(NSString *)tid
ant:(int)ant
rssi:(int)rssi
phase:(float)phase
frequency:(float)frequency {
NSLog(@"PC: %@, EPC: %@, TID: %@, Ant: %d, RSSI: %d, Phase: %f, Freq: %f",
pc, epc, tid, ant, rssi, phase, frequency);
}
receivedASR033WHIDData:¶
HIDデータを受信した際に呼び出されるデリゲートメソッドです。
@MainActor
func receivedASR033WHIDData(_ HIDData: Data!)
- (void)receivedASR033WHIDData:(NSData *)HIDData;
パラメータ¶
項目名 |
型 |
説明 |
|
|
受信したHIDデータ |
サンプルコード¶
func receivedASR033WHIDData(_ HIDData: Data!) {
print("HIDData: \(HIDData as NSData)")
}
- (void)receivedASR033WHIDData:(NSData *)HIDData {
NSLog(@"Received HID Data: %@", HIDData);
}
receivedASR033WDeviceState:¶
ASR-033Wのデバイス状態を受信した際に呼び出されるデリゲートメソッドです。
@MainActor
func receivedASR033WDeviceState(_ error: ASR033WResultCode)
- (void)receivedASR033WDeviceState:(ASR033WResultCode)error;
パラメータ¶
項目名 |
型 |
説明 |
|
|
デバイス状態を示す列挙型。 |
サンプルコード¶
func receivedASR033WDeviceState(_ error: ASR033WResultCode) {
if (error == ASR033WResultNoError) {
print("Device state OK")
} else {
print("Device error: \(error)")
}
}
- (void)receivedASR033WDeviceState:(ASR033WResultCode)error {
if (error == ASR033WResultNoError) {
NSLog(@"Device state OK");
} else {
NSLog(@"Device error: %ld", (long)error);
}
}
receivedASR033WActionState:resultCode:¶
インベントリ開始、インベントリ停止、RFタグへの書き込み、ロック、キルの結果を受信します。
以下のメソッドを呼び出した際に呼び出されます。
@MainActor
func receivedASR033WActionState(
_ action: ASR033WCommandType,
resultCode: ASR033WResultCode
)
- (void)receivedASR033WActionState:(ASR033WCommandType)action
resultCode:(ASR033WResultCode)resultCode;
パラメータ¶
引数名 |
型 |
説明 |
action |
ASR033WCommandType |
ASR033Wコマンドタイプ |
resultCode |
ASR033WResultCode |
列挙型 |
サンプルコード¶
func receivedASR033WActionState(_ action: ASR033WCommandType,
resultCode: ASR033WResultCode) {
}
- (void)receivedASR033WActionState:(ASR033WCommandType)action
resultCode:(ASR033WResultCode)resultCode {
}
accessASR033WResult:actionState:epc:data:rssi:phase:frequency¶
インベントリデータを受信します。
startInventoryWithAntenna1を実行した後、呼び出されます。
@MainActor
func accessASR033WResult(
_ error: ASR033WResultCode,
actionState action: ASR033WCommandType,
epc: String!,
data: String!,
rssi: Float,
phase: Float,
frequency: Float
)
- (void)accessASR033WResult:(ASR033WResultCode)error
actionState:(ASR033WCommandType)action
epc:(NSString *)epc
data:(NSString *)data
rssi:(float)rssi
phase:(float)phase
frequency:(float)frequency;
パラメータ¶
項目名 |
型 |
説明 |
|
|
タグのPCデータ |
|
|
タグのEPCデータ |
|
|
タグのTIDデータ |
|
|
アンテナ番号 |
|
|
応答波の信号強度 |
|
|
応答波の位相 |
|
|
応答波の周波数 (MHz) |
サンプルコード¶
func accessASR033WResult(_ error: ASR033WResultCode,
actionState action: ASR033WCommandType,
epc: String!,
data: String!,
rssi: Float,
phase: Float,
frequency: Float) {
}
- (void)accessASR033WResult:(ASR033WResultCode)error
actionState:(ASR033WCommandType)action
epc:(NSString *)epc
data:(NSString *)data
rssi:(float)rssi
phase:(float)phase
frequency:(float)frequency {
// 実装コードをここに記述
}
receivedASR033WData¶
ASR-033Wから返されたコマンドデータを受信します。
sendData メソッドを呼び出した後に呼び出されます。
@MainActor
func receivedASR033WData(_ data: Data!)
- (void)receivedASR033WData:(NSData *)data;
パラメータ¶
項目名 |
型 |
説明 |
|
|
受信したコマンドデータ |
サンプルコード¶
func receivedASR033WData(_ data: Data!) {
print("Data: \(data as NSData)")
}
- (void)receivedASR033WData:(NSData *)data {
}
receivedASR033WSearchDeviceInfo¶
AsReader情報を受信します。
startSearchDevice を実行した後に呼び出されます。
@MainActor
func receivedASR033WSearchDeviceInfo(_ arrInfos: [Any]!)
- (void)receivedASR033WSearchDeviceInfo:(NSArray *)arrInfos;
パラメータ¶
項目名 |
型 |
説明 |
|
|
受信したAsReader情報の配列 |
サンプルコード¶
func receivedASR033WSearchDeviceInfo(_ arrInfos: [Any]!) {
}
- (void)receivedASR033WSearchDeviceInfo:(NSArray *)arrInfos {
}