Skip to content

WIP: jet hypo - generalisation of jet hypo Filters

Peter Sherwood requested to merge peter/athena:master-22914-1 into master

Filters are used to reduce the number of jets from an input jet vector. Until now the filters have been confined to those that use a sequence of capacity = 1 Conditions to make the selection. Dummy filtering (ie no selection) was arranged by having the dummy filter have no conditions.

A new use case has come up where filtering is needed, but cannot be done as described above. A new oure interface is now used ot allow different filtering implementations. Dummy filtering is now down with a dedicated named implementation class.

Filtering currently is done both on the input vector beore the hypo code proper is run, and as a jet selector to Fast Reducer leaf Conditions

Other changes: Repeated Condition can now invert its decision base on a configurable boolean flag. ConditionFilter uses Repeated Condition, rather than CompoundCondition directly

New interfaces: IHypoJetVectorFilter.h ITrigHypoJetVectorFilterConfig.h

Pass through filtering PassThroughFilter.h, cxx TrigJetPassThroughFilterConfig.h, cxx

New filter configurers TrigJetConditionFilterConfig.cxx, h TrigJetPassThroughFilterConfig.cxx, h TrigJetRangeFilterConfig.cxx, h TrigJetHypoToolHelperNoGrouper.h, cxx

Condition inversion: RepeatedCondition.cxx, h TrigJetConditionConfig_repeated.cxx, h ITrigJetRepeatedConditionConfig.h

Move to use RepeatedCondition ConditionFilter.cxx, h TrigJetHypoToolConfig_fastreduction.cxx

ATR-22914

@jbossios @valentem @peter

Edited by Peter Sherwood

Merge request reports