26 defineParameter(
"InputWidth", 3);
27 defineParameter(
"NumResultBits", 2);
28 defineParameter(
"MinET",1);
29 setNumberOutputBits(2);
37 p_NumberLeading1 = parameter(
"InputWidth").value();
38 p_MinET = parameter(
"MinET").value();
49 const std::vector<TCS::TOBArray *> & output,
53 return process(input,output,decision);
60 const std::vector<TCS::TOBArray *> & output,
64 if(input.size() == 1) {
67 unsigned int nLeading = p_NumberLeading1;
72 std::vector<TCS::GenericTOB*> TOBvector;
75 tob1 != input[0]->end() &&
distance( input[0]->
begin(), tob1) < nLeading;
79 if(
parType_t((*tob1)->Et()) <= p_MinET )
continue;
84 TOBvector.push_back( *tob1 );
91 if (nmuon == 0 or nmuon == 2) decision.
setBit( 0,
false );
92 if (nmuon == 1 or nmuon > 2) decision.
setBit( 0,
true );
93 if (nmuon < 2 ) decision.
setBit( 1,
false );
94 if (nmuon > 1 ) decision.
setBit( 1,
true );
101 TCS_EXCEPTION(
"Multiplicity alg must have 1 input, but got " << input.size());