Lines Matching refs:link

178  * currently documented. Any value other than {@link ANEURALNETWORKS_NO_ERROR}
282 * For {@link ANeuralNetworksModel_setOperandValue}, values with a
291 * For {@link ANeuralNetworksCompilation_setCaching}, specify the size
314 // than with {@link ANeuralNetworksExecution_startComputeWithDependencies}), the
322 // than with {@link ANeuralNetworksExecution_startComputeWithDependencies}), the
348 * {@link ANeuralNetworksModel_setOperandValueFromMemory}. An application
350 * needed to define a model. {@link ANeuralNetworksMemory_createFromFd} can be used to
352 * {@link ANeuralNetworksMemory_createFromAHardwareBuffer} can be used to
356 * an execution. See {@link ANeuralNetworksExecution_setInputFromMemory}
357 * and {@link ANeuralNetworksExecution_setOutputFromMemory}.
359 * When calling {@link ANeuralNetworksModel_setOperandValueFromMemory},
360 * {@link ANeuralNetworksExecution_setInputFromMemory} and
361 * {@link ANeuralNetworksExecution_setOutputFromMemory}, each operand in the shared
364 * {@link ANEURALNETWORKS_TENSOR_FLOAT32} type must be aligned on 4-byte boundary.
367 * the memory after calling {@link ANeuralNetworksMemory_free}. This includes
369 * {@link ANeuralNetworksModel_setOperandValueFromMemory}, any compilation
372 * because of a call to {@link ANeuralNetworksExecution_setInputFromMemory} or
373 * {@link ANeuralNetworksExecution_setOutputFromMemory}.
378 * {@link ANeuralNetworksMemoryDesc} to avoid potential memory copying and transformation
379 * overhead between executions. See also {@link ANeuralNetworksMemoryDesc} and
380 * {@link ANeuralNetworksMemory_createFromDesc}.
389 * <li>{@link ANeuralNetworksModel_create}</li>
390 * <li>{@link ANeuralNetworksModel_addOperation}</li>
391 * <li>{@link ANeuralNetworksModel_addOperand}</li>
400 * A model is completed by calling {@link ANeuralNetworksModel_finish}.
401 * A model is destroyed by calling {@link ANeuralNetworksModel_free}.
403 * <p>A model cannot be modified once {@link ANeuralNetworksModel_finish}
408 * thread to use the model once {@link ANeuralNetworksModel_finish} has returned.</p>
411 * other uses of the model after calling {@link ANeuralNetworksModel_free}.
425 * {@link ANeuralNetworksCompilation_create} function or
426 * {@link ANeuralNetworksCompilation_createForDevices}.</li>
428 * {@link ANeuralNetworksCompilation_setPreference}).</li>
430 * compilation by calling {@link ANeuralNetworksCompilation_setCaching}.</li>
431 * <li>Complete the compilation with {@link ANeuralNetworksCompilation_finish}.</li>
433 * with {@link ANeuralNetworksExecution_create} and
434 * {@link ANeuralNetworksBurst_create}.</li>
435 * <li>Destroy the compilation with {@link ANeuralNetworksCompilation_free}
438 * A compilation is completed by calling {@link ANeuralNetworksCompilation_finish}.
439 * A compilation is destroyed by calling {@link ANeuralNetworksCompilation_free}.
441 * <p>A compilation cannot be modified once {@link ANeuralNetworksCompilation_finish}
447 * {@link ANeuralNetworksCompilation_finish} has returned.</p>
450 * uses of the compilation after calling {@link ANeuralNetworksCompilation_free}.
453 * {@link ANeuralNetworksMemoryDesc_addInputRole} or
454 * {@link ANeuralNetworksMemoryDesc_addOutputRole}.</p>
466 * {@link ANeuralNetworksExecution_create} function.</li>
468 * {@link ANeuralNetworksExecution_setInput} or
469 * {@link ANeuralNetworksExecution_setInputFromMemory}.</li>
471 * {@link ANeuralNetworksExecution_setOutput} or
472 * {@link ANeuralNetworksExecution_setOutputFromMemory}.</li>
474 * <li>Asynchronously with {@link ANeuralNetworksExecution_startCompute}
475 * or with {@link ANeuralNetworksExecution_startComputeWithDependencies},
477 * {@link ANeuralNetworksEvent_wait}.</li>
478 * <li>Synchronously with {@link ANeuralNetworksExecution_compute}.</li>
480 * {@link ANeuralNetworksExecution_burstCompute}.</li></ul>
482 * {@link ANeuralNetworksExecution_free}.</li></ul></p>
487 * ({@link ANeuralNetworksModel_setOperandValueFromMemory}).</p>
490 * {@link ANeuralNetworksExecution_burstCompute},
491 * {@link ANeuralNetworksExecution_compute},
492 * {@link ANeuralNetworksExecution_startCompute} or
493 * {@link ANeuralNetworksExecution_startComputeWithDependencies} has been called on it.</p>
496 * {@link ANeuralNetworksExecution_burstCompute},
497 * {@link ANeuralNetworksExecution_compute},
498 * {@link ANeuralNetworksExecution_startCompute} or
499 * {@link ANeuralNetworksExecution_startComputeWithDependencies} only once. Create new
504 * thread to use {@link ANeuralNetworksEvent_wait} at the same time.</p>
508 * {@link ANeuralNetworksExecution_burstCompute},
509 * {@link ANeuralNetworksExecution_compute}, or
510 * {@link ANeuralNetworksEvent_wait} has returned) before calling
511 * {@link ANeuralNetworksExecution_free}.</p>.
514 * uses of the execution after calling {@link ANeuralNetworksExecution_free}.</p>
517 * means of {@link ANeuralNetworksExecution_compute} or
518 * {@link ANeuralNetworksExecution_burstCompute} (which are synchronous) in
520 * {@link ANeuralNetworksExecution_startCompute} or
521 * {@link ANeuralNetworksExecution_startComputeWithDependencies} (which are asynchronous).
522 * (Concurrent uses of {@link ANeuralNetworksExecution_burstCompute} must be on
528 * executions asynchronously and using {@link ANeuralNetworksEvent_wait} between
529 * calls to {@link ANeuralNetworksExecution_startCompute}); or by using
530 * {@link ANeuralNetworksExecution_startComputeWithDependencies} to make the execution wait for a
556 * using {@link ANeuralNetworksExecution} objects. An ANeuralNetworksBurst
557 * object and the {@link ANeuralNetworksExecution} objects used with it must all
558 * have been created from the same {@link ANeuralNetworksCompilation} object.
567 * {@link ANeuralNetworksBurst_create} function.</li>
569 * <li>Create {@link ANeuralNetworksExecution} and configure its
570 * properties (see {@link ANeuralNetworksExecution} for details).</li>
572 * {@link ANeuralNetworksExecution_burstCompute}, reusing the same
573 * {@link ANeuralNetworksBurst} with the new
574 * {@link ANeuralNetworksExecution}.</li>
575 * <li>Use and free the {@link ANeuralNetworksExecution}.</li></ul>
577 * {@link ANeuralNetworksBurst_free}.</li></ul></p>
598 * {@link ANEURALNETWORKS_IF} or {@link ANEURALNETWORKS_WHILE} operation input
604 * {@link ANeuralNetworksModel_setOperandValue} (with a
606 * {@link ANeuralNetworksModel_setOperandValueFromMemory}.</li>
608 * {@link ANeuralNetworksModel_identifyInputsAndOutputs}) of the main
610 * must either be provided to {@link ANeuralNetworksModel_addOperand};
612 * {@link ANeuralNetworksExecution_setInput}, or
613 * {@link ANeuralNetworksExecution_setInputFromMemory}.
616 * {@link ANeuralNetworksExecution_setInput}) then it need
619 * {@link ANeuralNetworksModel_identifyInputsAndOutputs}) of the main
620 * model within a compilation and is to be used with {@link
623 * to {@link ANeuralNetworksModel_addOperand}; or it must be
625 * {@link ANeuralNetworksExecution_setOutput}, or
626 * {@link ANeuralNetworksExecution_setOutputFromMemory}.</li></ul>
663 * See {@link OperandCode}.
672 * See {@link OperandCode}.
707 * {@link ANeuralNetworksMemory_createFromDesc}.
710 * - Create a new memory descriptor by calling {@link ANeuralNetworksMemoryDesc_create}.
712 * {@link ANeuralNetworksMemoryDesc_addInputRole} and
713 * {@link ANeuralNetworksMemoryDesc_addOutputRole}.
715 * {@link ANeuralNetworksMemoryDesc_setDimensions}.
716 * - Complete the memory descriptor with {@link ANeuralNetworksMemoryDesc_finish}.
718 * {@link ANeuralNetworksMemory_createFromDesc}.
719 * - Destroy the memory descriptor with {@link ANeuralNetworksMemoryDesc_free}.
721 * A memory descriptor is completed by calling {@link ANeuralNetworksMemoryDesc_finish}.
722 * A memory descriptor is destroyed by calling {@link ANeuralNetworksMemoryDesc_free}.
724 * A memory descriptor must not be modified once {@link ANeuralNetworksMemoryDesc_finish}
730 * {@link ANeuralNetworksMemoryDesc_finish} has returned.
733 * uses of the memory descriptor after calling {@link ANeuralNetworksMemoryDesc_free}.
734 * It is however safe to continue using a {@link ANeuralNetworksMemory} object created
742 * Create a {@link ANeuralNetworksMemoryDesc} with no properties.
745 * {@link ANeuralNetworksMemoryDesc_addInputRole},
746 * {@link ANeuralNetworksMemoryDesc_addOutputRole}, and
747 * {@link ANeuralNetworksMemoryDesc_setDimensions}.
749 * {@link ANeuralNetworksMemoryDesc_finish} must be called once all properties have been set.
751 * {@link ANeuralNetworksMemoryDesc_free} must be called once the memory descriptor
756 * @param desc The {@link ANeuralNetworksMemoryDesc} to be created.
767 * {@link ANeuralNetworksMemoryDesc_finish}.
769 * See {@link ANeuralNetworksMemoryDesc} for information on multithreaded usage.
789 * {@link ANeuralNetworksMemoryDesc_addInputRole} and
790 * {@link ANeuralNetworksMemoryDesc_addOutputRole} must be compatible with each other. Two
794 * At least one of {@link ANeuralNetworksMemoryDesc_addInputRole} and
795 * {@link ANeuralNetworksMemoryDesc_addOutputRole} must be called on a memory descriptor
796 * before invoking {@link ANeuralNetworksMemoryDesc_finish}.
798 * Attempting to modify a memory descriptor once {@link ANeuralNetworksMemoryDesc_finish} has been
801 * See {@link ANeuralNetworksMemoryDesc} for information on multithreaded usage.
807 * {@link ANeuralNetworksCompilation_finish}, and must outlive the memory
811 * {@link ANeuralNetworksModel_identifyInputsAndOutputs}. It is not
812 * the index associated with {@link ANeuralNetworksModel_addOperand}.
835 * {@link ANeuralNetworksMemoryDesc_addInputRole} and
836 * {@link ANeuralNetworksMemoryDesc_addOutputRole} must be compatible with each other. Two
840 * At least one of {@link ANeuralNetworksMemoryDesc_addInputRole} and
841 * {@link ANeuralNetworksMemoryDesc_addOutputRole} must be called on the memory descriptor
842 * before invoking {@link ANeuralNetworksMemoryDesc_finish}.
844 * Attempting to modify a memory descriptor once {@link ANeuralNetworksMemoryDesc_finish} has been
847 * See {@link ANeuralNetworksMemoryDesc} for information on multithreaded usage.
853 * {@link ANeuralNetworksCompilation_finish}, and must outlive the memory
857 * {@link ANeuralNetworksModel_identifyInputsAndOutputs}. It is not
858 * the index associated with {@link ANeuralNetworksModel_addOperand}.
874 * operands of all the roles specified by {@link ANeuralNetworksMemoryDesc_addInputRole} and
875 * {@link ANeuralNetworksMemoryDesc_addOutputRole}. Two dimensions are incompatible if both ranks
879 * Attempting to modify a memory descriptor once {@link ANeuralNetworksMemoryDesc_finish} has been
882 * See {@link ANeuralNetworksMemoryDesc} for information on multithreaded usage.
898 * {@link ANeuralNetworksMemory_createFromDesc}.
902 * See {@link ANeuralNetworksMemoryDesc} for information on multithreaded usage.
916 * buffer may only be used according to the roles specified by {@link
917 * ANeuralNetworksMemoryDesc_addOutputRole}, or as the destination memory in {@link
920 * {@link ANeuralNetworksMemory_copy}. A memory object with an initialized buffer may be used
921 * according to all roles specified in {@link ANeuralNetworksMemoryDesc}, or as the source or
922 * destination memory in {@link ANeuralNetworksMemory_copy}. The buffer of a memory object will
924 * execution, or used as the destination memory in a failed {@link ANeuralNetworksMemory_copy}.
927 * model operands of all the roles specified by {@link ANeuralNetworksMemoryDesc_addInputRole} and
928 * {@link ANeuralNetworksMemoryDesc_addOutputRole}, as well as the dimensions set by the call to
929 * {@link ANeuralNetworksMemoryDesc_setDimensions}, if any. The memory descriptor may have
933 * output, or the last {@link ANeuralNetworkMemory_copy} using this memory object as the destination
940 * When calling {@link ANeuralNetworksExecution_setInputFromMemory} or
941 * {@link ANeuralNetworksExecution_setOutputFromMemory} with the memory object,
945 * Calling {@link ANeuralNetworksModel_setOperandValueFromMemory} with the memory created from this
948 * {@link ANeuralNetworksMemory_free} must be called once the memory is no longer needed.
952 * The provided {@link ANeuralNetworksMemoryDesc} need not outlive the {@link ANeuralNetworksMemory}
971 * If at most one of the src and dst is created from {@link ANeuralNetworksMemory_createFromDesc},
973 * - If the memory is created from {@link ANeuralNetworksMemory_createFromFd}, or if it is created
974 * from {@link ANeuralNetworksMemory_createFromAHardwareBuffer} with format of
976 * - If the memory is created from {@link ANeuralNetworksMemory_createFromAHardwareBuffer} with a
980 * - If the memory is created from {@link ANeuralNetworksMemory_createFromDesc}, the logical size
981 * equals the size indicated by the {@link OperandCode} multiplied by the number of elements. This
984 * If both src and dst are created from {@link ANeuralNetworksMemory_createFromDesc}, they must have
990 * In both cases, if the src is created from {@link ANeuralNetworksMemory_createFromDesc}, it must
992 * successful {@link ANeuralNetworksMemory_copy}.
1045 * {@link ANeuralNetworksDevice_getFeatureLevel} that is 29 and above, the
1067 * @param type The returned {@link DeviceTypeCode} of the specified device.
1083 * by {@link ANeuralNetworksDevice_getFeatureLevel}. There is no implicit ordering of the versions.
1132 * {@link ANEURALNETWORKS_DEAD_OBJECT}. ANeuralNetworksDevice_wait will block until
1167 * Create a {@link ANeuralNetworksCompilation} to compile the given model for a specified set
1175 * specified set of devices. This is in contrast to a use of {@link
1181 * of type {@link ANEURALNETWORKS_MODEL} within this compilation.
1183 * @param model The {@link ANeuralNetworksModel} to be compiled.
1205 * See {@link ANeuralNetworksCompilation} for information on multithreaded usage.
1235 * If {@link ANeuralNetworksExecution_setTimeout} was called on this execution,
1238 * {@link ANEURALNETWORKS_MISSED_DEADLINE_*} will be returned. If the device has
1239 * a feature level reported by {@link ANeuralNetworksDevice_getFeatureLevel}
1242 * If this execution contains a {@link ANEURALNETWORKS_WHILE} operation, and
1244 * then execution will be aborted and {@link ANEURALNETWORKS_MISSED_DEADLINE_*}
1247 * See {@link ANeuralNetworksExecution} for information on multithreaded usage.
1249 * See {@link ANeuralNetworksExecution_burstCompute} for burst synchronous execution.
1250 * See {@link ANeuralNetworksExecution_startCompute} for regular asynchronous execution.
1251 * See {@link ANeuralNetworksExecution_startComputeWithDependencies} for
1266 * {@link ANeuralNetworksExecution}.
1269 * {@link ANeuralNetworksExecution_startCompute} or
1270 * {@link ANeuralNetworksExecution_startComputeWithDependencies},
1271 * {@link ANeuralNetworksEvent_wait} must be called prior to this function.
1276 * {@link ANeuralNetworksModel_identifyInputsAndOutputs}. It is not
1277 * the index associated with {@link ANeuralNetworksModel_addOperand}.
1292 * {@link ANeuralNetworksExecution}. The target output operand cannot be a scalar.
1295 * {@link ANeuralNetworksExecution_startCompute} or
1296 * {@link ANeuralNetworksExecution_startComputeWithDependencies},
1297 * {@link ANeuralNetworksEvent_wait} must be called prior to this function.
1301 * passed to {@link ANeuralNetworksModel_identifyInputsAndOutputs}. It is not
1302 * the index associated with {@link ANeuralNetworksModel_addOperand}.
1317 * Create a {@link ANeuralNetworksBurst} to apply the given compilation.
1319 * {@link ANeuralNetworksExecution_burstCompute} is invoked with a valid
1320 * {@link ANeuralNetworksExecution} and {@link ANeuralNetworksBurst}.
1326 * @param compilation The {@link ANeuralNetworksCompilation} to be evaluated.
1351 * If {@link ANeuralNetworksExecution_setTimeout} was called on the execution,
1354 * {@link ANEURALNETWORKS_MISSED_DEADLINE_*} will be returned.
1356 * If the execution contains a {@link ANEURALNETWORKS_WHILE} operation, and
1358 * then execution will be aborted and {@link ANEURALNETWORKS_MISSED_DEADLINE_*}
1360 * {@link ANeuralNetworksDevice_getFeatureLevel} that is lower than 30, then the
1363 * <p>There must be at most one {@link ANeuralNetworksExecution} processing at
1365 * {@link ANeuralNetworksExecution} launched before the previous has finished
1368 * See {@link ANeuralNetworksExecution_compute} for synchronous execution.
1369 * See {@link ANeuralNetworksExecution_startCompute} for regular asynchronous execution.
1370 * See {@link ANeuralNetworksExecution_startComputeWithDependencies} for
1377 * must be created from the same {@link
1390 * {@link ANeuralNetworksMemory} for a description on how to use this shared memory.
1394 * When calling {@link ANeuralNetworksExecution_setInputFromMemory} or
1395 * {@link ANeuralNetworksExecution_setOutputFromMemory} with the shared memory, both
1402 * Calling {@link ANeuralNetworksModel_setOperandValueFromMemory} with shared memory
1424 * Specifies whether duration of the {@link ANeuralNetworksExecution} is to be
1429 * The {@link ANeuralNetworksExecution} must have been created from an
1430 * {@link ANeuralNetworksCompilation} which in turn was created from
1431 * {@link ANeuralNetworksCompilation_createForDevices} with numDevices = 1.
1433 * {@link ANeuralNetworksDevice_getFeatureLevel} that is lower than 29, then the
1436 * See {@link ANeuralNetworksExecution} for information on multithreaded usage.
1449 * Get the time spent in the specified {@link ANeuralNetworksExecution}, in nanoseconds.
1452 * {@link ANeuralNetworksExecution_startCompute} or
1453 * {@link ANeuralNetworksExecution_startComputeWithDependencies},
1454 * {@link ANeuralNetworksEvent_wait} must be called prior to this function.
1457 * @param durationCode The measurement to be queried, specified by {@link DurationCode}.
1459 * {@link ANeuralNetworksExecution_setMeasureTiming}, if the
1461 * {@link ANeuralNetworksDevice_getFeatureLevel} that is lower
1482 * See {@link ANeuralNetworksMemory} for a description on how to use
1520 * Create an empty {@link ANeuralNetworksModel}.
1523 * {@link ANeuralNetworksExecution_burstCompute},
1524 * {@link ANeuralNetworksExecution_compute},
1525 * {@link ANeuralNetworksExecution_startCompute} or
1526 * {@link ANeuralNetworksExecution_startComputeWithDependencies} is invoked.
1529 * {@link ANeuralNetworksModel_addOperation} and
1530 * {@link ANeuralNetworksModel_addOperand}
1532 * <p>{@link ANeuralNetworksModel_finish} should be called once the model
1535 * <p>{@link ANeuralNetworksModel_free} should be called once the model
1540 * @param model The {@link ANeuralNetworksModel} to be created.
1551 * {@link ANeuralNetworksModel_finish}.
1553 * See {@link ANeuralNetworksModel} for information on multithreaded usage.
1564 * calling {@link ANeuralNetworksCompilation_create} and
1565 * {@link ANeuralNetworksCompilation_createForDevices}.
1572 * See {@link ANeuralNetworksModel} for information on multithreaded usage.
1588 * {@link ANeuralNetworksModel_addOperation},
1589 * {@link ANeuralNetworksModel_identifyInputsAndOutputs},
1590 * {@link ANeuralNetworksModel_setOperandValue},
1591 * {@link ANeuralNetworksModel_setOperandValueFromMemory},
1592 * {@link ANeuralNetworksExecution_setInput},
1593 * {@link ANeuralNetworksExecution_setInputFromMemory},
1594 * {@link ANeuralNetworksExecution_setOutput},
1595 * {@link ANeuralNetworksExecution_setOutputFromMemory} and
1596 * {@link ANeuralNetworksExecution_setOperandValue}.
1601 * {@link ANeuralNetworksModel_identifyInputsAndOutputs}.</li>
1603 * {@link ANeuralNetworksModel_setOperandValue} or
1604 * {@link ANeuralNetworksModel_setOperandValueFromMemory}.</li>
1606 * {@link ANeuralNetworksModel_addOperation}.</li></p>
1609 * {@link ANeuralNetworksModel_identifyInputsAndOutputs}.</p>
1614 * when calling {@link ANeuralNetworksExecution_setInput} or
1615 * {@link ANeuralNetworksExecution_setInputFromMemory}.
1617 * Attempting to modify a model once {@link ANeuralNetworksModel_finish} has been
1620 * See {@link ANeuralNetworksModel} for information on multithreaded usage.
1625 * @param type The {@link ANeuralNetworksOperandType} that describes the shape
1626 * of the operand. Neither the {@link ANeuralNetworksOperandType}
1628 * {@link ANeuralNetworksModel_addOperand}.
1639 * {@link ANEURALNETWORKS_MAX_SIZE_OF_IMMEDIATELY_COPIED_VALUES}
1643 * {@link ANEURALNETWORKS_MAX_SIZE_OF_IMMEDIATELY_COPIED_VALUES}, a pointer to
1650 * For large tensors, using {@link ANeuralNetworksModel_setOperandValueFromMemory}
1656 * Attempting to modify a model once {@link ANeuralNetworksModel_finish} has been
1659 * See {@link ANeuralNetworksModel} for information on multithreaded usage.
1679 * {@link ANEURALNETWORKS_TENSOR_QUANT8_SYMM_PER_CHANNEL}.
1681 * {@link ANEURALNETWORKS_TENSOR_QUANT8_SYMM_PER_CHANNEL} before
1682 * calling {@link ANeuralNetworksModel_finish}.
1712 * use {@link ANeuralNetworksModel_setOperandValue} instead, passing nullptr for buffer.
1718 * {@link ANeuralNetworksMemory_createFromDesc}.
1720 * Attempting to modify a model once {@link ANeuralNetworksModel_finish} has been
1723 * See {@link ANeuralNetworksModel} for information on multithreaded usage.
1724 * See {@link ANeuralNetworksMemory_createFromAHardwareBuffer} for information on
1750 * {@link ANeuralNetworksModel_finish}.
1752 * The {@link ANeuralNetworksModel_relaxComputationFloat32toFloat16} setting of
1758 * Attempting to modify a model once {@link ANeuralNetworksModel_finish} has
1761 * See {@link ANeuralNetworksModel} for information on multithreaded usage.
1781 * @param type The {@link ANeuralNetworksOperationType} of the operation.
1788 * previously added by calls to {@link ANeuralNetworksModel_addOperand}.
1790 * Attempting to modify a model once {@link ANeuralNetworksModel_finish} has been
1793 * See {@link ANeuralNetworksModel} for information on multithreaded usage.
1818 * previously added by calls to {@link ANeuralNetworksModel_addOperand}.
1820 * Attempting to modify a model once {@link ANeuralNetworksModel_finish} has been
1823 * See {@link ANeuralNetworksModel} for information on multithreaded usage.
1835 * Specifies whether {@link ANEURALNETWORKS_TENSOR_FLOAT32} is allowed to be
1837 * floating-point format. By default, {@link ANEURALNETWORKS_TENSOR_FLOAT32}
1845 * @param allow 'true' indicates {@link ANEURALNETWORKS_TENSOR_FLOAT32} may be
1848 * {@link ANEURALNETWORKS_TENSOR_FLOAT32} must be calculated using
1852 * Attempting to modify a model once {@link ANeuralNetworksModel_finish} has been
1857 * See {@link ANeuralNetworksModel} for information on multithreaded usage.
1865 * Create a {@link ANeuralNetworksCompilation} to compile the given model.
1869 * of type {@link ANEURALNETWORKS_MODEL} within this compilation.
1872 * {@link ANeuralNetworksCompilation_finish} is invoked.</p>
1874 * <p>{@link ANeuralNetworksCompilation_finish} should be called once
1877 * <p>{@link ANeuralNetworksModel_free} should be called once the compilation
1883 * {@link ANeuralNetworksModel_finish}.
1885 * See {@link ANeuralNetworksCompilation} for information on multithreaded usage.
1889 * @param model The {@link ANeuralNetworksModel} to be compiled.
1902 * {@link ANeuralNetworksCompilation_finish}.
1904 * See {@link ANeuralNetworksCompilation} for information on multithreaded usage.
1919 * See {@link ANeuralNetworksCompilation} for information on multithreaded usage.
1924 * @param preference Either {@link PREFER_LOW_POWER},
1925 * {@link PREFER_SINGLE_FAST_ANSWER}, or
1926 * {@link PREFER_SUSTAINED_SPEED}.
1935 * calling {@link ANeuralNetworksBurst_create} or
1936 * {@link ANeuralNetworksExecution_create}.
1943 * If {@link ANeuralNetworksCompilation_setTimeout} was called on this
1946 * {@link ANEURALNETWORKS_MISSED_DEADLINE_*} will be returned.
1948 * See {@link ANeuralNetworksCompilation} for information on multithreaded usage.
1972 * See {@link ANeuralNetworksCompilation} for information on multithreaded usage.
1991 * call to {@link ANeuralNetworksCompilation_finish}.
2006 * The {@link ANeuralNetworksCompilation} must have been created with
2007 * {@link ANeuralNetworksCompilation_createForDevices} with numDevices = 1,
2010 * {@link ANeuralNetworksDevice_getFeatureLevel} that is lower than 30, then the
2013 * See {@link ANeuralNetworksCompilation} for information on multithreaded usage.
2031 * Create a {@link ANeuralNetworksExecution} to apply the given compilation.
2033 * {@link ANeuralNetworksExecution_burstCompute},
2034 * {@link ANeuralNetworksExecution_compute},
2035 * {@link ANeuralNetworksExecution_startCompute} or
2036 * {@link ANeuralNetworksExecution_startComputeWithDependencies} is invoked.
2040 * See {@link ANeuralNetworksExecution} for information on multithreaded usage.
2044 * @param compilation The {@link ANeuralNetworksCompilation} to be evaluated.
2057 * {@link ANeuralNetworksExecution_burstCompute},
2058 * {@link ANeuralNetworksExecution_compute},
2059 * {@link ANeuralNetworksExecution_startCompute} or
2060 * {@link ANeuralNetworksExecution_startComputeWithDependencies}; but if it has been scheduled,
2061 * then the application must not call {@link ANeuralNetworksExecution_free}
2063 * {@link ANeuralNetworksExecution_burstCompute},
2064 * {@link ANeuralNetworksExecution_compute}, or
2065 * {@link ANeuralNetworksEvent_wait} has returned).
2067 * See {@link ANeuralNetworksExecution} for information on multithreaded usage.
2078 * {@link ANeuralNetworksExecution}. Evaluation of the execution must not have
2089 * See {@link ANeuralNetworksExecution} for information on multithreaded usage.
2096 * {@link ANeuralNetworksModel_identifyInputsAndOutputs}. It is not
2098 * {@link ANeuralNetworksModel_addOperand}.
2099 * @param type The {@link ANeuralNetworksOperandType} of the
2106 * passed. Neither the {@link ANeuralNetworksOperandType}
2108 * to {@link ANeuralNetworksExecution_setInput}.
2121 * {@link ANeuralNetworksExecution}. Evaluation of the execution must not have
2130 * using {@link ANeuralNetworksExecution_setInput} instead, passing nullptr for
2133 * See {@link ANeuralNetworksExecution} for information on multithreaded usage.
2134 * See {@link ANeuralNetworksMemory_createFromAHardwareBuffer} for information on
2136 * See {@link ANeuralNetworksMemory_createFromDesc} for information on usage of memory objects
2144 * {@link ANeuralNetworksModel_identifyInputsAndOutputs}. It is not
2145 * the index associated with {@link ANeuralNetworksModel_addOperand}.
2146 * @param type The {@link ANeuralNetworksOperandType} of the
2152 * passed. Neither the {@link ANeuralNetworksOperandType}
2154 * to {@link ANeuralNetworksExecution_setInputFromMemory}.
2170 * {@link ANeuralNetworksExecution}. Evaluation of the execution must not have
2180 * See {@link ANeuralNetworksExecution} for information on multithreaded usage.
2187 * {@link ANeuralNetworksModel_identifyInputsAndOutputs}. It is not
2188 * the index associated with {@link ANeuralNetworksModel_addOperand}.
2189 * @param type The {@link ANeuralNetworksOperandType} of the
2196 * passed. Neither the {@link ANeuralNetworksOperandType}
2198 * to {@link ANeuralNetworksExecution_setOutput}.
2203 * by {@link ANeuralNetworksExecution_getOutputOperandRank} and
2204 * {@link ANeuralNetworksExecution_getOutputOperandDimensions}.
2217 * {@link ANeuralNetworksExecution}. Evaluation of the execution must not have
2223 * using {@link ANeuralNetworksExecution_setOutput} instead, passing nullptr for
2228 * See {@link ANeuralNetworksExecution} for information on multithreaded usage.
2229 * See {@link ANeuralNetworksMemory_createFromAHardwareBuffer} for information on
2231 * See {@link ANeuralNetworksMemory_createFromDesc} for information on usage of memory objects
2239 * {@link ANeuralNetworksModel_identifyInputsAndOutputs}. It is not
2240 * the index associated with {@link ANeuralNetworksModel_addOperand}.
2241 * @param type The {@link ANeuralNetworksOperandType} of the operand. This should be
2247 * passed. Neither the {@link ANeuralNetworksOperandType}
2249 * to {@link ANeuralNetworksExecution_setOutputFromMemory}.
2254 * by {@link ANeuralNetworksExecution_getOutputOperandRank} and
2255 * {@link ANeuralNetworksExecution_getOutputOperandDimensions}.
2274 * will be signaled. Use {@link ANeuralNetworksEvent_wait} to wait for that
2281 * If {@link ANeuralNetworksExecution_setTimeout} was called on this execution,
2284 * {@link ANEURALNETWORKS_MISSED_DEADLINE_*} will be returned through
2285 * {@link ANeuralNetworksExecution_startCompute} or
2286 * {@link ANeuralNetworksEvent_wait} on the event object. If the device has a
2287 * feature level reported by {@link ANeuralNetworksDevice_getFeatureLevel} that
2290 * If this execution contains a {@link ANEURALNETWORKS_WHILE} operation, and
2292 * then execution will be aborted and {@link ANEURALNETWORKS_MISSED_DEADLINE_*}
2293 * will be returned through {@link ANeuralNetworksEvent_wait} on the event
2298 * the execution and instead return {@link ANEURALNETWORKS_MISSED_DEADLINE_*}.
2300 * See {@link ANeuralNetworksExecution} for information on multithreaded usage.
2302 * See {@link ANeuralNetworksExecution_compute} for synchronous execution.
2303 * See {@link ANeuralNetworksExecution_burstCompute} for burst synchronous execution.
2304 * See {@link ANeuralNetworksExecution_startComputeWithDependencies} for
2326 * - {@link ANeuralNetworksExecution_burstCompute}
2327 * - {@link ANeuralNetworksExecution_compute}
2328 * - {@link ANeuralNetworksExecution_startCompute}
2329 * - {@link ANeuralNetworksExecution_startComputeWithDependencies}
2344 * The {@link ANeuralNetworksExecution} must have been created from an
2345 * {@link ANeuralNetworksCompilation} which in turn was created from
2346 * {@link ANeuralNetworksCompilation_createForDevices} with numDevices = 1,
2349 * {@link ANeuralNetworksDevice_getFeatureLevel} that is lower than 30, then the
2352 * See {@link ANeuralNetworksExecution} for information on multithreaded usage.
2374 * See {@link ANeuralNetworks_getDefaultLoopTimeout} and
2375 * {@link ANeuralNetworks_getMaximumLoopTimeout} for the default
2378 * See {@link ANeuralNetworksExecution} for information on multithreaded usage.
2383 * produced by {@link ANeuralNetworks_getMaximumLoopTimeout}, it will be
2421 * If {@link ANeuralNetworksExecution_setTimeout} was called on the execution
2424 * {@link ANEURALNETWORKS_MISSED_DEADLINE_*} will be returned here.
2426 * If the execution contains a {@link ANEURALNETWORKS_WHILE} operation, and
2428 * the execution will be aborted, and {@link ANEURALNETWORKS_MISSED_DEADLINE_*}
2431 * See {@link ANeuralNetworksExecution} for information on multithreaded usage.
2445 * See {@link ANeuralNetworksExecution} for information on multithreaded usage.
2458 * Create a {@link ANeuralNetworksEvent} from a sync_fence file descriptor.
2479 * See {@link ANeuralNetworksEvent_createFromSyncFenceFd} and
2480 * {@link ANeuralNetworksExecution_startComputeWithDependencies} to see how to create
2504 * Use {@link ANeuralNetworksEvent_wait} to wait for that event.
2514 * normally, the execution will fail, and {@link ANeuralNetworksEvent_wait} on the returned
2522 * in {@link ANeuralNetworksCompilation_setTimeout} and {@link
2525 * together with {@link ANeuralNetworksExecution_setTimeout} which specifies the
2527 * {@link ANeuralNetworksExecution_startComputeWithDependencies}.
2528 * If the duration is non-zero, the {@link ANeuralNetworksExecution} must have been created
2529 * from an {@link ANeuralNetworksCompilation} which in turn was created from
2530 * {@link ANeuralNetworksCompilation_createForDevices} with numDevices = 1,
2532 * the timeout duration from {@link ANeuralNetworksExecution_setTimeout} or the
2534 * aborted, in which case {@link ANEURALNETWORKS_MISSED_DEADLINE_*} will be
2535 * returned through {@link ANeuralNetworksExecution_startComputeWithDependencies}
2536 * or {@link ANeuralNetworksEvent_wait} on the event object. If the device has a
2537 * feature level reported by {@link ANeuralNetworksDevice_getFeatureLevel} that
2540 * If this execution contains a {@link ANEURALNETWORKS_WHILE} operation, and
2542 * then execution will be aborted and {@link ANEURALNETWORKS_MISSED_DEADLINE_*}
2543 * will be returned through {@link ANeuralNetworksEvent_wait} on the event
2546 * See {@link ANeuralNetworksExecution} for information on multithreaded usage.
2548 * See {@link ANeuralNetworksExecution_compute} for synchronous execution.
2549 * See {@link ANeuralNetworksExecution_burstCompute} for burst synchronous execution.
2550 * See {@link ANeuralNetworksExecution_startCompute} for regular asynchronous execution.