#include <Riostream.h>
#include <TEntryList.h>
#include "AliLog.h"
#include "AliRsnCutSet.h"
#include "AliRsnDaughterDef.h"
#include "AliRsnAction.h"
#include "AliRsnDaughterSelector.h"
ClassImp(AliRsnDaughterSelector)
AliRsnDaughterSelector::AliRsnDaughterSelector(const char *name, const char *title) :
TNamed(name, title),
fCutSetsN("AliRsnCutSet", 0),
fCutSetsC("AliRsnCutSet", 0),
fEntryListsN("TEntryList", 0),
fEntryListsP("TEntryList", 0),
fEntryListsM("TEntryList", 0),
fUseLabelCheck(kTRUE),
fActions()
{
AliDebug(AliLog::kDebug + 10, "<-");
AliDebug(AliLog::kDebug + 10, "->");
}
AliRsnDaughterSelector::AliRsnDaughterSelector(const AliRsnDaughterSelector ©) :
TNamed(copy),
fCutSetsN(copy.fCutSetsN),
fCutSetsC(copy.fCutSetsC),
fEntryListsN(copy.fEntryListsN),
fEntryListsP(copy.fEntryListsP),
fEntryListsM(copy.fEntryListsM),
fUseLabelCheck(copy.fUseLabelCheck),
fActions(copy.fActions)
{
AliDebug(AliLog::kDebug + 10, "<-");
AliDebug(AliLog::kDebug + 10, "->");
}
AliRsnDaughterSelector &AliRsnDaughterSelector::operator=(const AliRsnDaughterSelector ©)
{
AliDebug(AliLog::kDebug + 10, "<-");
TNamed::operator=(copy);
if (this == ©)
return *this;
fCutSetsN = copy.fCutSetsN;
fCutSetsC = copy.fCutSetsC;
fEntryListsN = copy.fEntryListsN;
fEntryListsP = copy.fEntryListsP;
fEntryListsM = copy.fEntryListsM;
fUseLabelCheck = copy.fUseLabelCheck;
fActions = copy.fActions;
AliDebug(AliLog::kDebug + 10, "->");
return (*this);
}
AliRsnDaughterSelector::~AliRsnDaughterSelector()
{
AliDebug(AliLog::kDebug + 10, "<-");
fCutSetsN.Delete();
fCutSetsC.Delete();
fEntryListsN.Delete();
fEntryListsP.Delete();
fEntryListsM.Delete();
fActions.Delete();
AliDebug(AliLog::kDebug + 10, "->");
}
void AliRsnDaughterSelector::Print(Option_t *option) const
{
TNamed::Print(option);
Int_t i, nSets;
AliRsnCutSet *set = 0x0;
TEntryList *list = 0x0;
nSets = fCutSetsN.GetEntries();
for (i = 0; i < nSets; i++) {
set = (AliRsnCutSet *)fCutSetsN[i];
list = (TEntryList *)fEntryListsN[i];
AliInfo(Form("Neutral entry list for cut set '%s' has %d entries", set->GetName(), (Int_t)list->GetN()));
}
nSets = fCutSetsC.GetEntries();
for (i = 0; i < nSets; i++) {
set = (AliRsnCutSet *)fCutSetsC[i];
list = (TEntryList *)fEntryListsP[i];
AliInfo(Form("Positive entry list for cut set '%s' has %d entries", set->GetName(), (Int_t)list->GetN()));
list = (TEntryList *)fEntryListsM[i];
AliInfo(Form("Negative entry list for cut set '%s' has %d entries", set->GetName(), (Int_t)list->GetN()));
}
}
void AliRsnDaughterSelector::Init()
{
Int_t i, nSets;
nSets = fCutSetsN.GetEntries();
if (!fEntryListsN.IsEmpty()) fEntryListsN.Delete();
for (i = 0; i < nSets; i++) {
AliRsnCutSet *set = (AliRsnCutSet *)fCutSetsN[i];
new (fEntryListsN[i]) TEntryList;
AliInfo(Form("Adding 1 entry list for neutrals --> cut set '%s' [scheme = '%s']", set->GetName(), set->GetCutScheme().Data()));
}
nSets = fCutSetsC.GetEntries();
if (!fEntryListsP.IsEmpty()) fEntryListsP.Delete();
if (!fEntryListsM.IsEmpty()) fEntryListsM.Delete();
for (i = 0; i < nSets; i++) {
AliRsnCutSet *set = (AliRsnCutSet *)fCutSetsC[i];
new (fEntryListsP[i]) TEntryList;
new (fEntryListsM[i]) TEntryList;
AliInfo(Form("Adding 2 entry lists for charged --> cut set '%s' [scheme = '%s']", set->GetName(), set->GetCutScheme().Data()));
}
}
void AliRsnDaughterSelector::AddAction(AliRsnAction *action)
{
if (!action) return;
fActions.Add(action);
}
void AliRsnDaughterSelector::InitActions(TList *list)
{
if (!list) return;
TObjArray objects;
objects.Add(this);
TIter next(&fActions);
AliRsnAction *action;
while ((action = (AliRsnAction *)next())) {
action->InitAction(list,&objects);
}
}
void AliRsnDaughterSelector::ExecActions(AliRsnEvent *ev)
{
if (!ev) return;
TObjArray objects;
objects.Add(ev);
TIter next(&fActions);
AliRsnAction *action;
while ((action = (AliRsnAction *)next())) {
action->ExecAction(&objects);
}
}
void AliRsnDaughterSelector::Reset()
{
TEntryList *el;
Int_t i, nSets;
nSets = fCutSetsN.GetEntries();
for (i = 0; i < nSets; i++) {
el = (TEntryList *)fEntryListsN.At(i);
el->Reset();
}
nSets = fCutSetsC.GetEntries();
for (i = 0; i < nSets; i++) {
el = (TEntryList *)fEntryListsP.At(i);
el->Reset();
el = (TEntryList *)fEntryListsM.At(i);
el->Reset();
}
}
Int_t AliRsnDaughterSelector::Add(AliRsnCutSet *cuts, Bool_t charged)
{
Int_t n = 0;
if (!charged) {
n = fCutSetsN.GetEntries();
new (fCutSetsN[n]) AliRsnCutSet(*cuts);
} else {
n = fCutSetsC.GetEntries();
new (fCutSetsC[n]) AliRsnCutSet(*cuts);
}
return n;
}
Int_t AliRsnDaughterSelector::GetID(const char *name, Bool_t charged)
{
AliRsnCutSet *cuts;
if (!charged) {
cuts = (AliRsnCutSet *)fCutSetsN.FindObject(name);
if (cuts) return fCutSetsN.IndexOf(cuts);
} else {
cuts = (AliRsnCutSet *)fCutSetsC.FindObject(name);
if (cuts) return fCutSetsC.IndexOf(cuts);
}
return -1;
}
TEntryList *AliRsnDaughterSelector::GetSelected(Int_t i, Char_t charge)
{
if (charge == '+')
return (TEntryList *)fEntryListsP.At(i);
else if (charge == '-')
return (TEntryList *)fEntryListsM.At(i);
else
return (TEntryList *)fEntryListsN.At(i);
}
TEntryList *AliRsnDaughterSelector::GetSelected(Int_t i, Short_t charge)
{
if (charge > 0)
return (TEntryList *)fEntryListsP.At(i);
else if (charge < 0)
return (TEntryList *)fEntryListsM.At(i);
else
return (TEntryList *)fEntryListsN.At(i);
}
void AliRsnDaughterSelector::ScanEvent(AliRsnEvent *ev)
{
Int_t id, is;
Int_t label;
Int_t nSel, nTot = ev->GetAbsoluteSum();
AliRsnDaughter check;
TClonesArray *cutsArray = 0x0, *entryArray = 0x0;
TEntryList labelList;
TEntryList *el = 0;
AliRsnCutSet *cuts;
for (id = 0; id < nTot; id++) {
ev->SetDaughter(check, id);
if (!check.GetRef()) {
AliDebugClass(1, Form("[%s]: daughter has NULL ref", GetName()));
continue;
}
if (!check.IsOK()) {
AliDebugClass(1, Form("[%s]: daughter is BAD", GetName()));
continue;
}
if (check.ChargeS() > 0) {
cutsArray = &fCutSetsC;
entryArray = &fEntryListsP;
} else if (check.ChargeS() < 0) {
cutsArray = &fCutSetsC;
entryArray = &fEntryListsM;
} else {
cutsArray = &fCutSetsN;
entryArray = &fEntryListsN;
}
label = check.GetLabel();
if (fUseLabelCheck && labelList.Contains(label)) continue;
nSel = cutsArray->GetEntries();
for (is = 0; is < nSel; is++) {
cuts = (AliRsnCutSet *)cutsArray->At(is);
if (cuts->IsSelected(&check)) {
el = (TEntryList *)entryArray->At(is);
el->Enter(id);
if (fUseLabelCheck && label >= 0) labelList.Enter(label);
}
}
}
}
AliRsnDaughterSelector.cxx:1 AliRsnDaughterSelector.cxx:2 AliRsnDaughterSelector.cxx:3 AliRsnDaughterSelector.cxx:4 AliRsnDaughterSelector.cxx:5 AliRsnDaughterSelector.cxx:6 AliRsnDaughterSelector.cxx:7 AliRsnDaughterSelector.cxx:8 AliRsnDaughterSelector.cxx:9 AliRsnDaughterSelector.cxx:10 AliRsnDaughterSelector.cxx:11 AliRsnDaughterSelector.cxx:12 AliRsnDaughterSelector.cxx:13 AliRsnDaughterSelector.cxx:14 AliRsnDaughterSelector.cxx:15 AliRsnDaughterSelector.cxx:16 AliRsnDaughterSelector.cxx:17 AliRsnDaughterSelector.cxx:18 AliRsnDaughterSelector.cxx:19 AliRsnDaughterSelector.cxx:20 AliRsnDaughterSelector.cxx:21 AliRsnDaughterSelector.cxx:22 AliRsnDaughterSelector.cxx:23 AliRsnDaughterSelector.cxx:24 AliRsnDaughterSelector.cxx:25 AliRsnDaughterSelector.cxx:26 AliRsnDaughterSelector.cxx:27 AliRsnDaughterSelector.cxx:28 AliRsnDaughterSelector.cxx:29 AliRsnDaughterSelector.cxx:30 AliRsnDaughterSelector.cxx:31 AliRsnDaughterSelector.cxx:32 AliRsnDaughterSelector.cxx:33 AliRsnDaughterSelector.cxx:34 AliRsnDaughterSelector.cxx:35 AliRsnDaughterSelector.cxx:36 AliRsnDaughterSelector.cxx:37 AliRsnDaughterSelector.cxx:38 AliRsnDaughterSelector.cxx:39 AliRsnDaughterSelector.cxx:40 AliRsnDaughterSelector.cxx:41 AliRsnDaughterSelector.cxx:42 AliRsnDaughterSelector.cxx:43 AliRsnDaughterSelector.cxx:44 AliRsnDaughterSelector.cxx:45 AliRsnDaughterSelector.cxx:46 AliRsnDaughterSelector.cxx:47 AliRsnDaughterSelector.cxx:48 AliRsnDaughterSelector.cxx:49 AliRsnDaughterSelector.cxx:50 AliRsnDaughterSelector.cxx:51 AliRsnDaughterSelector.cxx:52 AliRsnDaughterSelector.cxx:53 AliRsnDaughterSelector.cxx:54 AliRsnDaughterSelector.cxx:55 AliRsnDaughterSelector.cxx:56 AliRsnDaughterSelector.cxx:57 AliRsnDaughterSelector.cxx:58 AliRsnDaughterSelector.cxx:59 AliRsnDaughterSelector.cxx:60 AliRsnDaughterSelector.cxx:61 AliRsnDaughterSelector.cxx:62 AliRsnDaughterSelector.cxx:63 AliRsnDaughterSelector.cxx:64 AliRsnDaughterSelector.cxx:65 AliRsnDaughterSelector.cxx:66 AliRsnDaughterSelector.cxx:67 AliRsnDaughterSelector.cxx:68 AliRsnDaughterSelector.cxx:69 AliRsnDaughterSelector.cxx:70 AliRsnDaughterSelector.cxx:71 AliRsnDaughterSelector.cxx:72 AliRsnDaughterSelector.cxx:73 AliRsnDaughterSelector.cxx:74 AliRsnDaughterSelector.cxx:75 AliRsnDaughterSelector.cxx:76 AliRsnDaughterSelector.cxx:77 AliRsnDaughterSelector.cxx:78 AliRsnDaughterSelector.cxx:79 AliRsnDaughterSelector.cxx:80 AliRsnDaughterSelector.cxx:81 AliRsnDaughterSelector.cxx:82 AliRsnDaughterSelector.cxx:83 AliRsnDaughterSelector.cxx:84 AliRsnDaughterSelector.cxx:85 AliRsnDaughterSelector.cxx:86 AliRsnDaughterSelector.cxx:87 AliRsnDaughterSelector.cxx:88 AliRsnDaughterSelector.cxx:89 AliRsnDaughterSelector.cxx:90 AliRsnDaughterSelector.cxx:91 AliRsnDaughterSelector.cxx:92 AliRsnDaughterSelector.cxx:93 AliRsnDaughterSelector.cxx:94 AliRsnDaughterSelector.cxx:95 AliRsnDaughterSelector.cxx:96 AliRsnDaughterSelector.cxx:97 AliRsnDaughterSelector.cxx:98 AliRsnDaughterSelector.cxx:99 AliRsnDaughterSelector.cxx:100 AliRsnDaughterSelector.cxx:101 AliRsnDaughterSelector.cxx:102 AliRsnDaughterSelector.cxx:103 AliRsnDaughterSelector.cxx:104 AliRsnDaughterSelector.cxx:105 AliRsnDaughterSelector.cxx:106 AliRsnDaughterSelector.cxx:107 AliRsnDaughterSelector.cxx:108 AliRsnDaughterSelector.cxx:109 AliRsnDaughterSelector.cxx:110 AliRsnDaughterSelector.cxx:111 AliRsnDaughterSelector.cxx:112 AliRsnDaughterSelector.cxx:113 AliRsnDaughterSelector.cxx:114 AliRsnDaughterSelector.cxx:115 AliRsnDaughterSelector.cxx:116 AliRsnDaughterSelector.cxx:117 AliRsnDaughterSelector.cxx:118 AliRsnDaughterSelector.cxx:119 AliRsnDaughterSelector.cxx:120 AliRsnDaughterSelector.cxx:121 AliRsnDaughterSelector.cxx:122 AliRsnDaughterSelector.cxx:123 AliRsnDaughterSelector.cxx:124 AliRsnDaughterSelector.cxx:125 AliRsnDaughterSelector.cxx:126 AliRsnDaughterSelector.cxx:127 AliRsnDaughterSelector.cxx:128 AliRsnDaughterSelector.cxx:129 AliRsnDaughterSelector.cxx:130 AliRsnDaughterSelector.cxx:131 AliRsnDaughterSelector.cxx:132 AliRsnDaughterSelector.cxx:133 AliRsnDaughterSelector.cxx:134 AliRsnDaughterSelector.cxx:135 AliRsnDaughterSelector.cxx:136 AliRsnDaughterSelector.cxx:137 AliRsnDaughterSelector.cxx:138 AliRsnDaughterSelector.cxx:139 AliRsnDaughterSelector.cxx:140 AliRsnDaughterSelector.cxx:141 AliRsnDaughterSelector.cxx:142 AliRsnDaughterSelector.cxx:143 AliRsnDaughterSelector.cxx:144 AliRsnDaughterSelector.cxx:145 AliRsnDaughterSelector.cxx:146 AliRsnDaughterSelector.cxx:147 AliRsnDaughterSelector.cxx:148 AliRsnDaughterSelector.cxx:149 AliRsnDaughterSelector.cxx:150 AliRsnDaughterSelector.cxx:151 AliRsnDaughterSelector.cxx:152 AliRsnDaughterSelector.cxx:153 AliRsnDaughterSelector.cxx:154 AliRsnDaughterSelector.cxx:155 AliRsnDaughterSelector.cxx:156 AliRsnDaughterSelector.cxx:157 AliRsnDaughterSelector.cxx:158 AliRsnDaughterSelector.cxx:159 AliRsnDaughterSelector.cxx:160 AliRsnDaughterSelector.cxx:161 AliRsnDaughterSelector.cxx:162 AliRsnDaughterSelector.cxx:163 AliRsnDaughterSelector.cxx:164 AliRsnDaughterSelector.cxx:165 AliRsnDaughterSelector.cxx:166 AliRsnDaughterSelector.cxx:167 AliRsnDaughterSelector.cxx:168 AliRsnDaughterSelector.cxx:169 AliRsnDaughterSelector.cxx:170 AliRsnDaughterSelector.cxx:171 AliRsnDaughterSelector.cxx:172 AliRsnDaughterSelector.cxx:173 AliRsnDaughterSelector.cxx:174 AliRsnDaughterSelector.cxx:175 AliRsnDaughterSelector.cxx:176 AliRsnDaughterSelector.cxx:177 AliRsnDaughterSelector.cxx:178 AliRsnDaughterSelector.cxx:179 AliRsnDaughterSelector.cxx:180 AliRsnDaughterSelector.cxx:181 AliRsnDaughterSelector.cxx:182 AliRsnDaughterSelector.cxx:183 AliRsnDaughterSelector.cxx:184 AliRsnDaughterSelector.cxx:185 AliRsnDaughterSelector.cxx:186 AliRsnDaughterSelector.cxx:187 AliRsnDaughterSelector.cxx:188 AliRsnDaughterSelector.cxx:189 AliRsnDaughterSelector.cxx:190 AliRsnDaughterSelector.cxx:191 AliRsnDaughterSelector.cxx:192 AliRsnDaughterSelector.cxx:193 AliRsnDaughterSelector.cxx:194 AliRsnDaughterSelector.cxx:195 AliRsnDaughterSelector.cxx:196 AliRsnDaughterSelector.cxx:197 AliRsnDaughterSelector.cxx:198 AliRsnDaughterSelector.cxx:199 AliRsnDaughterSelector.cxx:200 AliRsnDaughterSelector.cxx:201 AliRsnDaughterSelector.cxx:202 AliRsnDaughterSelector.cxx:203 AliRsnDaughterSelector.cxx:204 AliRsnDaughterSelector.cxx:205 AliRsnDaughterSelector.cxx:206 AliRsnDaughterSelector.cxx:207 AliRsnDaughterSelector.cxx:208 AliRsnDaughterSelector.cxx:209 AliRsnDaughterSelector.cxx:210 AliRsnDaughterSelector.cxx:211 AliRsnDaughterSelector.cxx:212 AliRsnDaughterSelector.cxx:213 AliRsnDaughterSelector.cxx:214 AliRsnDaughterSelector.cxx:215 AliRsnDaughterSelector.cxx:216 AliRsnDaughterSelector.cxx:217 AliRsnDaughterSelector.cxx:218 AliRsnDaughterSelector.cxx:219 AliRsnDaughterSelector.cxx:220 AliRsnDaughterSelector.cxx:221 AliRsnDaughterSelector.cxx:222 AliRsnDaughterSelector.cxx:223 AliRsnDaughterSelector.cxx:224 AliRsnDaughterSelector.cxx:225 AliRsnDaughterSelector.cxx:226 AliRsnDaughterSelector.cxx:227 AliRsnDaughterSelector.cxx:228 AliRsnDaughterSelector.cxx:229 AliRsnDaughterSelector.cxx:230 AliRsnDaughterSelector.cxx:231 AliRsnDaughterSelector.cxx:232 AliRsnDaughterSelector.cxx:233 AliRsnDaughterSelector.cxx:234 AliRsnDaughterSelector.cxx:235 AliRsnDaughterSelector.cxx:236 AliRsnDaughterSelector.cxx:237 AliRsnDaughterSelector.cxx:238 AliRsnDaughterSelector.cxx:239 AliRsnDaughterSelector.cxx:240 AliRsnDaughterSelector.cxx:241 AliRsnDaughterSelector.cxx:242 AliRsnDaughterSelector.cxx:243 AliRsnDaughterSelector.cxx:244 AliRsnDaughterSelector.cxx:245 AliRsnDaughterSelector.cxx:246 AliRsnDaughterSelector.cxx:247 AliRsnDaughterSelector.cxx:248 AliRsnDaughterSelector.cxx:249 AliRsnDaughterSelector.cxx:250 AliRsnDaughterSelector.cxx:251 AliRsnDaughterSelector.cxx:252 AliRsnDaughterSelector.cxx:253 AliRsnDaughterSelector.cxx:254 AliRsnDaughterSelector.cxx:255 AliRsnDaughterSelector.cxx:256 AliRsnDaughterSelector.cxx:257 AliRsnDaughterSelector.cxx:258 AliRsnDaughterSelector.cxx:259 AliRsnDaughterSelector.cxx:260 AliRsnDaughterSelector.cxx:261 AliRsnDaughterSelector.cxx:262 AliRsnDaughterSelector.cxx:263 AliRsnDaughterSelector.cxx:264 AliRsnDaughterSelector.cxx:265 AliRsnDaughterSelector.cxx:266 AliRsnDaughterSelector.cxx:267 AliRsnDaughterSelector.cxx:268 AliRsnDaughterSelector.cxx:269 AliRsnDaughterSelector.cxx:270 AliRsnDaughterSelector.cxx:271 AliRsnDaughterSelector.cxx:272 AliRsnDaughterSelector.cxx:273 AliRsnDaughterSelector.cxx:274 AliRsnDaughterSelector.cxx:275 AliRsnDaughterSelector.cxx:276 AliRsnDaughterSelector.cxx:277 AliRsnDaughterSelector.cxx:278 AliRsnDaughterSelector.cxx:279 AliRsnDaughterSelector.cxx:280 AliRsnDaughterSelector.cxx:281 AliRsnDaughterSelector.cxx:282 AliRsnDaughterSelector.cxx:283 AliRsnDaughterSelector.cxx:284 AliRsnDaughterSelector.cxx:285 AliRsnDaughterSelector.cxx:286 AliRsnDaughterSelector.cxx:287 AliRsnDaughterSelector.cxx:288 AliRsnDaughterSelector.cxx:289 AliRsnDaughterSelector.cxx:290 AliRsnDaughterSelector.cxx:291 AliRsnDaughterSelector.cxx:292 AliRsnDaughterSelector.cxx:293 AliRsnDaughterSelector.cxx:294 AliRsnDaughterSelector.cxx:295 AliRsnDaughterSelector.cxx:296 AliRsnDaughterSelector.cxx:297 AliRsnDaughterSelector.cxx:298 AliRsnDaughterSelector.cxx:299 AliRsnDaughterSelector.cxx:300 AliRsnDaughterSelector.cxx:301 AliRsnDaughterSelector.cxx:302 AliRsnDaughterSelector.cxx:303 AliRsnDaughterSelector.cxx:304 AliRsnDaughterSelector.cxx:305 AliRsnDaughterSelector.cxx:306 AliRsnDaughterSelector.cxx:307 AliRsnDaughterSelector.cxx:308 AliRsnDaughterSelector.cxx:309 AliRsnDaughterSelector.cxx:310 AliRsnDaughterSelector.cxx:311 AliRsnDaughterSelector.cxx:312 AliRsnDaughterSelector.cxx:313 AliRsnDaughterSelector.cxx:314 AliRsnDaughterSelector.cxx:315 AliRsnDaughterSelector.cxx:316 AliRsnDaughterSelector.cxx:317 AliRsnDaughterSelector.cxx:318 AliRsnDaughterSelector.cxx:319 AliRsnDaughterSelector.cxx:320 AliRsnDaughterSelector.cxx:321 AliRsnDaughterSelector.cxx:322 AliRsnDaughterSelector.cxx:323 AliRsnDaughterSelector.cxx:324 AliRsnDaughterSelector.cxx:325 AliRsnDaughterSelector.cxx:326 AliRsnDaughterSelector.cxx:327 AliRsnDaughterSelector.cxx:328 AliRsnDaughterSelector.cxx:329 AliRsnDaughterSelector.cxx:330 AliRsnDaughterSelector.cxx:331 AliRsnDaughterSelector.cxx:332 AliRsnDaughterSelector.cxx:333 AliRsnDaughterSelector.cxx:334 AliRsnDaughterSelector.cxx:335 AliRsnDaughterSelector.cxx:336 AliRsnDaughterSelector.cxx:337 AliRsnDaughterSelector.cxx:338 AliRsnDaughterSelector.cxx:339 AliRsnDaughterSelector.cxx:340 AliRsnDaughterSelector.cxx:341 AliRsnDaughterSelector.cxx:342 AliRsnDaughterSelector.cxx:343 AliRsnDaughterSelector.cxx:344 AliRsnDaughterSelector.cxx:345 AliRsnDaughterSelector.cxx:346 AliRsnDaughterSelector.cxx:347 AliRsnDaughterSelector.cxx:348 AliRsnDaughterSelector.cxx:349 AliRsnDaughterSelector.cxx:350 AliRsnDaughterSelector.cxx:351 AliRsnDaughterSelector.cxx:352 AliRsnDaughterSelector.cxx:353 AliRsnDaughterSelector.cxx:354 AliRsnDaughterSelector.cxx:355 AliRsnDaughterSelector.cxx:356 AliRsnDaughterSelector.cxx:357 AliRsnDaughterSelector.cxx:358 AliRsnDaughterSelector.cxx:359 AliRsnDaughterSelector.cxx:360