MegaPrime#
- class lsst.obs.cfht.MegaPrime(**kwargs)#
Bases:
InstrumentAttributes Summary
Name of the package containing the text curated calibration files.
Instrument specific name to use when locating a policy or configuration file in the file system.
Methods Summary
Retrieve the cameraGeom representation of this instrument.
getName()Return the short (dimension) name for this instrument.
getRawFormatter(dataId)Return the Formatter class that should be used to read a particular raw file.
register(registry[, update])Insert instrument, and other relevant records into
Registry.Attributes Documentation
- filterDefinitions = <lsst.obs.base.filters.FilterDefinitionCollection object>#
- obsDataPackage: str | None = None#
Name of the package containing the text curated calibration files. Usually a obs _data package. If
Noneno curated calibration files will be read. (str)
- policyName: str | None = 'megacam'#
Instrument specific name to use when locating a policy or configuration file in the file system.
Methods Documentation
- getCamera()#
Retrieve the cameraGeom representation of this instrument.
This is a temporary API that should go away once
obspackages have a standardized approach to writing versioned cameras to a Gen3 repo.
- classmethod getName()#
Return the short (dimension) name for this instrument.
This is not (in general) the same as the class name - it’s what is used as the value of the “instrument” field in data IDs, and is usually an abbreviation of the full name.
- getRawFormatter(dataId)#
Return the Formatter class that should be used to read a particular raw file.
Parameters#
- dataId
DataId Dimension-based ID for the raw file or files being ingested.
Returns#
- formatter
lsst.daf.butler.Formatterclass Class to be used that reads the file into the correct Python object for the raw data.
- dataId
- register(registry, update=False)#
Insert instrument, and other relevant records into
Registry.Parameters#
- registry
lsst.daf.butler.Registry Registry client for the data repository to modify.
- update
bool, optional If
True(Falseis default), update existing records if they differ from the new ones.
Raises#
- lsst.daf.butler.registry.ConflictingDefinitionError
Raised if any existing record has the same key but a different definition as one being registered.
Notes#
New records can always be added by calling this method multiple times, as long as no existing records have changed (if existing records have changed,
update=Truemust be used). Old records can never be removed by this method.Implementations should guarantee that registration is atomic (the registry should not be modified if any error occurs) and idempotent at the level of individual dimension entries; new detectors and filters should be added, but changes to any existing record should not be. This can generally be achieved via a block like
with registry.transaction(): registry.syncDimensionData("instrument", ...) registry.syncDimensionData("detector", ...) self.registerFilters(registry)
- registry