//____________________________________________________________________
AliCFEventGenCuts::AliCFEventGenCuts() :
AliCFCutBase(),
- fMBProcessType(-1),
+ fMBProcType(-1),
fNTracksMin(-1),
fNTracksMax(100000),
fRequireVtxCuts(kFALSE),
//____________________________________________________________________
AliCFEventGenCuts::AliCFEventGenCuts(Char_t* name, Char_t* title) :
AliCFCutBase(name,title),
- fMBProcessType(-1),
+ fMBProcType(-1),
fNTracksMin(-1),
fNTracksMax(100000),
fRequireVtxCuts(kFALSE),
//____________________________________________________________________
AliCFEventGenCuts::AliCFEventGenCuts(const AliCFEventGenCuts& c) :
AliCFCutBase(c),
- fMBProcessType(c.fMBProcessType),
+ fMBProcType(c.fMBProcType),
fNTracksMin(c.fNTracksMin),
fNTracksMax(c.fNTracksMax),
fRequireVtxCuts(c.fRequireVtxCuts),
//
if (this != &c) {
AliCFCutBase::operator=(c) ;
- fMBProcessType=c.fMBProcessType;
+ fMBProcType=c.fMBProcType;
fNTracksMin=c.fNTracksMin;
fNTracksMax=c.fNTracksMax;
fRequireVtxCuts=c.fRequireVtxCuts;
//Check if the requested cuts are passed
//
- TBits *bitmap = SelectionBitMap(obj);
+ SelectionBitMap(obj);
Bool_t isSelected = kTRUE;
- for (UInt_t icut=0; icut<bitmap->GetNbits();icut++)
- if(!bitmap->TestBitNumber(icut)) isSelected = kFALSE;
+ for (UInt_t icut=0; icut<fBitMap->GetNbits();icut++)
+ if(!fBitMap->TestBitNumber(icut)) isSelected = kFALSE;
return isSelected;
}
//____________________________________________________________________
-TBits * AliCFEventGenCuts::SelectionBitMap(TObject* obj){
+void AliCFEventGenCuts::SelectionBitMap(TObject* obj){
//
//cut on the MB process type, the number of charged and neutral
//tracks and on the event vertex. So far specific to AliMCEvents
//Check if the requested cuts are passed and return a bitmap
for(Int_t j=0;j<kNCuts;j++)fBitMap->SetBitNumber(j,kFALSE);
AliMCEvent* ev = dynamic_cast<AliMCEvent *>(obj);
- if ( !ev ) return fBitMap ;
+ if ( !ev ) return;
AliGenEventHeader*genHeader = ev->GenEventHeader();
fBitMap->SetBitNumber(0,kTRUE);
- if(fMBProcessType>-1){
- Int_t process=MBProcessType(genHeader);
+ if(fMBProcType>-1){
+ Int_t process=ProcType(genHeader);
if(process==-1){
AliInfo(Form(" not a pythia event, not checking on the process type"));
}else{
- switch (fMBProcessType) {
+ switch (fMBProcType) {
case kND:
{
if (!( process!=92 && process!=93 && process!=94))
if (vtxPos[2]>fVtxZMax || vtxPos[2]<fVtxZMin)
fBitMap->SetBitNumber(4,kFALSE);
}
- return fBitMap;
+ return;
}
//______________________________________________________________________
-Bool_t AliCFEventGenCuts::IsMBProcessType(Int_t isel, TObject *obj){
+Bool_t AliCFEventGenCuts::IsMBProcType(AliMCEvent *ev, PrType iproc){
//
//returns the type of MB process (if pythia events)
//
- AliMCEvent* ev = dynamic_cast<AliMCEvent *>(obj);
if ( !ev ) return kFALSE ;
AliGenEventHeader*genHeader = ev->GenEventHeader();
- Int_t process=MBProcessType(genHeader);
+ Int_t process=ProcType(genHeader);
- switch (isel) {
- case kND: //Non Diffractive: Actually what is checked is ALL -SD -DD
+ switch (iproc) {
+ case kND: //Non Diffractive: Actually what is checked is ALL - SD - DD
{
if ( process!=92 && process!=93 && process!=94)
return kTRUE;
return kFALSE;
}
- //_____________________________________________________________________________
-Int_t AliCFEventGenCuts::MBProcessType(AliGenEventHeader *genHeader) {
+ //____________________________________________________________________________
+Int_t AliCFEventGenCuts::ProcType(AliGenEventHeader *genHeader) {
- //get the MB process type: if we are not dealing with pythia stuff,
+ //get the Pythia process type: if we are not dealing with pythia stuff,
//return -1 and we do not apply the cut
//
Int_t process=pythiaGenHeader->ProcessType();
return process;
}
-//_____________________________________________________________________________
-void AliCFEventGenCuts::GetBitMap(TObject* obj, TBits *bitmap){
- //
- // retrieve the pointer to the bitmap
- //
- bitmap=SelectionBitMap(obj);
-}