Helper Classes


File HepMC_helper - interface IMChelper

This file contains a set of function objects within the HepMC_helper name space.
The classes contain the function operator, which takes HepMC::particle* as an arguement.
The classes return a boolean value, and can be used as particle selectors.
They are of particular use with the STL functions, and the HepMC copy_if function.

Class MChelperWrapper

Because the STL functions will not take a virtual class as a formal parameter, MChelperWrapper has been provided.
This is a concrete class that takes a IMChelper* in its constuctor.
As it is a concrete class, it can be used with the STL functions. It delegates its functionality to the IMChelper class it contains.

Class NCutter

To aid in building up complex HepMC_helper functions from simple components, the HepMC_helper class NCutter has been provided.
This maintains a list of HepMC_helper functions, and applies each one to the HepMC::Particle passed to function operator, when this operator is called.

File FunctionObjects - interface IKinematic

This file contains function Objects which are in the SortAttribute and PartitionCondition name spaces.
A class SimpleKinematic converts from HepMC::Particle to IKinematic thus allowing access also for HepMC::Particles to the functionality described below.
These provide function operators to sort objects through the IKinematic interface.
The sorting can be done by phi,eta, pt, et, mt, delta phi, delta eta, delta R,
where the delta functions have a reference value given by an IKinematic.
The partition conditions are above or below threshold values for delta R, delta Et and delta pt, where these functions give the difference with respect to a reference IKinematic.

Class TesIO

This helper class encapsulates the functionality needed to read or write ContainedObjects,
or containers of ContainedObjects, from or to the TES.
The class provides a getMC function, which can be passed an object of type IMChelper*, thus allowing a flexible choice of which HepMC particles to process.

Back to Top