ROOT logo
#ifndef ALIMUONGAINEVENTGENERATOR_H
#define ALIMUONGAINEVENTGENERATOR_H

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

// $Id$

/// \ingroup sim
/// \class AliMUONGainEventGenerator
/// \brief Generate gain-calibration-like files
/// 
// Author Laurent Aphecetche

#ifndef ROOT_TTask
#  include "TTask.h"
#endif
#ifndef ROOT_TString
#  include "TString.h"
#endif

class AliMUONCalibrationData;
class AliMUONVStore;

class AliMUONGainEventGenerator : public TTask
{
public:
  AliMUONGainEventGenerator(Int_t sourceGainRunNumber,                          
                            Int_t sourcePedRunNumber,
                            Int_t nEventsPerFile, 
                            const char* dateBaseFileName);
  virtual ~AliMUONGainEventGenerator();
  
  virtual void Exec(Option_t* option);
  
private:
    /// not implemented
    AliMUONGainEventGenerator(const AliMUONGainEventGenerator& rhs);
  /// not implemented
  AliMUONGainEventGenerator& operator=(const AliMUONGainEventGenerator& rhs);
  
  void GeneratePedestals(Int_t runNumber, Float_t injection);
  void WriteToCDB(TObject* object, Int_t runNumber);

private:
  Int_t fNofEventsPerFile; //!< number of events to generate per file
  Int_t fSourcePedestalRunNumber; //!< run number of pedestal to be used
  TString fDateBaseFileName; //!< base file name of the output file
  AliMUONVStore* fSourceGains; //!< the gains used to generate the files
  AliMUONVStore* fSourcePedestals; //!< the pedestals used to generate the fiels
  
  ClassDef(AliMUONGainEventGenerator,1) // Generate gain-like files
};

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