ROOT logo
#ifndef ALICTPTIMEPARAMS_H
#define ALICTPTIMEPARAMS_H

/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
* See cxx source for full Copyright notice */
/* $Id$ */

#include <TNamed.h>
#include <TObjArray.h>
#include "AliCTPInputTimeParams.h"

class TNamed;

class AliCTPTimeParams : public TNamed {

public:
			AliCTPTimeParams();
              virtual   ~AliCTPTimeParams();
	
                        AliCTPTimeParams(const AliCTPTimeParams &timeparams);
      AliCTPTimeParams& operator=(const AliCTPTimeParams& timeparams);		

             
	static AliCTPTimeParams* LoadCTPTimeParams(TString filename);	
	static AliCTPTimeParams* LoadCTPTimeParamsFromString(const char* timeparams);
		Bool_t ProcessCTPTimeParamsLine(const char* line);
		  void AddInput( TString& inputName, UInt_t& inputLevel, UInt_t inputDelay, TString inputEdge, UInt_t deltamin, UInt_t deltamax );
		  void AddDelayL0L1L2(Int_t delayL1L0, UInt_t delayL2L0);
	  virtual void Print(const Option_t* opt="") const;
		//Setters

		//Getters
		Int_t   GetDelayL1L0()   const { return fDelayL1L0; }
	        UInt_t  GetDelayL2L0()   const { return fDelayL2L0; }                  const TObjArray* GetInputTimeParams() const { return &fCTPInputTimeParams; }
      AliCTPInputTimeParams* GetTimeParamsForInput(TString inputname);
      Int_t GetDeltasforClass(TString classname,Int_t& deltamin,Int_t& deltamax);

                enum {kNMaxInputs = 60}; //CTP can manage up to 60 trigger detector inputs
private:
			Int_t  fDelayL1L0;
			UInt_t fDelayL2L0;
			TObjArray fCTPInputTimeParams;

  ClassDef( AliCTPTimeParams, 3 ) 
};

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