ROOT logo
/**************************************************************************
 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
 *                                                                        *
 * Author: The ALICE Off-line Project.                                    *
 * Contributors are mentioned in the code where appropriate.              *
 *                                                                        *
 * Permission to use, copy, modify and distribute this software and its   *
 * documentation strictly for non-commercial purposes is hereby granted   *
 * without fee, provided that the above copyright notice appears in all   *
 * copies and that both the copyright notice and this permission notice   *
 * appear in the supporting documentation. The authors make no claims     *
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/

/* $Id$ */

#include "AliGenCocktailEventHeader.h"
#include "AliGenEventHeader.h"
#include <TList.h>

ClassImp(AliGenCocktailEventHeader)


AliGenCocktailEventHeader::AliGenCocktailEventHeader():
    fHeaders(0)
{
// Default Constructor
}

AliGenCocktailEventHeader::AliGenCocktailEventHeader(const char* name):AliGenEventHeader(name),
    fHeaders(0)
{
// Constructor
}

AliGenCocktailEventHeader::AliGenCocktailEventHeader(const AliGenCocktailEventHeader &header):
    AliGenEventHeader(header),
    fHeaders(0)
{
// Copy Constructor
    header.Copy(*this);
}

AliGenCocktailEventHeader::~AliGenCocktailEventHeader()
{
// Constructor
    if (fHeaders) {
	fHeaders->Delete();
	delete fHeaders;
    }
}

void AliGenCocktailEventHeader::AddHeader(const AliGenEventHeader* header)
{
// Add a header to the list
    if (!fHeaders) fHeaders = new TList();
    fHeaders->Add(header->Clone());
}

Int_t AliGenCocktailEventHeader::CalcNProduced()
{
    // Calculate the total number of produced and stored particles
    TIter next(fHeaders);
    AliGenEventHeader *entry;
    //
    Int_t np = 0;
    while((entry = (AliGenEventHeader*)next())) {np += (entry->NProduced());}
    fNProduced = np;
    return (np);
}

AliGenCocktailEventHeader& AliGenCocktailEventHeader::operator=(const  AliGenCocktailEventHeader& rhs)
{
// Assignment operator
    rhs.Copy(*this); 
    return (*this);
}

 AliGenCocktailEventHeader.cxx:1
 AliGenCocktailEventHeader.cxx:2
 AliGenCocktailEventHeader.cxx:3
 AliGenCocktailEventHeader.cxx:4
 AliGenCocktailEventHeader.cxx:5
 AliGenCocktailEventHeader.cxx:6
 AliGenCocktailEventHeader.cxx:7
 AliGenCocktailEventHeader.cxx:8
 AliGenCocktailEventHeader.cxx:9
 AliGenCocktailEventHeader.cxx:10
 AliGenCocktailEventHeader.cxx:11
 AliGenCocktailEventHeader.cxx:12
 AliGenCocktailEventHeader.cxx:13
 AliGenCocktailEventHeader.cxx:14
 AliGenCocktailEventHeader.cxx:15
 AliGenCocktailEventHeader.cxx:16
 AliGenCocktailEventHeader.cxx:17
 AliGenCocktailEventHeader.cxx:18
 AliGenCocktailEventHeader.cxx:19
 AliGenCocktailEventHeader.cxx:20
 AliGenCocktailEventHeader.cxx:21
 AliGenCocktailEventHeader.cxx:22
 AliGenCocktailEventHeader.cxx:23
 AliGenCocktailEventHeader.cxx:24
 AliGenCocktailEventHeader.cxx:25
 AliGenCocktailEventHeader.cxx:26
 AliGenCocktailEventHeader.cxx:27
 AliGenCocktailEventHeader.cxx:28
 AliGenCocktailEventHeader.cxx:29
 AliGenCocktailEventHeader.cxx:30
 AliGenCocktailEventHeader.cxx:31
 AliGenCocktailEventHeader.cxx:32
 AliGenCocktailEventHeader.cxx:33
 AliGenCocktailEventHeader.cxx:34
 AliGenCocktailEventHeader.cxx:35
 AliGenCocktailEventHeader.cxx:36
 AliGenCocktailEventHeader.cxx:37
 AliGenCocktailEventHeader.cxx:38
 AliGenCocktailEventHeader.cxx:39
 AliGenCocktailEventHeader.cxx:40
 AliGenCocktailEventHeader.cxx:41
 AliGenCocktailEventHeader.cxx:42
 AliGenCocktailEventHeader.cxx:43
 AliGenCocktailEventHeader.cxx:44
 AliGenCocktailEventHeader.cxx:45
 AliGenCocktailEventHeader.cxx:46
 AliGenCocktailEventHeader.cxx:47
 AliGenCocktailEventHeader.cxx:48
 AliGenCocktailEventHeader.cxx:49
 AliGenCocktailEventHeader.cxx:50
 AliGenCocktailEventHeader.cxx:51
 AliGenCocktailEventHeader.cxx:52
 AliGenCocktailEventHeader.cxx:53
 AliGenCocktailEventHeader.cxx:54
 AliGenCocktailEventHeader.cxx:55
 AliGenCocktailEventHeader.cxx:56
 AliGenCocktailEventHeader.cxx:57
 AliGenCocktailEventHeader.cxx:58
 AliGenCocktailEventHeader.cxx:59
 AliGenCocktailEventHeader.cxx:60
 AliGenCocktailEventHeader.cxx:61
 AliGenCocktailEventHeader.cxx:62
 AliGenCocktailEventHeader.cxx:63
 AliGenCocktailEventHeader.cxx:64
 AliGenCocktailEventHeader.cxx:65
 AliGenCocktailEventHeader.cxx:66
 AliGenCocktailEventHeader.cxx:67
 AliGenCocktailEventHeader.cxx:68
 AliGenCocktailEventHeader.cxx:69
 AliGenCocktailEventHeader.cxx:70
 AliGenCocktailEventHeader.cxx:71
 AliGenCocktailEventHeader.cxx:72
 AliGenCocktailEventHeader.cxx:73
 AliGenCocktailEventHeader.cxx:74
 AliGenCocktailEventHeader.cxx:75
 AliGenCocktailEventHeader.cxx:76
 AliGenCocktailEventHeader.cxx:77
 AliGenCocktailEventHeader.cxx:78
 AliGenCocktailEventHeader.cxx:79