25 import lsst.pex.config 
as pexConfig
 
   27 __all__ = [
"DecamNullIsrConfig", 
"DecamNullIsrTask"]
 
   31     doWrite = pexConfig.Field(
 
   33         doc=
"Persist loaded data as a postISRCCD? The default is false, to avoid duplicating data.",
 
   36     datasetType = pexConfig.Field(
 
   38         doc=
"Dataset type for input data; read by ProcessCcdTask; users will typically leave this alone",
 
   44     """Load an "instcal" exposure as a post-ISR CCD exposure. 
   46     Load "instcal" exposures from the community pipeline as a post-ISR exposure, 
   47     and optionally persist it as a `postISRCCD`. 
   49     This is used to retarget the `isr` subtask in `ProcessCcdTask` when you prefer to use 
   50     the community pipeline instead of the LSST software stack to perform ISR on DECam images. 
   52     ConfigClass = DecamNullIsrConfig
 
   57         """Load a DECam community pipeline "instcal" exposure as a post-ISR CCD exposure 
   61         sensorRef : `lsst.daf.persistence.butlerSubset.ButlerDataRef` 
   62             Butler data reference for post-ISR exposure. 
   67             A pipeBase.Struct with fields: 
   69             - ``exposure`` : Exposure after application of ISR: the "instcal" exposure, unchanged. 
   72         self.log.
info(
"Loading DECam community pipeline file %s" % (sensorRef.dataId))
 
   74         exposure = sensorRef.get(
"instcal", immediate=
True)
 
   75         if self.config.doWrite:
 
   76             sensorRef.put(exposure, 
"postISRCCD")
 
   78         return pipeBase.Struct(