# heliaCORE.Internal.arm_nn_axis_copy_common

## arm_nn_axis_copy_plan

`function` · `c`

```c
static arm_cmsis_nn_status arm_nn_axis_copy_plan(
    const int32_t *shape,
    const int32_t dims,
    const int32_t axis,
    const int32_t inner_begin,
    const int32_t axis_len,
    const int32_t num,
    const int32_t *sizes,
    int32_t *outer,
    int32_t *inner
)
```

**Parameters**

| Name | Type | Direction | Description |
| --- | --- | --- | --- |
| shape | const int32_t * |  |  |
| dims | const int32_t |  |  |
| axis | const int32_t |  |  |
| inner_begin | const int32_t |  |  |
| axis_len | const int32_t |  |  |
| num | const int32_t |  |  |
| sizes | const int32_t * |  |  |
| outer | int32_t * |  |  |
| inner | int32_t * |  |  |

Source: `Include/Internal/arm_nn_axis_copy_common.h:45`

## arm_nn_axis_copy_ptrs_ok

`function` · `c`

```c
static int32_t arm_nn_axis_copy_ptrs_ok(const void *const *ptrs, const int32_t num, const int32_t total)
```

**Parameters**

| Name | Type | Direction | Description |
| --- | --- | --- | --- |
| ptrs | const void *const * |  |  |
| num | const int32_t |  |  |
| total | const int32_t |  |  |

Source: `Include/Internal/arm_nn_axis_copy_common.h:123`

## ARM_NN_AXIS_COPY_DEFINE

`macro` · `c`

```c
#define ARM_NN_AXIS_COPY_DEFINE(SUFFIX, TYPE)
```

**Parameters**

| Name | Type | Direction | Description |
| --- | --- | --- | --- |
| SUFFIX |  |  |  |
| TYPE |  |  |  |

Source: `Include/Internal/arm_nn_axis_copy_common.h:145`

## arm_nn_axis_scatter_f32

`function` · `c`

```c
static void arm_nn_axis_scatter_f32(
    const float32_t *packed,
    const int32_t outer,
    const int32_t num,
    const int32_t *sizes,
    const int32_t inner,
    float32_t *const *slices
)
```

**Parameters**

| Name | Type | Direction | Description |
| --- | --- | --- | --- |
| packed | const float32_t * |  |  |
| outer | const int32_t |  |  |
| num | const int32_t |  |  |
| sizes | const int32_t * |  |  |
| inner | const int32_t |  |  |
| slices | float32_t *const * |  |  |

Source: `Include/Internal/arm_nn_axis_copy_common.h:198`

## arm_nn_axis_gather_f32

`function` · `c`

```c
static void arm_nn_axis_gather_f32(
    const float32_t *const *slices,
    const int32_t outer,
    const int32_t num,
    const int32_t *sizes,
    const int32_t inner,
    float32_t *packed
)
```

**Parameters**

| Name | Type | Direction | Description |
| --- | --- | --- | --- |
| slices | const float32_t *const * |  |  |
| outer | const int32_t |  |  |
| num | const int32_t |  |  |
| sizes | const int32_t * |  |  |
| inner | const int32_t |  |  |
| packed | float32_t * |  |  |

Source: `Include/Internal/arm_nn_axis_copy_common.h:198`

## arm_nn_axis_scatter_f16

`function` · `c`

```c
static void arm_nn_axis_scatter_f16(
    const float16_t *packed,
    const int32_t outer,
    const int32_t num,
    const int32_t *sizes,
    const int32_t inner,
    float16_t *const *slices
)
```

**Parameters**

| Name | Type | Direction | Description |
| --- | --- | --- | --- |
| packed | const float16_t * |  |  |
| outer | const int32_t |  |  |
| num | const int32_t |  |  |
| sizes | const int32_t * |  |  |
| inner | const int32_t |  |  |
| slices | float16_t *const * |  |  |

Source: `Include/Internal/arm_nn_axis_copy_common.h:201`

## arm_nn_axis_gather_f16

`function` · `c`

```c
static void arm_nn_axis_gather_f16(
    const float16_t *const *slices,
    const int32_t outer,
    const int32_t num,
    const int32_t *sizes,
    const int32_t inner,
    float16_t *packed
)
```

**Parameters**

| Name | Type | Direction | Description |
| --- | --- | --- | --- |
| slices | const float16_t *const * |  |  |
| outer | const int32_t |  |  |
| num | const int32_t |  |  |
| sizes | const int32_t * |  |  |
| inner | const int32_t |  |  |
| packed | float16_t * |  |  |

Source: `Include/Internal/arm_nn_axis_copy_common.h:201`
