Container for xAOD::MissingET_v1 objects. More...
#include <MissingETContainer_v1.h>
Public Member Functions | |
MissingETContainer_v1 (SG::OwnershipPolicy ownPolicy=SG::OWN_ELEMENTS, SG::IndexTrackingPolicy trackIndices=SG::DEFAULT_TRACK_INDICES) | |
Default constructor. | |
MissingETContainer_v1 (MissingETContainer_v1::iterator first, MissingETContainer_v1::iterator last, SG::OwnershipPolicy ownPolicy=SG::OWN_ELEMENTS, SG::IndexTrackingPolicy trackIndices=SG::DEFAULT_TRACK_INDICES) | |
virtual | ~MissingETContainer_v1 () |
Base class destructor. | |
Special object access | |
const MissingET_v1 * | operator[] (const std::string &name) const |
Allocate a non-modifiable xAOD::MissingET_v1 object by name. | |
MissingET_v1 * | operator[] (const std::string &name) |
Allocate a modifiable xAOD::MissingET_v1 object by name. | |
Object search operations | |
const_iterator | find (const std::string &name) const |
Find non-modifiable MET object by name. | |
iterator | find (const std::string &name) |
Find modifiable MET object by name. | |
const_iterator | find (MissingETBase::Types::bitmask_t src) const |
Find non-modifiable MET object by source indicator. | |
iterator | find (MissingETBase::Types::bitmask_t src) |
Find modifiable MET object by source indicator. |
Container for xAOD::MissingET_v1 objects.
Each xAOD::MissingET_v1 object in the xAOD::MissingETContainer_v1 represents a contribution to MET from a given physics object or signal type. The sequence of the objects in the collection is the sequence with which the MET terms have been calculated, i.e. the object at index 0 in the collection has the highest priority with respect to its MET contribution.
This sequence can only be relied on if the components are constructed by the recommended MET tool sequence, and the xAOD::MissingET_v1 objects are recorded in this sequence. For fail safe and random access, each xAOD::MissingET_v1 object has a unique name (key) to indicate the contribution it represents. The corresponding additional functionality for this random accesss is added on top of the base class features. This includes access operators using the name of a given xAOD::MissingET object by its name and, in addition, by its source type (see MissingETBase::Source).
It is expected that at least one of the MET object identifiers (name or source indicator) is unique within the objects stored in this container (it should be the name!). There is no enforcement of this policy, though. The functions randomly accessing MET objects will return the pointer to the object with the first name or source indicator match.
xAOD::MissingETContainer_v1::MissingETContainer_v1 | ( | SG::OwnershipPolicy | ownPolicy = SG::OWN_ELEMENTS , |
|
SG::IndexTrackingPolicy | trackIndices = SG::DEFAULT_TRACK_INDICES | |||
) |
Default constructor.
Constructs a DataVector< xAOD::MissingET_v1 > container.
[in] | ownPolicy | ownership policy (optional, defaults to SG::OWN_ELEMENTS - the objects pointed to by the entries in this container are owned by the container). |
[in] | trackIndices | track indices policy (optional, defaults to SG::DEFAULT_TRACK_INDICES - track indices default). |
xAOD::MissingETContainer_v1::iterator xAOD::MissingETContainer_v1::find | ( | MissingETBase::Types::bitmask_t | src | ) |
Find modifiable MET object by source indicator.
This operation is a linear search, which requires up to N
iterations, if N
is the number of xAOD::MissingET_v1 objects in the container.
[in] | src | source indicator identifying a MET object in the container. |
xAOD::MissingETContainer_v1::const_iterator xAOD::MissingETContainer_v1::find | ( | MissingETBase::Types::bitmask_t | src | ) | const |
Find non-modifiable MET object by source indicator.
This operation is a linear search, which requires up to N
iterations, if N
is the number of xAOD::MissingET_v1 objects in the container.
[in] | src | source indicator identifying a MET object in the container. |
xAOD::MissingETContainer_v1::iterator xAOD::MissingETContainer_v1::find | ( | const std::string & | name | ) |
Find modifiable MET object by name.
This operation is a linear search, which requires up to N
iterations, if N
is the number of xAOD::MissingET_v1 objects in the container.
[in] | name | name identifying a MET object in the container. |
xAOD::MissingETContainer_v1::const_iterator xAOD::MissingETContainer_v1::find | ( | const std::string & | name | ) | const |
Find non-modifiable MET object by name.
This operation is a linear search, which requires up to N
iterations, if N
is the number of xAOD::MissingET_v1 objects in the container.
[in] | name | name identifying a MET object in the container. |
xAOD::MissingET_v1 * xAOD::MissingETContainer_v1::operator[] | ( | const std::string & | name | ) |
Allocate a modifiable xAOD::MissingET_v1 object by name.
NULL
pointer.[in] | name | reference to non-modifiable string holding the requested MET object name (key) |
const xAOD::MissingET_v1 * xAOD::MissingETContainer_v1::operator[] | ( | const std::string & | name | ) | const |
Allocate a non-modifiable xAOD::MissingET_v1 object by name.
NULL
pointer.[in] | name | reference to non-modifiable string holding the requested MET object name (key) |