entryPoint static method
Implementation
static void entryPoint(IsolateInferenceArgument argument) async {
final port = ReceivePort();
argument.sendPort.send(port.sendPort);
await for (final InferenceModel message in port) {
/// メッセージから入力データを取得
try {
final inputData = message.inputData;
/// メッセージからインタープリターを取得
argument.fromAddress(message.interpreterAddress);
/// メッセージから出力データの形状を取得
final outputData = List.generate(message.outputShape[0],
(i) => List<double>.filled(message.outputShape[1], 0));
/// 推論を実行
argument.run(inputData, outputData);
/// EvaluatePoseを生成
final evaluatePose = EvaluatePose(
inputData: inputData,
outputData: outputData,
);
/// EvaluatePoseを送信
message.responsePort.send(evaluatePose);
} catch (_) {
// エラーが発生した場合はnullを送信
message.responsePort.send(null);
}
}
}