#include "AliMUONDarcHeader.h"
#include "AliMUONRegHeader.h"
ClassImp(AliMUONDarcHeader)
const Int_t AliMUONDarcHeader::fgkDarcHeaderLength = 1;
const Int_t AliMUONDarcHeader::fgkGlobalHeaderLength = 5;
const Int_t AliMUONDarcHeader::fgkDarcScalerLength = 8;
const Int_t AliMUONDarcHeader::fgkGlobalScalerLength = 10;
const UInt_t AliMUONDarcHeader::fgkEndOfDarc = 0xDEADFACE;
const UInt_t AliMUONDarcHeader::fgkEndOfGlobal = 0xDEADBEEF;
const UInt_t AliMUONDarcHeader::fgkDarcVadorhType = 4;
const UInt_t AliMUONDarcHeader::fgkDarcDefaultType = 6;
AliMUONDarcHeader::AliMUONDarcHeader(TRootIOCtor* )
: TObject(),
fWord(0),
fGlobalOutput(0),
fGlobalL0(0),
fGlobalClk(0),
fGlobalHold(0),
fGlobalSpare(0),
fDarcL0R(0),
fDarcL1P(0),
fDarcL1S(0),
fDarcL2A(0),
fDarcL2R(0),
fDarcClk(0),
fDarcHold(0),
fDarcSpare(0),
fRegHeaderArray(0x0)
{
for (Int_t i = 0; i < 4; i++)
fGlobalInput[i] = 0;
for (Int_t i = 0; i < 6; i++)
fGlobalScaler[i] = 0;
}
AliMUONDarcHeader::AliMUONDarcHeader()
: TObject(),
fWord(0),
fGlobalOutput(0),
fGlobalL0(0),
fGlobalClk(0),
fGlobalHold(0),
fGlobalSpare(0),
fDarcL0R(0),
fDarcL1P(0),
fDarcL1S(0),
fDarcL2A(0),
fDarcL2R(0),
fDarcClk(0),
fDarcHold(0),
fDarcSpare(0),
fRegHeaderArray(new TClonesArray("AliMUONRegHeader",8))
{
for (Int_t i = 0; i < 4; i++)
fGlobalInput[i] = 0;
for (Int_t i = 0; i < 6; i++)
fGlobalScaler[i] = 0;
}
AliMUONDarcHeader::AliMUONDarcHeader(const AliMUONDarcHeader& event)
: TObject(event),
fWord(event.fWord),
fGlobalOutput(event.fGlobalOutput),
fGlobalL0(event.fGlobalL0),
fGlobalClk(event.fGlobalClk),
fGlobalHold(event.fGlobalHold),
fGlobalSpare(event.fGlobalSpare),
fDarcL0R(event.fDarcL0R),
fDarcL1P(event.fDarcL1P),
fDarcL1S(event.fDarcL1S),
fDarcL2A(event.fDarcL2A),
fDarcL2R(event.fDarcL2R),
fDarcClk(event.fDarcClk),
fDarcHold(event.fDarcHold),
fDarcSpare(event.fDarcSpare),
fRegHeaderArray(new TClonesArray("AliMUONRegHeader", 8))
{
for (Int_t i = 0; i < 4; i++)
fGlobalInput[i] = event.fGlobalInput[i];
for (Int_t i = 0; i < 6; i++)
fGlobalScaler[i] = event.fGlobalScaler[i];
for (Int_t index = 0; index < (event.fRegHeaderArray)->GetEntriesFast(); index++) {
new ((*fRegHeaderArray)[fRegHeaderArray->GetEntriesFast()])
AliMUONRegHeader(*(AliMUONRegHeader*)(event.fRegHeaderArray)->At(index));
}
}
AliMUONDarcHeader& AliMUONDarcHeader::operator=(const AliMUONDarcHeader& event)
{
if (this == &event) return *this;
fWord = event.fWord;
fGlobalOutput = event.fGlobalOutput;
fGlobalL0 = event.fGlobalL0;
fGlobalClk = event.fGlobalClk;
fGlobalHold = event.fGlobalHold;
fGlobalSpare = event.fGlobalSpare;
fDarcL0R = event.fDarcL0R;
fDarcL1P = event.fDarcL1P;
fDarcL1S = event.fDarcL1S;
fDarcL2A = event.fDarcL2A;
fDarcL2R = event.fDarcL2R;
fDarcClk = event.fDarcClk;
fDarcHold = event.fDarcHold;
fDarcSpare = event.fDarcSpare;
for (Int_t i = 0; i < 4; i++)
fGlobalInput[i] = event.fGlobalInput[i];
for (Int_t i = 0; i < 6; i++)
fGlobalScaler[i] = event.fGlobalScaler[i];
fRegHeaderArray = new TClonesArray("AliMUONRegHeader", 8);
for (Int_t index = 0; index < (event.fRegHeaderArray)->GetEntriesFast(); index++) {
new ((*fRegHeaderArray)[fRegHeaderArray->GetEntriesFast()])
AliMUONRegHeader(*(AliMUONRegHeader*)(event.fRegHeaderArray)->At(index));
}
return *this;
}
AliMUONDarcHeader::~AliMUONDarcHeader()
{
fRegHeaderArray->Delete();
delete fRegHeaderArray;
}
void AliMUONDarcHeader::SetScalersNumbers()
{
fGlobalL0 = 1000;
fGlobalClk = 10000;
fGlobalHold = 100;
fGlobalSpare = 1;
fDarcL0R = 1000;
fDarcL1P = 900;
fDarcL1S = 800;
fDarcL2A = 700;
fDarcL2R = 700;
fDarcClk = 10000;
fDarcHold = 100;
fDarcSpare = 0;
for (Int_t i = 0; i < 6; i++)
fGlobalScaler[i] = i;
}
Bool_t AliMUONDarcHeader::GetEventType() const
{
Bool_t b1 = (fWord >> 30) & 0x1;
Bool_t b2 = !((fWord >> 31) & 0x1);
return (b1 & b2);
}
void AliMUONDarcHeader::Clear(Option_t* )
{
fRegHeaderArray->Clear("C");
}
AliMUONDarcHeader.cxx:100 AliMUONDarcHeader.cxx:101 AliMUONDarcHeader.cxx:102 AliMUONDarcHeader.cxx:103 AliMUONDarcHeader.cxx:104 AliMUONDarcHeader.cxx:105 AliMUONDarcHeader.cxx:106 AliMUONDarcHeader.cxx:107 AliMUONDarcHeader.cxx:108 AliMUONDarcHeader.cxx:109 AliMUONDarcHeader.cxx:110 AliMUONDarcHeader.cxx:111 AliMUONDarcHeader.cxx:112 AliMUONDarcHeader.cxx:113 AliMUONDarcHeader.cxx:114 AliMUONDarcHeader.cxx:115 AliMUONDarcHeader.cxx:116 AliMUONDarcHeader.cxx:117 AliMUONDarcHeader.cxx:118 AliMUONDarcHeader.cxx:119 AliMUONDarcHeader.cxx:120 AliMUONDarcHeader.cxx:121 AliMUONDarcHeader.cxx:122 AliMUONDarcHeader.cxx:123 AliMUONDarcHeader.cxx:124 AliMUONDarcHeader.cxx:125 AliMUONDarcHeader.cxx:126 AliMUONDarcHeader.cxx:127 AliMUONDarcHeader.cxx:128 AliMUONDarcHeader.cxx:129 AliMUONDarcHeader.cxx:130 AliMUONDarcHeader.cxx:131 AliMUONDarcHeader.cxx:132 AliMUONDarcHeader.cxx:133 AliMUONDarcHeader.cxx:134 AliMUONDarcHeader.cxx:135 AliMUONDarcHeader.cxx:136 AliMUONDarcHeader.cxx:137 AliMUONDarcHeader.cxx:138 AliMUONDarcHeader.cxx:139 AliMUONDarcHeader.cxx:140 AliMUONDarcHeader.cxx:141 AliMUONDarcHeader.cxx:142 AliMUONDarcHeader.cxx:143 AliMUONDarcHeader.cxx:144 AliMUONDarcHeader.cxx:145 AliMUONDarcHeader.cxx:146 AliMUONDarcHeader.cxx:147 AliMUONDarcHeader.cxx:148 AliMUONDarcHeader.cxx:149 AliMUONDarcHeader.cxx:150 AliMUONDarcHeader.cxx:151 AliMUONDarcHeader.cxx:152 AliMUONDarcHeader.cxx:153 AliMUONDarcHeader.cxx:154 AliMUONDarcHeader.cxx:155 AliMUONDarcHeader.cxx:156 AliMUONDarcHeader.cxx:157 AliMUONDarcHeader.cxx:158 AliMUONDarcHeader.cxx:159 AliMUONDarcHeader.cxx:160 AliMUONDarcHeader.cxx:161 AliMUONDarcHeader.cxx:162 AliMUONDarcHeader.cxx:163 AliMUONDarcHeader.cxx:164 AliMUONDarcHeader.cxx:165 AliMUONDarcHeader.cxx:166 AliMUONDarcHeader.cxx:167 AliMUONDarcHeader.cxx:168 AliMUONDarcHeader.cxx:169 AliMUONDarcHeader.cxx:170 AliMUONDarcHeader.cxx:171 AliMUONDarcHeader.cxx:172 AliMUONDarcHeader.cxx:173 AliMUONDarcHeader.cxx:174 AliMUONDarcHeader.cxx:175 AliMUONDarcHeader.cxx:176 AliMUONDarcHeader.cxx:177 AliMUONDarcHeader.cxx:178 AliMUONDarcHeader.cxx:179 AliMUONDarcHeader.cxx:180 AliMUONDarcHeader.cxx:181 AliMUONDarcHeader.cxx:182 AliMUONDarcHeader.cxx:183 AliMUONDarcHeader.cxx:184 AliMUONDarcHeader.cxx:185 AliMUONDarcHeader.cxx:186 AliMUONDarcHeader.cxx:187 AliMUONDarcHeader.cxx:188 AliMUONDarcHeader.cxx:189 AliMUONDarcHeader.cxx:190 AliMUONDarcHeader.cxx:191 AliMUONDarcHeader.cxx:192 AliMUONDarcHeader.cxx:193 AliMUONDarcHeader.cxx:194 AliMUONDarcHeader.cxx:195 AliMUONDarcHeader.cxx:196 AliMUONDarcHeader.cxx:197 AliMUONDarcHeader.cxx:198 AliMUONDarcHeader.cxx:199 AliMUONDarcHeader.cxx:200 AliMUONDarcHeader.cxx:201 AliMUONDarcHeader.cxx:202 AliMUONDarcHeader.cxx:203 AliMUONDarcHeader.cxx:204 AliMUONDarcHeader.cxx:205 AliMUONDarcHeader.cxx:206 AliMUONDarcHeader.cxx:207 AliMUONDarcHeader.cxx:208 AliMUONDarcHeader.cxx:209 AliMUONDarcHeader.cxx:210 AliMUONDarcHeader.cxx:211 AliMUONDarcHeader.cxx:212 AliMUONDarcHeader.cxx:213 AliMUONDarcHeader.cxx:214 AliMUONDarcHeader.cxx:215 AliMUONDarcHeader.cxx:216 AliMUONDarcHeader.cxx:217 AliMUONDarcHeader.cxx:218 AliMUONDarcHeader.cxx:219 AliMUONDarcHeader.cxx:220 AliMUONDarcHeader.cxx:221 AliMUONDarcHeader.cxx:222 AliMUONDarcHeader.cxx:223 AliMUONDarcHeader.cxx:224 AliMUONDarcHeader.cxx:225 AliMUONDarcHeader.cxx:226 AliMUONDarcHeader.cxx:227 AliMUONDarcHeader.cxx:228 AliMUONDarcHeader.cxx:229 AliMUONDarcHeader.cxx:230 AliMUONDarcHeader.cxx:231 AliMUONDarcHeader.cxx:232 AliMUONDarcHeader.cxx:233 AliMUONDarcHeader.cxx:234 AliMUONDarcHeader.cxx:235 AliMUONDarcHeader.cxx:236 AliMUONDarcHeader.cxx:237 AliMUONDarcHeader.cxx:238 AliMUONDarcHeader.cxx:239 AliMUONDarcHeader.cxx:240 AliMUONDarcHeader.cxx:241 AliMUONDarcHeader.cxx:242 AliMUONDarcHeader.cxx:243 AliMUONDarcHeader.cxx:244 AliMUONDarcHeader.cxx:245