761 def __init__ (self) :
762 super (OutputThinningBlock, self).__init__ ()
763 self.setBlockName('Thinning')
764 self.addOption ('containerName', '', type=str,
765 noneAction='error',
766 info="the name of the input container.",
767 meta={'role':'containerRef'})
768 self.addOption ('postfix', '', type=str,
769 info="a postfix to apply to decorations and algorithm names. "
770 "Typically not needed here.")
771 self.addOption ('selection', '', type=str,
772 info="the name of an optional selection decoration to use.",
773 meta={'role':'selection'})
774 self.addOption ('selectionName', '', type=str,
775 info="the name of the selection to append this to. If left empty, "
776 "the cuts are applied to every "
777 "object within the container. Specifying a name (e.g. `loose`) "
778 "applies the cut only to those object who also pass that selection.",
779 meta={'role':'selection'})
780 self.addOption ('outputName', None, type=str,
781 info="an optional name for the output container.",
782 meta={'role':'container'})
783 self.addOption ('deepCopy', False, type=bool,
784 info="run a deep copy of the container.")
785 self.addOption ('sortPt', False, type=bool,
786 info=r"whether to sort objects in $p_\mathrm{T}$.")
787 self.addOption ('noUniformSelection', False, type=bool,
788 info="do not run the union over all selections.")
789 self.addOption ('containerType', None, type=str,
790 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.")
791