FitsImageFormatter¶
- class lsst.obs.base.formatters.fitsExposure.FitsImageFormatter(fileDescriptor: FileDescriptor, dataId: DataCoordinate, writeParameters: dict[str, Any] | None = None, writeRecipes: dict[str, Any] | None = None)¶
- Bases: - StandardFitsImageFormatterBase- Concrete formatter for reading/writing - Imagefrom/to FITS.- Attributes Summary - The parameters passed by the butler user, after checking them against the storage class and transforming - Noneinto an empty- dict(- dict).- Return Data ID associated with this formatter ( - DataCoordinate).- File descriptor associated with this formatter ( - FileDescriptor).- The reader object that backs this formatter's read operations. - Set of all extensions supported by this formatter. - Parameters understood by this formatter that can be used to control how a dataset is serialized. - Support all parameters. - Parameters to use when writing out datasets. - Detailed write Recipes indexed by recipe name. - Methods Summary - Indicate if this formatter can format from bytes. - fromBytes(serializedDataset[, component])- Read serialized data into a Dataset or its component. - getImageCompressionSettings(recipeName)- Retrieve the relevant compression settings for this recipe. - makeUpdatedLocation(location)- Return a new - Locationupdated with this formatter's extension.- name()- Return the fully qualified name of the formatter. - Return the path that would be returned by write. - read([component])- Read a Dataset. - readComponent(component)- Read a component dataset. - readFull()- Read the full dataset (while still accounting for parameters). - segregateParameters([parameters])- Segregate the supplied parameters. - toBytes(inMemoryDataset)- Serialize the Dataset to bytes based on formatter. - validateExtension(location)- Check the extension of the provided location for compatibility. - validateWriteRecipes(recipes)- Validate supplied recipes for this formatter. - write(inMemoryDataset)- Write a Python object to a file. - Attributes Documentation - checked_parameters¶
- The parameters passed by the butler user, after checking them against the storage class and transforming - Noneinto an empty- dict(- dict).- This is computed on first use and then cached. It should never be accessed when writing. Subclasses that need additional checking should delegate to - superand then check the result before returning it.
 - dataId¶
- Return Data ID associated with this formatter ( - DataCoordinate).
 - extension = '.fits'¶
 - fileDescriptor¶
- File descriptor associated with this formatter ( - FileDescriptor).- Read-only property. 
 - reader¶
- The reader object that backs this formatter’s read operations. - This is computed on first use and then cached. It should never be accessed when writing. 
 - supportedExtensions: ClassVar[Set[str]] = frozenset({'.fit', '.fits', '.fits.fz', '.fits.gz', '.fz'})¶
- Set of all extensions supported by this formatter. - Only expected to be populated by Formatters that write files. Any extension assigned to the - extensionproperty will be automatically included in the list of supported extensions.
 - supportedWriteParameters: ClassVar[Set[str] | None] = frozenset({'recipe'})¶
- Parameters understood by this formatter that can be used to control how a dataset is serialized. - Noneindicates that no parameters are supported.
 - writeParameters¶
- Parameters to use when writing out datasets. 
 - writeRecipes¶
- Detailed write Recipes indexed by recipe name. 
 - Methods Documentation - fromBytes(serializedDataset: bytes, component: str | None = None) object¶
- Read serialized data into a Dataset or its component. - Parameters:
- Returns:
- inMemoryDatasetobject
- The requested data as a Python object. The type of object is controlled by the specific formatter. 
 
- inMemoryDataset
 
 - getImageCompressionSettings(recipeName)¶
- Retrieve the relevant compression settings for this recipe. 
 - makeUpdatedLocation(location: Location) Location¶
- Return a new - Locationupdated with this formatter’s extension.- Parameters:
- locationLocation
- The location to update. 
 
- location
- Returns:
- updatedLocation
- A new - Locationwith a new file extension applied.
 
- updated
- Raises:
- NotImplementedError
- Raised if there is no - extensionattribute associated with this formatter.
 
 - Notes - This method is available to all Formatters but might not be implemented by all formatters. It requires that a formatter set an - extensionattribute containing the file extension used when writing files. If- extensionis- Nonethe supplied file will not be updated. Not all formatters write files so this is not defined in the base class.
 - classmethod name() str¶
- Return the fully qualified name of the formatter. - Returns:
- namestr
- Fully-qualified name of formatter class. 
 
- name
 
 - predictPath() str¶
- Return the path that would be returned by write. - Does not write any data file. - Uses the - FileDescriptorassociated with the instance.- Returns:
- pathstr
- Path within datastore that would be associated with the location stored in this - Formatter.
 
- path
 
 - read(component=None)¶
- Read a Dataset. 
 - readComponent(component)¶
- Read a component dataset. - Parameters:
- componentstr, optional
- Component to read from the file. 
 
- component
- Returns:
- objcomponent-dependent
- In-memory component object. 
 
- Raises:
- KeyError
- Raised if the requested component cannot be handled. 
 
 
 - readFull()¶
- Read the full dataset (while still accounting for parameters). - Returns:
- objcomponent-dependent
- In-memory component object. 
 
 
 - segregateParameters(parameters: dict[str, Any] | None = None) tuple[dict, dict]¶
- Segregate the supplied parameters. - This splits the parameters into those understood by the formatter and those not understood by the formatter. - Any unsupported parameters are assumed to be usable by associated assemblers. - Parameters:
- Returns:
 
 - classmethod validateExtension(location: Location) None¶
- Check the extension of the provided location for compatibility. - Parameters:
- locationLocation
- Location from which to extract a file extension. 
 
- location
- Raises:
- NotImplementedError
- Raised if file extensions are a concept not understood by this formatter. 
- ValueError
- Raised if the formatter does not understand this extension. 
 
 - Notes - This method is available to all Formatters but might not be implemented by all formatters. It requires that a formatter set an - extensionattribute containing the file extension used when writing files. If- extensionis- Noneonly the set of supported extensions will be examined.
 - classmethod validateWriteRecipes(recipes)¶
- Validate supplied recipes for this formatter. - The recipes are supplemented with default values where appropriate. - TODO: replace this custom validation code with Cerberus (DM-11846)