xAOD::MissingETContainer_v1 Class Reference

Container for xAOD::MissingET_v1 objects. More...

#include <MissingETContainer_v1.h>

Inheritance diagram for xAOD::MissingETContainer_v1:
DataVector< MissingET_v1 > KeepFirstTemplateArguments Base

List of all members.

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_v1operator[] (const std::string &name) const
 Allocate a non-modifiable xAOD::MissingET_v1 object by name.
MissingET_v1operator[] (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.

Detailed Description

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.


Constructor & Destructor Documentation

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.

Parameters:
[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).

Member Function Documentation

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.

Returns:
Iterator with a valid reference to a modifiable xAOD::MissingET_v1 object, if found, else DataVector<xAOD::MissingET_v1>::end().
Parameters:
[in] src source indicator identifying a MET object in the container.
Note:
The iterator referencing the first object with a matching key is returned, if any.
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.

Returns:
Const iterator with a valid reference to a non-modifiable xAOD::MissingET_v1 object, if found, else DataVector<xAOD::MissingET_v1>::end() const.
Parameters:
[in] src source indicator identifying a MET object in the container.
Note:
The iterator referencing the first object with a matching key is returned, if any.
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.

Returns:
Iterator with a valid reference to a modifiable xAOD::MissingET_v1 object, if found, else DataVector<xAOD::MissingET_v1>::end().
Parameters:
[in] name name identifying a MET object in the container.
Note:
The iterator referencing the first object with a matching name is returned, if any.
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.

Returns:
Const iterator with a valid reference to a non-modifiable xAOD::MissingET_v1 object, if found, else DataVector<xAOD::MissingET_v1>::end() const.
Parameters:
[in] name name identifying a MET object in the container.
Note:
The iterator referencing the first object with a matching name is returned, if any.
xAOD::MissingET_v1 * xAOD::MissingETContainer_v1::operator[] ( const std::string &  name  ) 

Allocate a modifiable xAOD::MissingET_v1 object by name.

Returns:
Valid pointer to a modifiable xAOD::MissingET_v1 object with requested name if found, else a NULL pointer.
Parameters:
[in] name reference to non-modifiable string holding the requested MET object name (key)
Note:
The pointer to the first object with a matching name is returned.
const xAOD::MissingET_v1 * xAOD::MissingETContainer_v1::operator[] ( const std::string &  name  )  const

Allocate a non-modifiable xAOD::MissingET_v1 object by name.

Returns:
Valid pointer to a non-modifiable xAOD::MissingET_v1 object with requested name if found, else a NULL pointer.
Parameters:
[in] name reference to non-modifiable string holding the requested MET object name (key)
Note:
The pointer to the first object with a matching name is returned.

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 15 Apr 2017 for RootCore Packages by  doxygen 1.6.1