#include "AliAODEvent.h"
#include "AliESDEvent.h"
#include "AliVEventPool.h"
+#include "AliVCuts.h"
#include "AliLog.h"
#include <TObjArray.h>
#include <TTree.h>
fCurrentEvt(0),
fInit(0),
fEventPool(0),
- fEventBuffer(0)
+ fEventBuffer(0),
+ fEventSkipped(0)
{
// Default constructor
}
fCurrentEvt(0),
fInit(0),
fEventPool(0),
- fEventBuffer(0)
+ fEventBuffer(0),
+ fEventSkipped(0)
{
// constructor
}
fCurrentEvt(0),
fInit(0),
fEventPool(0),
- fEventBuffer(0)
+ fEventBuffer(0),
+ fEventSkipped(0)
{
// Constructor
Bool_t AliMultiEventInputHandler::Notify(const char */*path*/)
{
// Connect to new tree
-
+
TList* connectedList = (TList*) (fTree->GetUserInfo()->FindObject("AODObjectsConnectedToTree"));
if (connectedList && !fInit) {
fEventBuffer[0]->ReadFromTree(fTree, "reconnect");
// Actions before analysis of each event
//
// Reset the number of events buffered for this bin to 0
+
if (fCurrentBin != (fEventPool->BinNumber())) {
fCurrentBin = fEventPool->BinNumber();
fNBuffered = 0;
}
+ //
+ // Event selection
+ //
+ if (fFormat == 0) {
+ fIsSelectedResult = 0;
+ if (fEventCuts && !IsUserCallSelectionMask())
+ fIsSelectedResult =
+ fEventCuts->GetSelectionMask((AliESDEvent*)fEventBuffer[fIndex]);
+ }
+
return kTRUE;
}
{
//
// Connect the next event in the buffer to the tree
- fIndex++;
-
+ if (!fEventSkipped) fIndex++;
fIndex %= fBufferSize;
AliInfo(Form("Connecting buffer entry %5d", fIndex));
fEventBuffer[fIndex]->Clear();
fNBuffered++;
if (fNBuffered > fBufferSize) fNBuffered = fBufferSize;
-
+
Int_t nmax = fTree->GetEntries();
if (fTree->GetEntryList()) {
nmax = (fTree->GetEntryList()->GetN());