#### Description:

This is a set of functions for adding vector values to a KeyMap. You should use a function which matches the data type of the data you wish to add to the KeyMap by replacing <X > in the generic function name astMapPut1 <X > by an appropriate 1-character type code (see the `"` Data Type Codes`"` section below for the code appropriate to each supported data type).

#### Synopsis

void astMapPut1 <X >( AstKeyMap ∗this, const char ∗key, int size, const <X >type value[], const char ∗comment );

#### Parameters:

##### this

Pointer to the KeyMap in which to store the supplied values.

##### key

A character string to be stored with the values, which can later be used to identify the values. Trailing spaces are ignored. The supplied string is converted to upper case before use if the KeyCase attribute is currently set to zero.

##### size

The number of elements in the supplied array of values.

##### value

The array of values to be stored. The data type of this value should match the 1-character type code appended to the function name (e.g. if you are using astMapPut1A, the type of this value should be `"` array of pointers to AstObject`"` ).

##### comment

A pointer to a null-terminated comment string to be stored with the values. A NULL pointer may be supplied, in which case no comment is stored.

#### Notes:

- If the supplied key is already in use in the KeyMap, the new values will replace the old values.

#### Data Type Codes

To select the appropriate function, you should replace <X > in the generic function name astMapPut1 <X > with a 1-character data type code, so as to match the data type <X >type of the data you are processing, as follows:

- D: double

- F: float

- I: int

- K: int64_t

- C: `"` const`"` pointer to null terminated character string

- A: Pointer to AstObject

- P: Generic `"` void ∗`"` pointer

- S: short int

- B: Unsigned byte (i.e. char)

For example, astMapPut1D would be used to store `"` double`"` values, while astMapPut1I would be used to store `"` int`"` , etc.

Note that KeyMaps containing generic `"` void ∗`"` pointers cannot be written out using astShow or astWrite. An error will be reported if this is attempted.

Copyright (C) 2021 East Asian Observatory