]>
Commit | Line | Data |
---|---|---|
28ede577 | 1 | #include <iomanip> |
2 | ||
3 | void | |
4 | MakeFakeDigits() | |
5 | { | |
162637e4 | 6 | AliCDBManager::Instance()->SetDefaultStorage("local://$ALICE_ROOT/OCDB"); |
28ede577 | 7 | AliCDBManager::Instance()->SetRun(0); |
8 | AliFMDParameters* param = AliFMDParameters::Instance(); | |
9 | param->Init(kFALSE,(AliFMDParameters::kPulseGain| | |
10 | AliFMDParameters::kPedestal| | |
11 | AliFMDParameters::kDeadMap| | |
12 | AliFMDParameters::kSampleRate| | |
13 | AliFMDParameters::kAltroMap| | |
14 | AliFMDParameters::kStripRange)); | |
15 | // param->SetPedestal(100); | |
16 | ||
17 | TFile* file = TFile::Open("FMD.Digits.root", "RECREATE"); | |
18 | TDirectory* dir = file->mkdir("Event0"); | |
19 | ||
20 | TTree* tree = new TTree("TreeD", "Digits container"); | |
21 | TClonesArray* digits = new TClonesArray("AliFMDDigit"); | |
22 | tree->Branch("FMD", &digits); | |
23 | ||
24 | Int_t i = 0; | |
25 | ||
26 | for (UShort_t d = 1; d <= 3; d++) { | |
27 | UShort_t nrng = (d == 1 ? 1 : 2); | |
28 | for (UShort_t ir = 0; ir < nrng; ir++) { | |
29 | Char_t r = (ir == 0 ? 'I' : 'O'); | |
30 | UShort_t nsec = (ir == 0 ? 20 : 40); | |
31 | UShort_t nstr = (ir == 0 ? 512 : 256); | |
32 | for (UShort_t s = 0; s < nsec; s++) { | |
33 | for (UShort_t t = 0; t < nstr; t++) { | |
34 | std::cout << "FMD" << d << r << "[" << std::setfill('0') | |
35 | << std::setw(2) << s << "," << std::setw(3) << t | |
36 | << "] " << std::setfill(' ') << " " | |
37 | << std::setw(5) << i << "/51200 " | |
38 | << std::setw(3) << int(i*100./51200) << "%\r" | |
39 | << std::flush; | |
40 | ||
41 | UShort_t nsam = param->GetSampleRate(d,r,s,t); | |
42 | AliFMDDigit* digit = new((*(digits))[i]) AliFMDDigit(d,r,s,t); | |
43 | i++; | |
44 | UShort_t c = param->GetPedestal(d,r,s,t); | |
45 | for (UShort_t z = 0; z < nsam; z++) { | |
46 | digit->SetCount(z, c); | |
47 | if (nsam > 1 && z < 1) continue; | |
48 | if ((t > 32 && t < 64) || (t > 96 && t < 98)) | |
49 | digit->SetCount(z, c + 100); | |
50 | } | |
51 | } | |
52 | } | |
53 | } | |
54 | } | |
55 | std::cout << "Done making fake digits" << std::endl; | |
56 | dir->cd(); | |
57 | tree->Fill(); | |
58 | tree->Write(); | |
59 | file->Close(); | |
60 | } | |
61 | ||
62 |