ATLAS Offline Software
Public Member Functions | List of all members
IAssocFilter< OBJ, ASSO > Class Template Referenceabstract

#include <IAssocFilter.h>

Inheritance diagram for IAssocFilter< OBJ, ASSO >:
Collaboration diagram for IAssocFilter< OBJ, ASSO >:

Public Member Functions

 IAssocFilter ()
 Default constructor: More...
 
 IAssocFilter (const IAssocFilter< OBJ, ASSO > &rhs)
 Copy constructor: More...
 
virtual ~IAssocFilter ()
 Destructor: More...
 
IAssocFilteroperator= (const IAssocFilter< OBJ, ASSO > &rhs)
 Assignment operator: More...
 
virtual bool isAccepted (const OBJ *object, const ASSO *associated) const =0
 Main filter method. More...
 
virtual void reset ()=0
 Reset the range cuts for the internal variables (px,py,...) After calling this method, the filter will accept any association. More...
 
virtual void setFilter (const IFilterCuts *ifilter)=0
 Pure virtual function (to be overloaded by each of the children classes) to copy the cut properties of a given filter to another one. More...
 

Detailed Description

template<typename OBJ, typename ASSO>
class IAssocFilter< OBJ, ASSO >

(templated) interface class to manage the construction/filtering of associations. It is the equivalent (but for associations) of the IFilter<T> class. The method of interest here (which will be overloaded by derived classes) is the "bool isAccepted(obj,assoc)" method which returns true if the pair of objects can be associated wrt the current set of filter cuts.

Definition at line 32 of file IAssocFilter.h.

Constructor & Destructor Documentation

◆ IAssocFilter() [1/2]

template<typename OBJ , typename ASSO >
IAssocFilter< OBJ, ASSO >::IAssocFilter

Default constructor:

Definition at line 89 of file IAssocFilter.h.

89  :
90  IFilterCuts()
91 {}

◆ IAssocFilter() [2/2]

template<typename OBJ , typename ASSO >
IAssocFilter< OBJ, ASSO >::IAssocFilter ( const IAssocFilter< OBJ, ASSO > &  rhs)

Copy constructor:

Definition at line 94 of file IAssocFilter.h.

94  :
95  IFilterCuts(rhs)
96 {}

◆ ~IAssocFilter()

template<typename OBJ , typename ASSO >
IAssocFilter< OBJ, ASSO >::~IAssocFilter
virtual

Destructor:

Definition at line 99 of file IAssocFilter.h.

100 {}

Member Function Documentation

◆ isAccepted()

template<typename OBJ , typename ASSO >
virtual bool IAssocFilter< OBJ, ASSO >::isAccepted ( const OBJ *  object,
const ASSO *  associated 
) const
pure virtual

Main filter method.

This method takes the decision whether or not the filter has to accept the association between both objects. It returns true or false accordingly.

Implemented in AssocFilter< OBJ, ASSO >, and AssocFilter< IParticle, IParticle >.

◆ operator=()

template<typename OBJ , typename ASSO >
IAssocFilter< OBJ, ASSO > & IAssocFilter< OBJ, ASSO >::operator= ( const IAssocFilter< OBJ, ASSO > &  rhs)

Assignment operator:

Definition at line 104 of file IAssocFilter.h.

105 {
106  if ( this != &rhs ) {
108  }
109  return *this;
110 }

◆ reset()

template<typename OBJ , typename ASSO >
virtual void IAssocFilter< OBJ, ASSO >::reset ( )
pure virtual

Reset the range cuts for the internal variables (px,py,...) After calling this method, the filter will accept any association.

Implemented in AssocFilter< OBJ, ASSO >, and AssocFilter< IParticle, IParticle >.

◆ setFilter()

virtual void IFilterCuts::setFilter ( const IFilterCuts ifilter)
pure virtualinherited

Pure virtual function (to be overloaded by each of the children classes) to copy the cut properties of a given filter to another one.

It copies the properties of ifilter to the current IFilterCuts object.

Parameters
ifilterthe IFilterCuts which holds a set of properties one wants to copy to the current IFilterCuts object.

Implemented in AssocFilter< OBJ, ASSO >, AssocFilter< IParticle, IParticle >, MomentumFilter< T >, McVtxFilter, PdgIdFilter< T >, and ChargeFilter< T >.


The documentation for this class was generated from the following file:
IFilterCuts::IFilterCuts
IFilterCuts()
Default constructor:
Definition: IFilterCuts.h:69
IFilterCuts::operator=
IFilterCuts & operator=(const IFilterCuts &rhs)
Assignment operator:
Definition: IFilterCuts.h:78