724 def __init__ (self) :
725 super (OutputThinningBlock, self).__init__ ()
726 self.setBlockName('Thinning')
727 self.addOption ('containerName', '', type=str,
728 noneAction='error',
729 info="the name of the input container.")
730 self.addOption ('postfix', '', type=str,
731 info="a postfix to apply to decorations and algorithm names. "
732 "Typically not needed here.")
733 self.addOption ('selection', '', type=str,
734 info="the name of an optional selection decoration to use.")
735 self.addOption ('selectionName', '', type=str,
736 info="the name of the selection to append this to. If left empty, "
737 "the cuts are applied to every "
738 "object within the container. Specifying a name (e.g. `loose`) "
739 "applies the cut only to those object who also pass that selection.")
740 self.addOption ('outputName', None, type=str,
741 info="an optional name for the output container.")
742 self.addOption ('deepCopy', False, type=bool,
743 info="run a deep copy of the container.")
744 self.addOption ('sortPt', False, type=bool,
745 info=r"whether to sort objects in $p_\mathrm{T}$.")
746 self.addOption ('noUniformSelection', False, type=bool,
747 info="do not run the union over all selections.")
748 self.addOption ('containerType', None, type=str,
749 info="the type of the container to thin. Only needed in AthenaMT, and only if subsequent code has a data dependency on the created container under that type.")
750