index_files¶
- astro_metadata_translator.indexing.index_files(files: Sequence[str], root: str | None, hdrnum: int, print_trace: bool, content: str, outstream: IO | None = None) tuple[collections.abc.MutableMapping[str, str | collections.abc.MutableMapping[str, Any]], list[str], list[str]] ¶
Create an index from the supplied files.
No file is written. The Python structure returned is suitable for writing.
- Parameters:
- filesiterable of
str
Paths to the files to be indexed. They do not have to all be in a single directory but all content will be indexed into a single index.
- root
str
Directory root that can be combined with each file (if the supplied) file is relative. Will be ignored if
None
.- hdrnum
int
The HDU number to read. The primary header is always read and merged with the header from this HDU.
- print_trace
bool
If there is an error reading the file and this parameter is
True
, a full traceback of the exception will be reported. IfFalse
prints a one line summary of the error condition. IfNone
the exception will be allowed.- content
str
Form of data to write in index file. Options are:
translated
(default) to write ObservationInfo to the index;metadata
to write native metadata headers to the index. The index file is called{mode}_index.json
.- outstream
io.StringIO
, optional Output stream to use for standard messages. Defaults to
None
which uses the default output stream.
- filesiterable of
- Returns:
- file_index
dict
of [str
,dict
] The headers in form suitable for writing to an index. The keys will be
__COMMON__
for shared content,__CONTENT_
to record the content mode used to construct the index, and paths to the files. The paths will be the supplied paths and will not include any suppliedroot
.- okay
list
ofstr
All the files that were processed successfully.
- failed
list
ofstr
All the files that could not be processed. Will be empty if
print_trace
is notNone
.
- file_index