ROOT logo
#ifndef ALIEMCALTRIGGERRAWDIGIT_H
#define ALIEMCALTRIGGERRAWDIGIT_H
/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
 * See cxx source for full Copyright notice                               */

/*
 
 
 Author: R. GUERNANE LPSC Grenoble CNRS/IN2P3
*/

#include "AliEMCALRawDigit.h" 
#include "AliEMCALTriggerTypes.h" 
#include "AliLog.h"

class AliEMCALTriggerRawDigit : public AliEMCALRawDigit 
{
public:
	
	AliEMCALTriggerRawDigit();
	AliEMCALTriggerRawDigit(Int_t id, Int_t timeSamples[], Int_t nSamples);
	
	virtual ~AliEMCALTriggerRawDigit();
	
	void    SetTriggerBit(const int type, const Int_t mode) {fTriggerBits = (fTriggerBits | (1 << (type + kTriggerTypeEnd * mode)));}
	
	Bool_t  SetL0Time(   Int_t i);
	
	Int_t   GetTriggerBit(const TriggerType_t type, const Int_t mode) const;

	Int_t   GetTriggerBits() const {return fTriggerBits;}
	
	Bool_t  GetL0Time(const Int_t i, Int_t& time) const;
	Bool_t  GetL0Times(Int_t times[]            ) const;
	Int_t   GetNL0Times(                        ) const {return fNL0Times;}
	
	Int_t   GetL0TimeSum(const Int_t time) const;
	
	void    SetL1TimeSum(Int_t ts) {if (fL1TimeSum >= 0) AliWarning("You're overwriting digit time sum! Please check"); fL1TimeSum = ts;}
	Int_t   GetL1TimeSum(        ) const {return fL1TimeSum;}
	
	virtual void Print(const Option_t* opt) const;
	
private: 
 
	AliEMCALTriggerRawDigit(const AliEMCALTriggerRawDigit &cd);            // Not implemented
	AliEMCALTriggerRawDigit &operator=(const AliEMCALTriggerRawDigit &cd); // Not implemented

	Int_t   fTriggerBits; // Trigger bits
	Int_t   fNL0Times;    // N L0 times
	Int_t   fL0Times[10]; // L0 times
	
	Int_t   fL1TimeSum;   // L1 time sum
	
	ClassDef(AliEMCALTriggerRawDigit,1)
};
#endif

 AliEMCALTriggerRawDigit.h:1
 AliEMCALTriggerRawDigit.h:2
 AliEMCALTriggerRawDigit.h:3
 AliEMCALTriggerRawDigit.h:4
 AliEMCALTriggerRawDigit.h:5
 AliEMCALTriggerRawDigit.h:6
 AliEMCALTriggerRawDigit.h:7
 AliEMCALTriggerRawDigit.h:8
 AliEMCALTriggerRawDigit.h:9
 AliEMCALTriggerRawDigit.h:10
 AliEMCALTriggerRawDigit.h:11
 AliEMCALTriggerRawDigit.h:12
 AliEMCALTriggerRawDigit.h:13
 AliEMCALTriggerRawDigit.h:14
 AliEMCALTriggerRawDigit.h:15
 AliEMCALTriggerRawDigit.h:16
 AliEMCALTriggerRawDigit.h:17
 AliEMCALTriggerRawDigit.h:18
 AliEMCALTriggerRawDigit.h:19
 AliEMCALTriggerRawDigit.h:20
 AliEMCALTriggerRawDigit.h:21
 AliEMCALTriggerRawDigit.h:22
 AliEMCALTriggerRawDigit.h:23
 AliEMCALTriggerRawDigit.h:24
 AliEMCALTriggerRawDigit.h:25
 AliEMCALTriggerRawDigit.h:26
 AliEMCALTriggerRawDigit.h:27
 AliEMCALTriggerRawDigit.h:28
 AliEMCALTriggerRawDigit.h:29
 AliEMCALTriggerRawDigit.h:30
 AliEMCALTriggerRawDigit.h:31
 AliEMCALTriggerRawDigit.h:32
 AliEMCALTriggerRawDigit.h:33
 AliEMCALTriggerRawDigit.h:34
 AliEMCALTriggerRawDigit.h:35
 AliEMCALTriggerRawDigit.h:36
 AliEMCALTriggerRawDigit.h:37
 AliEMCALTriggerRawDigit.h:38
 AliEMCALTriggerRawDigit.h:39
 AliEMCALTriggerRawDigit.h:40
 AliEMCALTriggerRawDigit.h:41
 AliEMCALTriggerRawDigit.h:42
 AliEMCALTriggerRawDigit.h:43
 AliEMCALTriggerRawDigit.h:44
 AliEMCALTriggerRawDigit.h:45
 AliEMCALTriggerRawDigit.h:46
 AliEMCALTriggerRawDigit.h:47
 AliEMCALTriggerRawDigit.h:48
 AliEMCALTriggerRawDigit.h:49
 AliEMCALTriggerRawDigit.h:50
 AliEMCALTriggerRawDigit.h:51
 AliEMCALTriggerRawDigit.h:52
 AliEMCALTriggerRawDigit.h:53
 AliEMCALTriggerRawDigit.h:54
 AliEMCALTriggerRawDigit.h:55
 AliEMCALTriggerRawDigit.h:56
 AliEMCALTriggerRawDigit.h:57
 AliEMCALTriggerRawDigit.h:58