comp/AliHLTTPCCompModelDeflaterComponent.h
comp/AliHLTTPCCompModelInflater.h
comp/AliHLTTPCCompModelInflaterComponent.h
- AliHLTTPCEventStatistics.h
- AliHLTTPCEventStatisticsProducerComponent.h
- AliHLTTPCRunStatistics.h
- AliHLTTPCRunStatisticsProducerComponent.h
AliHLTTPCKryptonClusterFinder.h
AliHLTTPCKryptonClusterFinderComponent.h
AliHLTTPCClusterHistoComponent.h
+++ /dev/null
-//-*- Mode: C++ -*-
-// $Id$
-/**************************************************************************
- * This file is property of and copyright by the ALICE HLT Project *
- * ALICE Experiment at CERN, All rights reserved. *
- * *
- * Primary Authors: Jochen Thaeder <thaeder@kip.uni-heidelberg.de> *
- * for The ALICE HLT Project. *
- * *
- * 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. *
- **************************************************************************/
-
-/** @file AliHLTEventSummary.cxx
- @author Jochen Thaeder
- @date
- @brief Summary class for run statistics, merges all detectors
-*/
-
-// see header file for class documentation
-// or
-// refer to README to build package
-// or
-// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
-
-#if __GNUC__ >= 3
-using namespace std;
-#endif
-
-#include "AliHLTEventSummary.h"
-
-ClassImp(AliHLTEventSummary)
-
- AliHLTEventSummary::AliHLTEventSummary() :
- fRejected(kTRUE),
- fRunNumber(0),
- fRunType(0),
- fTriggerClass(0),
- fDetectorArray(NULL) {
- // see header file for class documentation
- // or
- // refer to README to build package
- // or
- // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
-
- fDetectorArray = new TObjArray;
- fDetectorArray->SetOwner();
-}
-
-AliHLTEventSummary::~AliHLTEventSummary() {
- // see header file for class documentation
-
- if ( fDetectorArray )
- delete fDetectorArray;
- fDetectorArray = NULL;
-}
-
-Bool_t AliHLTEventSummary::AddDetector( TObject * obj ) {
- // see header file for class documentation
-
- Bool_t bResult = kTRUE;
-
- if ( fDetectorArray ) fDetectorArray->Add( obj );
- else bResult = kFALSE;
-
- return bResult;
-}
+++ /dev/null
-//-*- Mode: C++ -*-
-// $Id$
-#ifndef ALIHLTEVENTSUMMARY_H
-#define ALIHLTEVENTSUMMARY_H
-
-/* This file is property of and copyright by the ALICE HLT Project *
- * ALICE Experiment at CERN, All rights reserved. *
- * See cxx source for full Copyright notice */
-
-/** @file AliHLTEventSummary.h
- @author Jochen Thaeder
- @date
- @brief Summary class for run statistics, merges all detectors
-*/
-
-// see below for class documentation
-// or
-// refer to README to build package
-// or
-// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
-
-#include "TObject.h"
-#include "TObjArray.h"
-#include "TString.h"
-#include "AliHLTDataTypes.h"
-
-/**
- * @class AliHLTEventSummary
- * @brief Summary class for event statistics, merges all detectors
- *
- * The event statistic classes hold information about certain characteristica
- * of the processed events. They are devided into 3 parts. A base class
- * @see AliHLTEventStatistics for general Information, detector specific
- * classes like @see AliHLTTPCEventStatistics for the TPC and a summary class
- * @see AliHLTEventSummary which can hold several detector classes.
- *
- * This is the summary class.
- *
- * See base class @see AliHLTEventStatistics for further information.
- *
- * @ingroup alihlt_run_statistics alihlt_trigger
- */
-
-class AliHLTEventSummary : public TObject {
-
-public:
-
- /** constructor */
- AliHLTEventSummary();
- /** destructor */
- virtual ~AliHLTEventSummary();
-
- // -- event reject ------------------------
-
- /** Reject this event */
- void RejectEvent() { fRejected = kFALSE;}
-
- /** Check event is accepted
- * @return kTRUE if accepted, kFALSE if rejected
- */
- Bool_t IsAccepted() const { return fRejected;}
-
- // -- run parameters ------------------------
-
- /** Set Run Number
- * @param i run number
- */
- void SetRunNumber( AliHLTUInt32_t i ) { fRunNumber = i; }
-
- /** Get Run Number
- * @return run number
- */
- AliHLTUInt32_t GetRunNumber() const { return fRunNumber;}
-
- /** Set Run Type
- * @param i run type
- */
- void SetRunType( AliHLTUInt32_t i ) { fRunType = i; }
-
- /** Get Run Type s
- * @return run type
- */
- AliHLTUInt32_t GetRunType() const { return fRunType; }
-
- // -- trigger parameters ------------------------
-
- /** Set ocurrance of trigger classe with index i
- * @param u index of Trigger Class
- * @return kTRUE on success
- */
- void SetTriggerClass( AliHLTUInt64_t u ) { fTriggerClass = u; }
-
- /** Get ocurrance of trigger classes
- * @return ptr to array of trigger classes
- */
- AliHLTUInt64_t GetTriggerClasses() const { return fTriggerClass; }
-
- // -- detector parameters ------------------------
-
- /** Detector run statistics classes
- * @return ptr to Detector arry
- */
- const TObjArray* GetDetectorArray () const { return fDetectorArray; }
- TObjArray* GetDetectorArray () { return fDetectorArray; }
-
- /** Rest the Detector array, all elements are removed */
- void ResetDetectorArray() { if ( fDetectorArray ) fDetectorArray->Clear(); }
-
- /** Add another detector event statistics class to detector arry
- * @param obj to TObject, which should be added
- * @return kTRUE on success
- */
- Bool_t AddDetector( TObject *obj );
-
-private:
-
- /** copy constructor prohibited */
- AliHLTEventSummary (const AliHLTEventSummary&);
-
- /** assignment operator prohibited */
- AliHLTEventSummary& operator= (const AliHLTEventSummary&);
-
- /** Event rejected
- * - kFALSE is rejected
- * - kTRUE is default
- */
- Bool_t fRejected; // see above
-
- /** Run Number */
- AliHLTUInt32_t fRunNumber; // see above
-
- /** Run Type */
- AliHLTUInt32_t fRunType; // see above
-
- /** Trigger class */
- AliHLTUInt64_t fTriggerClass; // see above
-
- /** Detector run statistics classes */
- TObjArray* fDetectorArray; //! transient
-
- ClassDef(AliHLTEventSummary, 1);
-
-};
-#endif
+++ /dev/null
-//-*- Mode: C++ -*-
-// $Id$
-/**************************************************************************
- * This file is property of and copyright by the ALICE HLT Project *
- * ALICE Experiment at CERN, All rights reserved. *
- * *
- * Primary Authors: Jochen Thaeder <thaeder@kip.uni-heidelberg.de> *
- * for The ALICE HLT Project. *
- * *
- * 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. *
- **************************************************************************/
-
-/** @file AliHLTEventSummaryProducerComponent.cxx
- @author Jochen Thaeder
- @date
- @brief Produces a event summary as @see AliHLTEventSummary
-*/
-
-// see header file for class documentation
-// or
-// refer to README to build package
-// or
-// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
-
-#if __GNUC__ >= 3
-using namespace std;
-#endif
-
-#include "AliHLTEventSummaryProducerComponent.h"
-#include "AliHLTTPCEventStatistics.h"
-#include "AliRawDataHeader.h"
-
-#include <cerrno>
-
-// ** This is a global object used for automatic component registration, do not use this
-AliHLTEventSummaryProducerComponent gAliHLTEventSummaryProducerComponent;
-
-ClassImp(AliHLTEventSummaryProducerComponent)
-
-// ------------------------------------------------------------------------------------------
-AliHLTEventSummaryProducerComponent::AliHLTEventSummaryProducerComponent() :
- fEventSummary(NULL) {
- // see header file for class documentation
- // or
- // refer to README to build package
- // or
- // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
-}
-
-// ------------------------------------------------------------------------------------------
-AliHLTEventSummaryProducerComponent::~AliHLTEventSummaryProducerComponent() {
- // see header file for class documentation
-}
-
-// ------------------------------------------------------------------------------------------
-const char* AliHLTEventSummaryProducerComponent::GetComponentID() {
- // see header file for class documentation
- return "TriggerEventSummaryProducer";
-}
-
-// ------------------------------------------------------------------------------------------
-void AliHLTEventSummaryProducerComponent::GetInputDataTypes(AliHLTComponentDataTypeList& list) {
- // see header file for class documentation
-
- list.clear();
- list.push_back( kAliHLTDataTypeEventStatistics );
-}
-
-// ------------------------------------------------------------------------------------------
-AliHLTComponentDataType AliHLTEventSummaryProducerComponent::GetOutputDataType() {
- // see header file for class documentation
-
- return kAliHLTDataTypeEventSummary;
-}
-
-// ------------------------------------------------------------------------------------------
-void AliHLTEventSummaryProducerComponent::GetOutputDataSize( unsigned long& constBase,
- double& inputMultiplier ) {
- // see header file for class documentation
-
- constBase = sizeof( AliHLTEventSummary );
- inputMultiplier = 0.0;
-}
-
-// ------------------------------------------------------------------------------------------
-AliHLTComponent* AliHLTEventSummaryProducerComponent::Spawn() {
- // Spawn function, return new instance of this class
- // see header file for class documentation
-
- return new AliHLTEventSummaryProducerComponent;
-}
-
-
-// ------------------------------------------------------------------------------------------
-Int_t AliHLTEventSummaryProducerComponent::DoInit( int /*argc*/, const char** /*argv*/ ) {
- // see header file for class documentation
-
- Int_t iResult = 0;
-
- return iResult;
-}
-
-// ------------------------------------------------------------------------------------------
-Int_t AliHLTEventSummaryProducerComponent::DoDeinit() {
- // see header file for class documentation
-
- if ( fEventSummary )
- delete fEventSummary;
- fEventSummary = NULL;
-
- return 0;
-}
-
-// ------------------------------------------------------------------------------------------
-Int_t AliHLTEventSummaryProducerComponent::DoEvent( const AliHLTComponentEventData& /*evtData*/, AliHLTComponentTriggerData& trigData ) {
- // see header file for class documentation
-
- if ( fEventSummary )
- delete fEventSummary;
-
- fEventSummary = new AliHLTEventSummary;
-
- const TObject* iter = NULL;
-
- // ** Loop over all event statistics input objs and add them to the event summary
- for ( iter = GetFirstInputObject(kAliHLTDataTypeEventStatistics|kAliHLTDataOriginAny); iter != NULL; iter = GetNextInputObject() ) {
-
- fEventSummary->AddDetector( (TObject*) iter );
-
- } // for ( iter = GetFirstInputObject(kAliHLTDataTypeEventEventStatistics|kAliHLTDataOriginAny); iter != NULL; iter = GetNextInputObject() ) {
-
- // ** Process CTP trigger information
- ProcessTriggerData( trigData );
-
- // ** Set RunType / Run Number
- fEventSummary->SetRunNumber ( GetRunNo() );
- fEventSummary->SetRunType ( GetRunType() );
-
- // ** PushBack Event Summary
- PushBack ( (TObject*) fEventSummary, sizeof(AliHLTEventSummary), kAliHLTDataTypeEventSummary, (AliHLTUInt32_t) 0 );
-
- return 0;
-}
-
-// -- **********************************************************************************************
-// -- ******************************* Processing Functions **************************************
-// -- **********************************************************************************************
-
-// -- **********************************************************************************************
-void AliHLTEventSummaryProducerComponent::ProcessTriggerData( AliHLTComponentTriggerData& trigData ) {
- // see header file for class documentation
-
- const AliRawDataHeader* cdh = NULL;
- if (AliHLTComponent::ExtractTriggerData(trigData, NULL, NULL, &cdh, NULL, true) != 0) return;
- AliHLTUInt64_t triggerClass = cdh->GetTriggerClasses();
- fEventSummary->SetTriggerClass( triggerClass );
-}
+++ /dev/null
- //-*- Mode: C++ -*-
-// $Id$
-#ifndef ALIHLTEVENTSUMMARYPRODUCERCOMPONENT_H
-#define ALIHLTEVENTSUMMARYPRODUCERCOMPONENT_H
-
-/* This file is property of and copyright by the ALICE HLT Project *
- * ALICE Experiment at CERN, All rights reserved. *
- * See cxx source for full Copyright notice */
-
-/** @file AliHLTEventSummaryProducerComponent.h
- @author Jochen Thaeder
- @date
- @brief Produces a event summary as @see AliHLTEventSummary
-*/
-
-// see below for class documentation
-// or
-// refer to README to build package
-// or
-// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
-
-#include "AliHLTProcessor.h"
-#include "AliHLTEventSummary.h"
-
-/**
- * @class AliHLTEventSummaryProducerComponent
- * @brief Produces a event summary as @see AliHLTEventSummary
- *
- * This class produces a event summary, updating informations for all subdetectors
- * and sends it out for every event.
- *
- * @ingroup alihlt_run_statistics alihlt_trigger
- */
-
-class AliHLTEventSummaryProducerComponent : public AliHLTProcessor {
-
-public:
-
- /** constructor */
- AliHLTEventSummaryProducerComponent();
- /** destructor */
- virtual ~AliHLTEventSummaryProducerComponent();
-
- // Public functions to implement AliHLTComponent's interface.
- // These functions are required for the registration process
-
- const char* GetComponentID();
- void GetInputDataTypes( AliHLTComponentDataTypeList& list );
-
- AliHLTComponentDataType GetOutputDataType();
-
- virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier );
- AliHLTComponent* Spawn();
-
- protected:
-
- using AliHLTProcessor::DoEvent;
-
- // Protected functions to implement AliHLTComponent's interface.
- // These functions provide initialization as well as the actual processing
- // capabilities of the component.
-
- /** Initialize the component. */
- Int_t DoInit( int argc, const char** argv );
-
- /** DeInitialize the component. */
- Int_t DoDeinit();
-
- /** Process the data in the component */
- Int_t DoEvent( const AliHLTComponentEventData& evtData, AliHLTComponentTriggerData& trigData);
-
- // ------------------------------------------------------------------------------------------
-
- /** Process trigger data block
- * @param trigData to @see AliHLTComponentTriggerData
- */
- void ProcessTriggerData( AliHLTComponentTriggerData& trigData );
-
-private:
-
- /** copy constructor prohibited */
- AliHLTEventSummaryProducerComponent (const AliHLTEventSummaryProducerComponent&);
-
- /** assignment operator prohibited */
- AliHLTEventSummaryProducerComponent& operator= (const AliHLTEventSummaryProducerComponent&);
-
- /** Event summary class*/
- AliHLTEventSummary* fEventSummary; //! transient
-
- ClassDef(AliHLTEventSummaryProducerComponent, 0);
-
-};
-#endif
-
+++ /dev/null
-//-*- Mode: C++ -*-
-// $Id$
-/**************************************************************************
- * This file is property of and copyright by the ALICE HLT Project *
- * ALICE Experiment at CERN, All rights reserved. *
- * *
- * Primary Authors: Jochen Thaeder <thaeder@kip.uni-heidelberg.de> *
- * for The ALICE HLT Project. *
- * *
- * 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. *
- **************************************************************************/
-
-/** @file AliHLTRunSummary.cxx
- @author Jochen Thaeder
- @date
- @brief Summary class for a run, merges all detectors
-*/
-
-// see header file for class documentation
-// or
-// refer to README to build package
-// or
-// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
-
-#if __GNUC__ >= 3
-using namespace std;
-#endif
-
-#include "AliHLTRunSummary.h"
-
-ClassImp(AliHLTRunSummary)
-
- AliHLTRunSummary::AliHLTRunSummary() :
- fNEvents(0),
- fNEventsRejected(0),
- fRunNumber(0),
- fRunType(0),
- fTriggerClasses(),
- fDetectorArray(NULL) {
- // see header file for class documentation
- // or
- // refer to README to build package
- // or
- // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
-
- memset( fTriggerClasses, 0, (gkNCTPTriggerClasses * sizeof(ULong_t)) );
-
- fDetectorArray = new TObjArray;
- fDetectorArray->SetOwner();
-}
-
-AliHLTRunSummary::~AliHLTRunSummary() {
- // see header file for class documentation
-
- if ( fDetectorArray )
- delete fDetectorArray;
- fDetectorArray = NULL;
-
-}
-
-Bool_t AliHLTRunSummary::AddTriggerClass( Int_t ndx ) {
- // see header file for class documentation
-
- Bool_t bResult = kTRUE;
-
- if ( ndx < gkNCTPTriggerClasses ) fTriggerClasses[ndx]++;
- else bResult = kFALSE;
-
- return bResult;
-}
-
-Bool_t AliHLTRunSummary::AddDetector( TObject * obj ) {
- // see header file for class documentation
-
- Bool_t bResult = kTRUE;
-
- if ( fDetectorArray ) fDetectorArray->Add( obj );
- else bResult = kFALSE;
-
- return bResult;
-}
+++ /dev/null
-//-*- Mode: C++ -*-
-// $Id$
-#ifndef ALIHLTRUNSUMMARY_H
-#define ALIHLTRUNSUMMARY_H
-
-/* This file is property of and copyright by the ALICE HLT Project *
- * ALICE Experiment at CERN, All rights reserved. *
- * See cxx source for full Copyright notice */
-
-/** @file AliHLTRunSummary.h
- @author Jochen Thaeder
- @date
- @brief Summary class for a run, merges all detectors
-*/
-
-// see below for class documentation
-// or
-// refer to README to build package
-// or
-// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
-
-#include "TObject.h"
-#include "TObjArray.h"
-
-#include "AliHLTDataTypes.h"
-
-/**
- * @class AliHLTRunSummary
- * @brief Summary class for a run, merges all detectors
- *
- * The run statistic classes hold information / histograms about certain
- * characteristica of the processed events. They are devided into 3 parts.
- * A base class @see AliHLTRunStatistics for general Information, detector
- * specific classes like @see AliHLTTPCRunStatistics for the TPC and a summary
- * class @see AliHLTRunSummary which can hold several detector classes.
- *
- * This is the summary class.
- *
- * See base class @see AliHLTRunStatistics for further information.
- *
- * @ingroup alihlt_run_statistics alihlt_trigger
- */
-
-class AliHLTRunSummary : public TObject {
-
-public:
-
- /** constructor */
- AliHLTRunSummary();
- /** destructor */
- virtual ~AliHLTRunSummary();
-
- // -- event parameters ------------------------
-
- /** Set Number of events
- * @param i number of events
- */
- void SetNEvents( ULong_t i ) { fNEvents = i; }
-
- /** Add events */
- void AddNEvents() { fNEvents++; }
-
- /** Get number of events
- * @return number of events
- */
- ULong_t GetNEvents() const { return fNEvents; }
-
- /** Set number of rejected events
- * @param i number of events rejected
- */
- void SetNEventsRejected( ULong_t i ) { fNEventsRejected = i; }
-
- /** Add rejected events */
- void AddNEventsRejected() { fNEventsRejected++; }
-
- /** Get number of reejcted events
- * @return number of events rejected
- */
- ULong_t GetNEventsRejected() const { return fNEventsRejected; }
-
- // -- run parameters ------------------------
-
- /** Set Run Number
- * @param i run number
- */
- void SetRunNumber( AliHLTUInt32_t i ) { fRunNumber = i; }
-
- /** Get Run Number
- * @return run number
- */
- AliHLTUInt32_t GetRunNumber() const { return fRunNumber;}
-
- /** Set Run Type
- * @param i run type
- */
- void SetRunType( AliHLTUInt32_t i ) { fRunType = i; }
-
- /** Get Run Type s
- * @return run type
- */
- AliHLTUInt32_t GetRunType() const { return fRunType; }
-
- // -- trigger parameters ------------------------
-
- /** Set ocurrance of trigger classe with index ndx
- * @param ndx index of Trigger Class
- * @return kTRUE on success
- */
- Bool_t AddTriggerClass( Int_t ndx );
-
- /** Get ocurrance of trigger classes
- * @return ptr to array of trigger classes
- */
- const ULong_t* GetTriggerClasses() const { return fTriggerClasses; }
- ULong_t* GetTriggerClasses() { return fTriggerClasses; }
-
- // -- detector parameters ------------------------
-
- /** Detector run statistics classes
- * @return ptr to Detector arry
- */
- TObjArray* GetDetectorArray () { return fDetectorArray; }
-
- /** Rest the Detector array, all elements are removed */
- void ResetDetectorArray() { if ( fDetectorArray ) fDetectorArray->Clear(); }
-
- /** Add another detector run statistics class to detector arry
- * @param obj to TObject, which should be added
- * @return kTRUE on success
- */
- Bool_t AddDetector( TObject *obj );
-
-private:
-
- /** copy constructor prohibited */
- AliHLTRunSummary (const AliHLTRunSummary&);
-
- /** assignment operator prohibited */
- AliHLTRunSummary& operator= (const AliHLTRunSummary&);
-
- /** Number of events */
- ULong_t fNEvents; // see above
-
- /** Number of rejected events */
- ULong_t fNEventsRejected; // see above
-
- /** Run Number */
- AliHLTUInt32_t fRunNumber; // see above
-
- /** Run Type */
- AliHLTUInt32_t fRunType; // see above
-
- /** Ocurrance of trigger classes */
- ULong_t fTriggerClasses[gkNCTPTriggerClasses]; // see above
-
- /** Detector run statistics classes */
- TObjArray* fDetectorArray; //! transient
-
- ClassDef(AliHLTRunSummary, 1);
-};
-#endif
+++ /dev/null
-//-*- Mode: C++ -*-
-// $Id$
-/**************************************************************************
- * This file is property of and copyright by the ALICE HLT Project *
- * ALICE Experiment at CERN, All rights reserved. *
- * *
- * Primary Authors: Jochen Thaeder <thaeder@kip.uni-heidelberg.de> *
- * for The ALICE HLT Project. *
- * *
- * 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. *
- **************************************************************************/
-
-/** @file AliHLTRunSummaryProducerComponent.cxx
- @author Jochen Thaeder
- @date
- @brief Produces a run summary as @see AliHLTRunSummary
-*/
-
-// see header file for class documentation
-// or
-// refer to README to build package
-// or
-// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
-
-#if __GNUC__ >= 3
-using namespace std;
-#endif
-
-#include "AliHLTRunSummaryProducerComponent.h"
-#include "AliHLTEventSummary.h"
-#include "AliHLTDataTypes.h"
-#include "AliRawDataHeader.h"
-
-#include <cerrno>
-
-// ** This is a global object used for automatic component registration, do not use this
-AliHLTRunSummaryProducerComponent gAliHLTRunSummaryProducerComponent;
-
-ClassImp(AliHLTRunSummaryProducerComponent)
-
-// ------------------------------------------------------------------------------------------
-AliHLTRunSummaryProducerComponent::AliHLTRunSummaryProducerComponent() :
- fRunSummary(NULL) {
- // see header file for class documentation
- // or
- // refer to README to build package
- // or
- // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
-}
-
-// ------------------------------------------------------------------------------------------
-AliHLTRunSummaryProducerComponent::~AliHLTRunSummaryProducerComponent() {
- // see header file for class documentation
-}
-
-// ------------------------------------------------------------------------------------------
-const char* AliHLTRunSummaryProducerComponent::GetComponentID() {
- // see header file for class documentation
- return "TriggerRunSummaryProducer";
-}
-
-// ------------------------------------------------------------------------------------------
-void AliHLTRunSummaryProducerComponent::GetInputDataTypes(AliHLTComponentDataTypeList& list) {
- // see header file for class documentationAliHLTRunSummary
-
- list.clear();
- list.push_back( kAliHLTDataTypeEventSummary );
- list.push_back( kAliHLTDataTypeRunStatistics );
-}
-
-// ------------------------------------------------------------------------------------------
-AliHLTComponentDataType AliHLTRunSummaryProducerComponent::GetOutputDataType() {
- // see header file for class documentation
-
- return kAliHLTDataTypeRunSummary;
-}
-
-// ------------------------------------------------------------------------------------------
-void AliHLTRunSummaryProducerComponent::GetOutputDataSize( unsigned long& constBase,
- double& inputMultiplier ) {
- // see header file for class documentation
-
- constBase = sizeof( AliHLTRunSummary );
- inputMultiplier = 0.0;
-}
-
-// ------------------------------------------------------------------------------------------
-AliHLTComponent* AliHLTRunSummaryProducerComponent::Spawn() {
- // Spawn function, return new instance of this class
- // see header file for class documentation
-
- return new AliHLTRunSummaryProducerComponent;
-}
-
-
-// ------------------------------------------------------------------------------------------
-Int_t AliHLTRunSummaryProducerComponent::DoInit( int /*argc*/, const char** /*argv*/ ) {
- // see header file for class documentation
-
- Int_t iResult = 0;
-
- if ( fRunSummary )
- return EINPROGRESS;
-
- fRunSummary = new AliHLTRunSummary();
-
- return iResult;
-}
-
-// ------------------------------------------------------------------------------------------
-Int_t AliHLTRunSummaryProducerComponent::DoDeinit() {
- // see header file for class documentation
-
- if ( fRunSummary )
- delete fRunSummary;
- fRunSummary = NULL;
-
- return 0;
-}
-
-// ------------------------------------------------------------------------------------------
-Int_t AliHLTRunSummaryProducerComponent::DoEvent( const AliHLTComponentEventData& /*evtData*/, AliHLTComponentTriggerData& trigData ) {
- // see header file for class documentation
-
- // ** Process EventSummary Block
- AliHLTEventSummary* eventSummary = (AliHLTEventSummary*) GetFirstInputObject ( kAliHLTDataTypeEventSummary, "AliHLTEventSummary" );
-
- if ( eventSummary )
- ProcessEventSummary ( eventSummary );
-
- // ** Increase Number of Events
- fRunSummary->AddNEvents();
-
- // ** Process CTP trigger information
- ProcessTriggerData( trigData );
-
- // ** Set RunType / Run Number
- fRunSummary->SetRunNumber ( GetRunNo() );
- fRunSummary->SetRunType ( GetRunType() );
-
- // ** PushBack Run Summary
- PushBack ( (TObject*) fRunSummary, sizeof(AliHLTRunSummary), kAliHLTDataTypeRunSummary, (AliHLTUInt32_t) 0 );
-
- return 0;
-}
-
-// -- **********************************************************************************************
-// -- ******************************* Processing Functions **************************************
-// -- **********************************************************************************************
-
-// -- **********************************************************************************************
-void AliHLTRunSummaryProducerComponent::ProcessEventSummary( AliHLTEventSummary* eventSummary ) {
- // see header file for class documentation
-
- // ** Check if event was accepted or rejected
- if ( ! eventSummary->IsAccepted() )
- fRunSummary->AddNEventsRejected();
-}
-
-// -- **********************************************************************************************
-void AliHLTRunSummaryProducerComponent::ProcessTriggerData( AliHLTComponentTriggerData& trigData ) {
- // see header file for class documentation
-
- const AliRawDataHeader* cdh = NULL;
- if (AliHLTComponent::ExtractTriggerData(trigData, NULL, NULL, &cdh, NULL, true) != 0) return;
- AliHLTUInt64_t triggerClasses = cdh->GetTriggerClasses();
-
- for ( Int_t ndx = 0; ndx < gkNCTPTriggerClasses; ndx ++ ) {
-
- if ( triggerClasses & 0x1 )
- fRunSummary->AddTriggerClass( ndx );
-
- triggerClasses = triggerClasses >> 1;
- }
-
-}
-
+++ /dev/null
-//-*- Mode: C++ -*-
-// $Id$
-#ifndef ALIHLTRUNSUMMARYPRODUCERCOMPONENT_H
-#define ALIHLTRUNSUMMARYPRODUCERCOMPONENT_H
-
-/* This file is property of and copyright by the ALICE HLT Project *
- * ALICE Experiment at CERN, All rights reserved. *
- * See cxx source for full Copyright notice */
-
-/** @file AliHLTRunSummaryProducerComponent.h
- @author Jochen Thaeder
- @date
- @brief Produces a run summary
-*/
-
-// see below for class documentation
-// or
-// refer to README to build package
-// or
-// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
-
-#include "AliHLTProcessor.h"
-#include "AliHLTRunSummary.h"
-#include "AliHLTEventSummary.h"
-
-/**
- * @class AliHLTRunSummaryProducerComponent
- * @brief Produces a run summary
- *
- * This class produces a run summary, updating informations for whole run
- * and sends it out for every event, in order to have it displayed with AliEve
- *
- * @ingroup alihlt_run_statistics alihlt_trigger
- */
-
-class AliHLTRunSummaryProducerComponent : public AliHLTProcessor {
-
-public:
-
- /** constructor */
- AliHLTRunSummaryProducerComponent();
- /** destructor */
- virtual ~AliHLTRunSummaryProducerComponent();
-
- // Public functions to implement AliHLTComponent's interface.
- // These functions are required for the registration process
-
- const char* GetComponentID();
- void GetInputDataTypes( AliHLTComponentDataTypeList& list );
-
- AliHLTComponentDataType GetOutputDataType();
-
- virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier );
- AliHLTComponent* Spawn();
-
- protected:
-
- using AliHLTProcessor::DoEvent;
-
- // Protected functions to implement AliHLTComponent's interface.
- // These functions provide initialization as well as the actual processing
- // capabilities of the component.
-
- /** Initialize the component. */
- Int_t DoInit( int argc, const char** argv );
-
- /** DeInitialize the component. */
- Int_t DoDeinit();
-
- /** Process the data in the component */
- Int_t DoEvent( const AliHLTComponentEventData& evtData, AliHLTComponentTriggerData& trigData);
-
- // ------------------------------------------------------------------------------------------
- /** Process event summary data block
- * @param eventSummary to @see AliHLTEventSummary
- */
- void ProcessEventSummary( AliHLTEventSummary* eventSummary );
-
- /** Process trigger data block
- * @param trigData to @see AliHLTComponentTriggerData
- */
- void ProcessTriggerData( AliHLTComponentTriggerData& trigData );
-
-private:
-
- /** copy constructor prohibited */
- AliHLTRunSummaryProducerComponent (const AliHLTRunSummaryProducerComponent&);
-
- /** assignment operator prohibited */
- AliHLTRunSummaryProducerComponent& operator= (const AliHLTRunSummaryProducerComponent&);
-
- /** Run summary class*/
- AliHLTRunSummary* fRunSummary; //! transient
-
- ClassDef(AliHLTRunSummaryProducerComponent, 0);
-
-};
-#endif
-
#include "TTree.h"
// header files of library components
-#include "AliHLTEventSummaryProducerComponent.h"
-#include "AliHLTRunSummaryProducerComponent.h"
#include "AliHLTTriggerBarrelMultiplicity.h"
#include "AliHLTD0Trigger.h"
#include "AliHLTTriggerITSMultiplicity.h"
#pragma link C++ class AliHLTTriggerITSMultiplicity+;
#pragma link C++ class AliHLTTriggerBarrelGeomMultiplicity+;
#pragma link C++ class AliHLTTriggerAgent+;
-#pragma link C++ class AliHLTEventSummary+;
-#pragma link C++ class AliHLTEventSummaryProducerComponent+;
-#pragma link C++ class AliHLTRunSummary+;
-#pragma link C++ class AliHLTRunSummaryProducerComponent+;
#pragma link C++ class AliHLTTriggerCaloClusterEnergy+;
#pragma link C++ class AliHLTTriggerPhosClusterEnergy+;
#pragma link C++ class AliHLTTriggerEmcalClusterEnergy+;