////////////////////////////////////////////////////////
//  Pluto bulk interface base class implementation file
//
//  This class serves as a base class for bulk modifications
//  It can be used for bulk decays (e.g. Pythia, Pluto)
//  or to add array of particles to the particle stream
// 
//                    Author:  Ingo Froehlich
//                    Written: 14/05/2007
//                    Revised:
//
////////////////////////////////////////////////////////

#include "PBulkInterface.h"

PBulkInterface &fPBulkInterface() {
    static PBulkInterface *ans = new PBulkInterface();
    return *ans;
}

PBulkInterface *makeGlobalBulk() {
    return &fPBulkInterface();
}

PBulkInterface::PBulkInterface() {  
    bulk_id       = (++gBulkCounter);
    fPriority     = -1;
    tree          = NULL;
    size_branches = NULL;
    key_branches  = NULL;
}

bool PBulkInterface::Modify(PParticle**, int*, int*, int) {
    //modify the particle array "array"
    //input: particle array with "*num" members
    //new particles may be added (they are already instantiated) and *num increased
    //maxnum is the size of the particle array
    //setting the decay_done prevent further modifiers to decay this particle

    return kFALSE;
}

Int_t PBulkInterface::gBulkCounter=0;

ClassImp(PBulkInterface) 
 PBulkInterface.cc:1
 PBulkInterface.cc:2
 PBulkInterface.cc:3
 PBulkInterface.cc:4
 PBulkInterface.cc:5
 PBulkInterface.cc:6
 PBulkInterface.cc:7
 PBulkInterface.cc:8
 PBulkInterface.cc:9
 PBulkInterface.cc:10
 PBulkInterface.cc:11
 PBulkInterface.cc:12
 PBulkInterface.cc:13
 PBulkInterface.cc:14
 PBulkInterface.cc:15
 PBulkInterface.cc:16
 PBulkInterface.cc:17
 PBulkInterface.cc:18
 PBulkInterface.cc:19
 PBulkInterface.cc:20
 PBulkInterface.cc:21
 PBulkInterface.cc:22
 PBulkInterface.cc:23
 PBulkInterface.cc:24
 PBulkInterface.cc:25
 PBulkInterface.cc:26
 PBulkInterface.cc:27
 PBulkInterface.cc:28
 PBulkInterface.cc:29
 PBulkInterface.cc:30
 PBulkInterface.cc:31
 PBulkInterface.cc:32
 PBulkInterface.cc:33
 PBulkInterface.cc:34
 PBulkInterface.cc:35
 PBulkInterface.cc:36
 PBulkInterface.cc:37
 PBulkInterface.cc:38
 PBulkInterface.cc:39
 PBulkInterface.cc:40
 PBulkInterface.cc:41
 PBulkInterface.cc:42
 PBulkInterface.cc:43
 PBulkInterface.cc:44
 PBulkInterface.cc:45