UnpackApdbFlags

class lsst.ap.association.UnpackApdbFlags(flag_map_file, table_name)

Bases: object

Class for unpacking bits from integer flag fields stored in the Apdb.

Attributes:
flag_map_file : str

Absolute or relative path to a yaml file specifiying mappings of flags to integer bits.

table_name : str

Name of the Apdb table the integer bit data are coming from.

Methods Summary

flagExists(flagName[, columnName]) Check if named flag is in the bitpacked flag set.
makeFlagBitMask(flagNames[, columnName]) Return a bitmask corresponding to the supplied flag names.
unpack(input_flag_values, flag_name) Determine individual boolean flags from an input array of unsigned ints.

Methods Documentation

flagExists(flagName, columnName='flags')

Check if named flag is in the bitpacked flag set.

flagName : str
Flag name to search for.
columnName : str, optional
Name of bitpacked flag column to search in.
Returns:
flagExists : bool

True if flagName is present in columnName.

Raises:
ValueError

Raised if columnName is not defined.

makeFlagBitMask(flagNames, columnName='flags')

Return a bitmask corresponding to the supplied flag names.

flagNames : list [str]
Flag names to include in the bitmask.
columnName : str, optional
Name of bitpacked flag column.
Returns:
bitmask : np.unit64

Bitmask corresponding to the supplied flag names given the loaded configuration.

Raises:
ValueError

Raised if a flag in flagName is not included in columnName.

unpack(input_flag_values, flag_name)

Determine individual boolean flags from an input array of unsigned ints.

Parameters:
input_flag_values : array-like of type uint

Array of integer flags to unpack.

flag_name : str

Apdb column name of integer flags to unpack. Names of packed int flags are given by the flag_map_file.

Returns:
output_flags : numpy.ndarray

Numpy named tuple of booleans.