// @(#)root/tree:$Name: $:$Id: TSelectorScalar.cxx,v 1.1 2005/02/21 09:44:47 rdm Exp $
// Author: Maarten Ballintijn 13/02/2005
/*************************************************************************
* Copyright (C) 1995-2005, Rene Brun and Fons Rademakers. *
* All rights reserved. *
* *
* For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/
//////////////////////////////////////////////////////////////////////////
// //
// TSelectorScalar //
// //
// Named scalar type, based on Long64_t, streamable, storable and //
// mergable. Ideally to be used in tree selectors in the PROOF //
// environment due to its merge fucntionality which allows a single //
// merged value to be returned to the user. //
// //
//////////////////////////////////////////////////////////////////////////
#include "TSelectorScalar.h"
#include "TCollection.h"
ClassImp(TSelectorScalar)
//______________________________________________________________________________
void TSelectorScalar::Inc(Long_t n)
{
// Increment scalar value by n.
SetVal(GetVal() + n);
}
//______________________________________________________________________________
Int_t TSelectorScalar::Merge(TCollection *list)
{
// Merge scalars with scalars in the list. The scalar values are added.
// Returns the number of scalars that were in the list.
TIter next(list);
Int_t n = 0;
while (TObject *obj = next()) {
TSelectorScalar *c = dynamic_cast<TSelectorScalar*>(obj);
if (c) {
Inc(c->GetVal());
n++;
}
}
return n;
}
ROOT page - Class index - Class Hierarchy - Top of the page
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.