wrapSingleFrameAlgorithm

lsst.meas.base.wrapSingleFrameAlgorithm(AlgClass, executionOrder, name=None, needsMetadata=False, hasMeasureN=False, hasLogName=False, **kwds)

Expose a C++ SingleFrameAlgorithm class as a measurement plugin.

Parameters:
AlgClass : API compatible with SingleFrameAlgorithm

C++ algorithm class to convert. May either derive directly from SingleFrameAlgorithm or be an unrelated class which has the same measure, measureN and fail signatures.

executionOrder : float

The order this plugin should be run, relative to others (see BasePlugin.getExecutionOrder).

name : str, optional

Name to use when registering the algorithm. Ignored if doRegistry=False; set to generateAlgorithmName(AlgClass) if None.

needsMetadata : bool, optional

Sets whether the AlgClass’s constructor should be passed a PropertySet metadata argument.

hasMeasureN : bool, optional

Does the algorithm support simultaneous measurement of multiple sources? If True, a bool doMeasureN field will be added to the generated config class, and its value will be passed as the last argument when calling the AlgClass constructor.

hasLogName : bool, optional

True if the C++ algorithm supports logName as a constructor argument.

**kwds

Additional keyword arguments are passed to the lower-level wrapAlgorithm and wrapAlgorithmControl classes.

Returns:
singleFramePlugin : subclass of SingleFramePlugin

The new measurement plugin class.

Notes

The first three arguments to the C++ constructor are expected to be Control const & ctrl, std::string const & name, Schema & schema.

If needsMetadata is True, we also append PropertySet & metadata.

If hasMeasureN is True, we also append bool doMeasureN.

If hasLogName is True, we also append std::string logName.

If more than one of the above is True, the metadata PropertySet precedes the doMeasureN bool and the logName comes last of the three.