fWord2(2<<24),
fEventID2(0),
fAttributesSubDetectors(0),
- fStatusMiniEventID(0x1000), // status bit 4: no L1/L2 trigger information
+ fStatusMiniEventID(0x10000), // status bit 4: no L1/L2 trigger information
fTriggerClassLow(0),
fROILowTriggerClassHigh(0),
fROIHigh(0)
{}
- virtual ~AliRawDataHeader() {}
+ // Adding virtual destructor breaks
+ // C++ struct backward compatibility
+ // Do not uncomment the line below!!!
+ // virtual ~AliRawDataHeader() {}
UShort_t GetEventID1() const
{
{return fStatusMiniEventID & 0xFFF;};
ULong64_t GetTriggerClasses() const
- {return ((ULong64_t) (fROILowTriggerClassHigh & 0x1FFFF)) << 32 + fTriggerClassLow;}
+ {return (((ULong64_t) (fROILowTriggerClassHigh & 0x3FFFF)) << 32) | fTriggerClassLow;}
ULong64_t GetROI() const
- {return ((ULong64_t) fROIHigh) << 32 + ((fROILowTriggerClassHigh >> 28) & 0xF);}
+ {return (((ULong64_t) fROIHigh) << 4) | ((fROILowTriggerClassHigh >> 28) & 0xF);}
void SetTriggerClass(ULong64_t mask)
{fTriggerClassLow = (UInt_t)(mask & 0xFFFFFFFF); // low bits of trigger class