laura is hosted by Hepforge, IPPP Durham
Laura++  v3r3
A maximum likelihood fitting package for performing Dalitz-plot analysis.

Class for defining the properties of a resonant particle. More...

#include <LauResonanceInfo.hh>

Public Member Functions

 LauResonanceInfo (const TString &name, const Double_t mass, const Double_t width, const Int_t spin, const Int_t charge, const LauBlattWeisskopfFactor::BlattWeisskopfCategory bwCategory, const Double_t bwRadius=4.0)
 Constructor. More...
 
virtual ~LauResonanceInfo ()
 Destructor. More...
 
TString getName () const
 Retrieve the name of the resonant particle. More...
 
TString getSanitisedName () const
 Retrieve the sanitised name of the resonant particle. More...
 
LauParametergetMass () const
 Retrieve the mass of the resonant particle. More...
 
LauParametergetWidth () const
 Retrieve the width of the resonant particle. More...
 
UInt_t getSpin () const
 Retrieve the spin of the resonant particle. More...
 
Int_t getCharge () const
 Retrieve the charge of the resonant particle. More...
 
LauBlattWeisskopfFactor::BlattWeisskopfCategory getBWCategory () const
 Retrieve the BW category of the resonant particle. More...
 
Double_t getBWRadius () const
 Retrieve the BW radius of the resonant particle. More...
 
LauResonanceInfocreateChargeConjugate ()
 Create the charge conjugate particle info record. More...
 
LauResonanceInfocreateSharedParameterRecord (const TString &name)
 Create another record that will share parameters with this one. More...
 
LauParametergetExtraParameter (const TString &parName)
 Retrieve an extra parameter of the resonance. More...
 
void addExtraParameter (LauParameter *param, const Bool_t independentPar=kFALSE)
 Add an extra parameter of the resonance. More...
 

Protected Member Functions

void addCloneOfExtraParameter (LauParameter *param, const Bool_t copyNotClone=kFALSE)
 Add a clone of an extra parameter of the resonance. More...
 

Private Member Functions

 LauResonanceInfo (const LauResonanceInfo &other)
 Copy constructor (not implemented) More...
 
 LauResonanceInfo (const LauResonanceInfo &other, const TString &newName, const Int_t newCharge)
 Copy constructor (with new name and charge) More...
 
LauResonanceInfooperator= (const LauResonanceInfo &other)
 Copy assignment operator (not implemented) More...
 
void sanitiseName ()
 Create the sanitised name by removing characters that are illegal in TBranch names. More...
 

Private Attributes

TString name_
 The name of the resonant particle. More...
 
TString sanitisedName_
 The name of the resonant particle with illegal characters removed. More...
 
LauParametermass_
 The mass of the resonant particle. More...
 
LauParameterwidth_
 The width of the resonant particle. More...
 
UInt_t spin_
 The spin of the resonant particle. More...
 
Int_t charge_
 The charge of the resonant particle. More...
 
LauBlattWeisskopfFactor::BlattWeisskopfCategory bwCategory_
 The Blatt-Weisskopf barrier factor category. More...
 
Double_t bwRadius_
 The Blatt-Weisskopf radius of the resonant particle. More...
 
LauResonanceInfoconjugate_
 The conjugate info object. More...
 
std::vector< LauResonanceInfo * > sharedParRecords_
 Other info objects that share parameters with this one. More...
 
std::set< LauParameter * > extraPars_
 Extra parameters. More...
 

Detailed Description

Class for defining the properties of a resonant particle.

Definition at line 32 of file LauResonanceInfo.hh.

Constructor & Destructor Documentation

LauResonanceInfo::LauResonanceInfo ( const TString &  name,
const Double_t  mass,
const Double_t  width,
const Int_t  spin,
const Int_t  charge,
const LauBlattWeisskopfFactor::BlattWeisskopfCategory  bwCategory,
const Double_t  bwRadius = 4.0 
)

Constructor.

Parameters
[in]namethe name of the resonant particle
[in]massthe mass of the resonant particle
[in]widththe width of the resonant particle
[in]spinthe spin of the resonant particle
[in]chargethe charge of the resonant particle
[in]bwCategorythe Blatt-Weisskopf barrier factor category
[in]bwRadiusthe Blatt-Weisskopf radius of the resonant particle

Definition at line 23 of file LauResonanceInfo.cc.

LauResonanceInfo::~LauResonanceInfo ( )
virtual

Destructor.

Definition at line 42 of file LauResonanceInfo.cc.

LauResonanceInfo::LauResonanceInfo ( const LauResonanceInfo other)
private

Copy constructor (not implemented)

LauResonanceInfo::LauResonanceInfo ( const LauResonanceInfo other,
const TString &  newName,
const Int_t  newCharge 
)
private

Copy constructor (with new name and charge)

Definition at line 53 of file LauResonanceInfo.cc.

Member Function Documentation

void LauResonanceInfo::addCloneOfExtraParameter ( LauParameter param,
const Bool_t  copyNotClone = kFALSE 
)
protected

Add a clone of an extra parameter of the resonance.

Parameters
[in]paramthe extra parameter to be added
[in]copyNotCloneshould we create an unlinked copy instead of cloning - default is to clone

Definition at line 136 of file LauResonanceInfo.cc.

void LauResonanceInfo::addExtraParameter ( LauParameter param,
const Bool_t  independentPar = kFALSE 
)

Add an extra parameter of the resonance.

Parameters
[in]paramthe extra parameter to be added
[in]independentPargoverns whether any info record that usually shares parameters with this one should also share this one (the default) or make its own independent version

Definition at line 119 of file LauResonanceInfo.cc.

LauResonanceInfo * LauResonanceInfo::createChargeConjugate ( )

Create the charge conjugate particle info record.

The mass and width parameters are cloned

Definition at line 77 of file LauResonanceInfo.cc.

LauResonanceInfo * LauResonanceInfo::createSharedParameterRecord ( const TString &  name)

Create another record that will share parameters with this one.

The name needs to be specified. The spin and charge are assumed to be the same. The mass, width and other parameters will be cloned.

Parameters
[in]namethe name of the resonant particle

Definition at line 99 of file LauResonanceInfo.cc.

LauBlattWeisskopfFactor::BlattWeisskopfCategory LauResonanceInfo::getBWCategory ( ) const
inline

Retrieve the BW category of the resonant particle.

Returns
the BW category of the resonant particle

Definition at line 93 of file LauResonanceInfo.hh.

Double_t LauResonanceInfo::getBWRadius ( ) const
inline

Retrieve the BW radius of the resonant particle.

Returns
the BW radius of the resonant particle

Definition at line 99 of file LauResonanceInfo.hh.

Int_t LauResonanceInfo::getCharge ( ) const
inline

Retrieve the charge of the resonant particle.

Returns
the charge of the resonant particle

Definition at line 87 of file LauResonanceInfo.hh.

LauParameter * LauResonanceInfo::getExtraParameter ( const TString &  parName)

Retrieve an extra parameter of the resonance.

Returns
the extra parameter (or null pointer if not found)

Definition at line 108 of file LauResonanceInfo.cc.

LauParameter* LauResonanceInfo::getMass ( ) const
inline

Retrieve the mass of the resonant particle.

Returns
the mass of the resonant particle

Definition at line 69 of file LauResonanceInfo.hh.

TString LauResonanceInfo::getName ( ) const
inline

Retrieve the name of the resonant particle.

Returns
the name of the resonant particle

Definition at line 54 of file LauResonanceInfo.hh.

TString LauResonanceInfo::getSanitisedName ( ) const
inline

Retrieve the sanitised name of the resonant particle.

Removes/replaces characters from the name that cause problems when used in TBranch names

Returns
the sanitised name of the resonant particle

Definition at line 63 of file LauResonanceInfo.hh.

UInt_t LauResonanceInfo::getSpin ( ) const
inline

Retrieve the spin of the resonant particle.

Returns
the spin of the resonant particle

Definition at line 81 of file LauResonanceInfo.hh.

LauParameter* LauResonanceInfo::getWidth ( ) const
inline

Retrieve the width of the resonant particle.

Returns
the width of the resonant particle

Definition at line 75 of file LauResonanceInfo.hh.

LauResonanceInfo& LauResonanceInfo::operator= ( const LauResonanceInfo other)
private

Copy assignment operator (not implemented)

void LauResonanceInfo::sanitiseName ( )
private

Create the sanitised name by removing characters that are illegal in TBranch names.

Definition at line 169 of file LauResonanceInfo.cc.

Member Data Documentation

LauBlattWeisskopfFactor::BlattWeisskopfCategory LauResonanceInfo::bwCategory_
private

The Blatt-Weisskopf barrier factor category.

Definition at line 170 of file LauResonanceInfo.hh.

Double_t LauResonanceInfo::bwRadius_
private

The Blatt-Weisskopf radius of the resonant particle.

Definition at line 173 of file LauResonanceInfo.hh.

Int_t LauResonanceInfo::charge_
private

The charge of the resonant particle.

Definition at line 167 of file LauResonanceInfo.hh.

LauResonanceInfo* LauResonanceInfo::conjugate_
private

The conjugate info object.

Definition at line 176 of file LauResonanceInfo.hh.

std::set<LauParameter*> LauResonanceInfo::extraPars_
private

Extra parameters.

Definition at line 182 of file LauResonanceInfo.hh.

LauParameter* LauResonanceInfo::mass_
private

The mass of the resonant particle.

Definition at line 158 of file LauResonanceInfo.hh.

TString LauResonanceInfo::name_
private

The name of the resonant particle.

Definition at line 152 of file LauResonanceInfo.hh.

TString LauResonanceInfo::sanitisedName_
private

The name of the resonant particle with illegal characters removed.

Definition at line 155 of file LauResonanceInfo.hh.

std::vector<LauResonanceInfo*> LauResonanceInfo::sharedParRecords_
private

Other info objects that share parameters with this one.

Definition at line 179 of file LauResonanceInfo.hh.

UInt_t LauResonanceInfo::spin_
private

The spin of the resonant particle.

Definition at line 164 of file LauResonanceInfo.hh.

LauParameter* LauResonanceInfo::width_
private

The width of the resonant particle.

Definition at line 161 of file LauResonanceInfo.hh.


The documentation for this class was generated from the following files: