|
ATLAS Offline Software
|
Go to the documentation of this file.
19 { this->wpx() += wght.
wpx(); this->wpy() += wght.
wpy(); this->wet() += wght.
wet();
return *
this; }
22 { this->wpx() -= wght.
wpx(); this->wpy() -= wght.
wpy(); this->wet() -= wght.
wet();
return *
this; }
25 { this->wpx() *= wght.
wpx(); this->wpy() *= wght.
wpy(); this->wet() *= wght.
wet();
return *
this; }
28 { this->wpx() *=
scale; this->wpy() *=
scale; this->wet() *=
scale;
return *
this; }
40 if (
scale == 0. ) { this->wpx() = 0.; this->wpy() = 0.; this->wet() = 0.;
return *
this; }
41 else {
return this->operator*=(1./
scale); }
73 double wpx,
double wpy,
double wet,
96 :
SG::AuxElement(compDescr)
105 if((&compDescr) !=
this) {
135 bool linkset = f_setLink<MissingETBase::Types::objlink_t>(oLnk);
167 if ( this->
empty() ) {
return false; }
169 {
size_t nEnt(this->
size());
for (
size_t pIdx(0); pIdx<nEnt; ++pIdx ) { this->
f_removeContrib(pIdx); }
return true; }
177 this->
f_wpx().erase(fWpx);
179 this->
f_wpy().erase(fWpy);
181 this->
f_wet().erase(fWet);
199 if ( this->
empty() ) {
return false; }
202 size_t nEnt(this->
size());
203 for (
size_t pIdx(0); pIdx < nEnt; ++pIdx)
216 while(fLnk != this->
objectLinks().
end() && *(*fLnk) != pPart){ ++fLnk; }
227 { this->
f_wpx().clear(); this->
f_wpx().insert(this->
f_wpx().
end(),wcv.begin(),wcv.end());
return !this->
f_wpx().empty(); }
229 { this->
f_wpy().clear(); this->
f_wpy().insert(this->
f_wpy().
end(),wcv.begin(),wcv.end());
return !this->
f_wpy().empty(); }
231 { this->
f_wet().clear(); this->
f_wet().insert(this->
f_wet().
end(),wcv.begin(),wcv.end());
return !this->
f_wet().empty(); }
251 bool wasSet(this->
f_metLink().getStorableObjectPointer() !=
nullptr);
252 f_setObject<MissingET,MissingETBase::Types::metlink_t>(pmetObj,this->
f_metLink());
259 bool wasSet(this->
f_metLink().getStorableObjectPointer() !=
nullptr);
266 bool wasSet(this->
f_metLink().getStorableObjectPointer() !=
nullptr);
277 this->f_setLink<MissingETBase::Types::objlink_t>(*iLink);
297 std::vector<const IParticle*> pVec;
298 for ( objlink_vector_t::const_iterator fLnk(this->
objectLinks().
begin()); fLnk != this->
objectLinks().end(); ++fLnk) { pVec.push_back(*(*fLnk)); }
305 std::vector<const IParticle*> pVec(nEnt,(
const IParticle*)
nullptr);
306 kinePars.clear(); kinePars.resize(nEnt,Weight(0.,0.,0.));
312 std::vector<const IParticle*>
MissingETComponent_v1::objects(
const std::vector<double>*& wpxPtr,
const std::vector<double>*& wpyPtr,
const std::vector<double>*& wetPtr)
const
313 { wpxPtr = &(this->
wpx()); wpyPtr = &(this->
wpy()); wetPtr = &(this->
wet());
return this->
objects(); }
JetConstituentVector::iterator iterator
bool setMET(const MissingET *pmetObj, MissingETBase::Types::bitmask_t sw=MissingETBase::Status::clearedStatus())
Set MET object by object pointer reference.
bool setWeight(const IParticle *pPart, const Weight &wght=Weight())
Set the kinematic weight of an object contribution referenced by pointer.
static double divide(double x, double y)
Failsafe division.
bool setWpy(const std::vector< double > &wpyVector)
Set the vector of weight components
bool operator==(const MissingETComponent_v1 &contrib) const
virtual ~MissingETComponent_v1()
Assignment operator.
Weight weight(const IParticle *pPart) const
Get kinematic weight for a given object.
bool setWpx(const std::vector< double > &wcv)
Set the vector of weight components
bool resetContrib()
Reset all contribution parameters.
double wet() const
Returns .
bool toIndexedElement(BaseConstReference data, index_type elemID, IProxyDict *sg=0)
Set the link to an element given by index and pointer to container.
Weight & operator/=(const Weight &wght)
Divide two weights.
const std::vector< double > & wpx() const
Get the vector of weight components
const std::vector< double > & wet() const
Get the vector of weight components
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
static size_t invalidIndex()
Access invalid index indicator.
std::vector< weight_t > weight_vector_t
Vector type for kinematic weight containers.
uint64_t bitmask_t
Type for status word bit mask.
Class providing the definition of the 4-vector interface.
Weight & operator+=(const Weight &wght)
Add another weight.
bool setStatusWord(MissingETBase::Types::bitmask_t sw=MissingETBase::Status::clearedStatus())
Set the statusword of a MET term.
MissingETComponent_v1 & operator=(const MissingETComponent_v1 &compDescr)
size_t size() const
[Deprecated] Update all internally used ElementLink instances
std::vector< double > & f_wpx()
void createPrivateStore()
Function initialising the object to work in standalone mode.
static double wpxError()
Access error return value for kinematic weight .
std::vector< double > & f_wpy()
bool setMetLink(const MissingETBase::Types::metlink_t &metLnk)
Set the link to the MET object.
std::vector< objlink_t > objlink_vector_t
Vector of object links type.
MissingETComponent_v1(bool createStore=false)
Default constructor.
bool setWet(const std::vector< double > &wcv)
Set the vector of weight components
Principal data object for Missing ET.
bool addObject(const IParticle *pPart, const Weight &wght=Weight())
Add object (particle) from pointer reference with optional kinematic weight.
MissingETBase::Types::bitmask_t & f_statusWord()
double wpy() const
Returns .
Weight & operator-=(const Weight &wght)
Subtract another weight.
static double wpxDefault()
Access default kinematic weight .
const MissingETBase::Types::objlink_vector_t & objectLinks() const
Get the vector of links to the contributing physics or signal objects.
Container for xAOD::MissingET_v1 objects.
MissingETBase::Types::objlink_vector_t & f_objectLinks()
Non-const link reference.
static bool isEqual(double x, double y)
Test of equality.
bool setObjectLinks(const MissingETBase::Types::objlink_vector_t &objLnks)
Set the vector of links to the contributing physics or signal objects.
MissingETBase::Types::metlink_t & f_metLink()
Non-const link reference
static double wetError()
Access error return value for kinematic weight .
void makePrivateStore()
Create a new (empty) private store for this object.
MissingETBase::Types::bitmask_t statusWord() const
Get the statusword.
size_t findIndex(const IParticle *pPart) const
Find index of given object in contributing object store.
double wpx() const
Returns .
bool removeContrib()
Remove all contributions.
std::vector< double > & f_wet()
const std::vector< double > & wpy() const
Get the vector of weight components
bool operator==(const Weight &wght) const
Equality comparator.
Kinematic weight descriptor.
ElementLink< xAOD::MissingETContainer > metlink_t
Link to MissingET object.
Weight & operator*=(const Weight &wght)
Multiply two weights.
const MissingETBase::Types::metlink_t & metLink() const
Get the link to the MET object.
static double wetDefault()
Access default kinematic weight .
bool f_removeContrib(size_t pIdx)
Copy the contribution data from a source.
static Types::bitmask_t clearedStatus()
Cleared term tag accessor.
float distance(const Amg::Vector3D &p1, const Amg::Vector3D &p2)
calculates the distance between two point in 3D space
static double wpyError()
Access error return value for kinematic weight .
Namespace for generally used type definitions.
MET component descriptor contains object links and corresponding parameters.
static double wpyDefault()
Access default kinematic weight .
bool empty() const
Empty list of contributing objects indicator.
std::vector< const IParticle * > objects() const
Access contributing objects.