]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG2/RESONANCES/AliRsnPairDef.cxx
Added pass1 and pass2 directories
[u/mrichter/AliRoot.git] / PWG2 / RESONANCES / AliRsnPairDef.cxx
CommitLineData
7356f978 1/**************************************************************************
2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3 * *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
6 * *
7 * Permission to use, copy, modify and distribute this software and its *
8 * documentation strictly for non-commercial purposes is hereby granted *
9 * without fee, provided that the above copyright notice appears in all *
10 * copies and that both the copyright notice and this permission notice *
11 * appear in the supporting documentation. The authors make no claims *
12 * about the suitability of this software for any purpose. It is *
13 * provided "as is" without express or implied warranty. *
14 **************************************************************************/
15
16////////////////////////////////////////////////////////////////////////////////
06351446 17//
7356f978 18// This class is a simple set of definitions which are used to define a
19// decay tree to be studied for a resonance, in terms of the PID and charge
20// of its candidate daughters, which in turn determins what kind of objects
21// the analysis must take into account.
22// This object contains two AliRsnDaughterDef which define a model for each
23// of the two expected daughters (see also AliRsnDaughterDef class) plus a
24// mass hypothesis for the resonance, which is used for computin quantities
25// which need it (like rapidity or Mt), and a PDG code, which is used to
26// check for true pairs, when needed. In all other cases, these two additional
27// values can be left to their default (meaningless) value.
28// Since this object must define a decay channel, the only provided constructor
29// allow to set a PID and a charge.
06351446 30//
7356f978 31// authors: A. Pulvirenti (alberto.pulvirenti@ct.infn.it)
32// M. Vala (martin.vala@cern.ch)
06351446 33//
7356f978 34////////////////////////////////////////////////////////////////////////////////
06351446 35
06351446 36#include "AliLog.h"
11ed73f6 37#include "AliRsnMother.h"
06351446 38#include "AliRsnPairDef.h"
39
40ClassImp(AliRsnPairDef)
41
42//_____________________________________________________________________________
11ed73f6 43AliRsnPairDef::AliRsnPairDef() : fMotherMass(0.0), fMotherPDG(0), fDef1(), fDef2()
06351446 44{
45//
46// Empty constructor.
47// Initializes the data members to default values:
48// - no definition of particles in the pair;
49// - histogram binning undefined.
50// When using this constructor, all analysis elements (particles, histogram)
51// must be defined before starting event processing.
52//
06351446 53}
54
aec0ec32 55//_____________________________________________________________________________
56AliRsnPairDef::AliRsnPairDef
7356f978 57(EPARTYPE type1, Char_t sign1, EPARTYPE type2, Char_t sign2, Int_t motherPDG, Double_t motherMass) :
58 fMotherMass(motherMass),
59 fMotherPDG(motherPDG),
60 fDef1(AliRsnDaughter::FromAliPID(type1), sign1),
61 fDef2(AliRsnDaughter::FromAliPID(type2), sign2)
62{
63//
64// Constructor with arguments.
65// This constructor allows to define all the working parameters.
66//
67}
68
69//_____________________________________________________________________________
70AliRsnPairDef::AliRsnPairDef
71(AliRsnDaughter::ESpecies type1, Char_t sign1, AliRsnDaughter::ESpecies type2, Char_t sign2, Int_t motherPDG, Double_t motherMass) :
2a1c7696 72 fMotherMass(motherMass),
11ed73f6 73 fMotherPDG(motherPDG),
74 fDef1(type1, sign1),
75 fDef2(type2, sign2)
aec0ec32 76{
77//
78// Constructor with arguments.
79// This constructor allows to define all the working parameters.
80//
aec0ec32 81}
82
06351446 83//_____________________________________________________________________________
84AliRsnPairDef::AliRsnPairDef(const AliRsnPairDef &copy) :
2a1c7696 85 TObject(copy),
86 fMotherMass(copy.fMotherMass),
11ed73f6 87 fMotherPDG(copy.fMotherPDG),
88 fDef1(copy.fDef1),
89 fDef2(copy.fDef2)
06351446 90{
91//
92// Copy constructor with standard behavior
93//
06351446 94}
95
96//_____________________________________________________________________________
97const AliRsnPairDef& AliRsnPairDef::operator=(const AliRsnPairDef &copy)
98{
99//
100// Assignment operator with standard behavior.
101//
102
2a1c7696 103 fMotherMass = copy.fMotherMass;
104 fMotherPDG = copy.fMotherPDG;
11ed73f6 105 fDef1 = copy.fDef1;
106 fDef2 = copy.fDef2;
06351446 107
2a1c7696 108 return (*this);
06351446 109}
110
aec0ec32 111//_____________________________________________________________________________
2dab9030 112const char* AliRsnPairDef::GetPairName() const
aec0ec32 113{
114//
115// Returns a compact string with the name of the pair,
116// to be used for naming objects related to it.
117//
e0baff8c 118
11ed73f6 119 return Form("%s%s", fDef1.GetName(), fDef2.GetName());
aec0ec32 120}