826 def __init__ (self) :
827 super().__init__ ()
828 self.setBlockName('Thinning')
829 self.addOption ('containerName', '', type=str,
830 noneAction='error',
831 info="the name of the input container.",
832 meta={'role':'containerRef'})
833 self.addOption ('postfix', '', type=str,
834 info="a postfix to apply to decorations and algorithm names. "
835 "Typically not needed here.")
836 self.addOption ('selection', '', type=str,
837 info="the name of an optional selection decoration to use.",
838 meta={'role':'selection'})
839 self.addOption ('selectionName', '', type=str,
840 info="the name of the selection to append this to. If left empty, "
841 "the cuts are applied to every "
842 "object within the container. Specifying a name (e.g. `loose`) "
843 "applies the cut only to those object who also pass that selection.",
844 meta={'role':'selection'})
845 self.addOption ('outputName', None, type=str,
846 info="an optional name for the output container.",
847 meta={'role':'container'})
848 self.addOption ('deepCopy', False, type=bool,
849 info="run a deep copy of the container.")
850 self.addOption ('sortPt', False, type=bool,
851 info=r"whether to sort objects in $p_\mathrm{T}$.")
852 self.addOption ('noUniformSelection', False, type=bool,
853 info="do not run the union over all selections.")
854 self.addOption ('containerType', None, type=str,
855 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.")
856