@@ -33,10 +33,10 @@ extern "C"
3333
3434R3BWhiterabbitCalifaReader::R3BWhiterabbitCalifaReader (EXT_STR_h101_WRCALIFA* data,
3535 size_t offset,
36- UInt_t whiterabbit_id1,
37- UInt_t whiterabbit_id2,
38- UInt_t whiterabbit_id3,
39- UInt_t whiterabbit_id4)
36+ uint32_t whiterabbit_id1,
37+ uint32_t whiterabbit_id2,
38+ uint32_t whiterabbit_id3,
39+ uint32_t whiterabbit_id4)
4040 : R3BReader(" R3BWhiterabbitCalifaReader" )
4141 , fData(data)
4242 , fOffset(offset)
@@ -72,7 +72,7 @@ Bool_t R3BWhiterabbitCalifaReader::Init(ext_data_struct_info* a_struct_info)
7272 // Look for the R3BEventHeader
7373 FairRootManager* frm = FairRootManager::Instance ();
7474 fEventHeader = dynamic_cast <R3BEventHeader*>(frm->GetObject (" EventHeader." ));
75- LOG (info) << " R3BWhiterabbitCalifaReader::Init() R3BEventHeader found" ;
75+ R3BLOG (info, " R3BEventHeader found" ) ;
7676
7777 // Register output array in tree
7878 FairRootManager::Instance ()->Register (" WRCalifaData" , " WRCalifa" , fArray , !fOnline );
@@ -91,7 +91,7 @@ Bool_t R3BWhiterabbitCalifaReader::R3BRead()
9191 fData->TIMESTAMP_CALIFA_WR_T4, fData->TIMESTAMP_CALIFA_WR_T3,
9292 fData->TIMESTAMP_CALIFA_WR_T2, fData->TIMESTAMP_CALIFA_WR_T1);*/
9393
94- if (fWhiterabbitId1 != fData ->TIMESTAMP_CALIFA1ID )
94+ if (fWhiterabbitId1 != fData ->TIMESTAMP_CALIFA1ID && fData -> TIMESTAMP_CALIFA1ID > 0 )
9595 {
9696 char strMessage[1000 ];
9797 snprintf (strMessage,
@@ -103,7 +103,7 @@ Bool_t R3BWhiterabbitCalifaReader::R3BRead()
103103 LOG (error) << strMessage;
104104 }
105105
106- if (fWhiterabbitId2 != fData ->TIMESTAMP_CALIFA2ID )
106+ if (fWhiterabbitId2 != fData ->TIMESTAMP_CALIFA2ID && fData -> TIMESTAMP_CALIFA2ID > 0 )
107107 {
108108 char strMessage[1000 ];
109109 snprintf (strMessage,
@@ -115,7 +115,7 @@ Bool_t R3BWhiterabbitCalifaReader::R3BRead()
115115 LOG (error) << strMessage;
116116 }
117117
118- if (fWhiterabbitId3 != fData ->TIMESTAMP_CALIFA3ID )
118+ if (fWhiterabbitId3 != fData ->TIMESTAMP_CALIFA3ID && fData -> TIMESTAMP_CALIFA3ID > 0 )
119119 {
120120 char strMessage[1000 ];
121121 snprintf (strMessage,
@@ -127,7 +127,7 @@ Bool_t R3BWhiterabbitCalifaReader::R3BRead()
127127 LOG (error) << strMessage;
128128 }
129129
130- if (fWhiterabbitId4 != fData ->TIMESTAMP_CALIFA4ID )
130+ if (fWhiterabbitId4 != fData ->TIMESTAMP_CALIFA4ID && fData -> TIMESTAMP_CALIFA4ID > 0 )
131131 {
132132 char strMessage[1000 ];
133133 snprintf (strMessage,
@@ -141,27 +141,30 @@ Bool_t R3BWhiterabbitCalifaReader::R3BRead()
141141
142142 if (fEventHeader != nullptr )
143143 {
144+ fNEvent = fEventHeader ->GetEventno ();
144145 uint64_t timestamp1 = ((uint64_t )fData ->TIMESTAMP_CALIFA1WR_T4 << 48 ) |
145146 ((uint64_t )fData ->TIMESTAMP_CALIFA1WR_T3 << 32 ) |
146147 ((uint64_t )fData ->TIMESTAMP_CALIFA1WR_T2 << 16 ) | (uint64_t )fData ->TIMESTAMP_CALIFA1WR_T1 ;
147-
148- fNEvent = fEventHeader ->GetEventno ();
149- new ((*fArray )[fArray ->GetEntriesFast ()]) R3BWRData (timestamp1, fWhiterabbitId1 );
148+ if (timestamp1 > 0 )
149+ new ((*fArray )[fArray ->GetEntriesFast ()]) R3BWRData (timestamp1, fWhiterabbitId1 );
150150
151151 uint64_t timestamp2 = ((uint64_t )fData ->TIMESTAMP_CALIFA2WR_T4 << 48 ) |
152152 ((uint64_t )fData ->TIMESTAMP_CALIFA2WR_T3 << 32 ) |
153153 ((uint64_t )fData ->TIMESTAMP_CALIFA2WR_T2 << 16 ) | (uint64_t )fData ->TIMESTAMP_CALIFA2WR_T1 ;
154- new ((*fArray )[fArray ->GetEntriesFast ()]) R3BWRData (timestamp2, fWhiterabbitId2 );
154+ if (timestamp2 > 0 )
155+ new ((*fArray )[fArray ->GetEntriesFast ()]) R3BWRData (timestamp2, fWhiterabbitId2 );
155156
156157 uint64_t timestamp3 = ((uint64_t )fData ->TIMESTAMP_CALIFA3WR_T4 << 48 ) |
157158 ((uint64_t )fData ->TIMESTAMP_CALIFA3WR_T3 << 32 ) |
158159 ((uint64_t )fData ->TIMESTAMP_CALIFA3WR_T2 << 16 ) | (uint64_t )fData ->TIMESTAMP_CALIFA3WR_T1 ;
159- new ((*fArray )[fArray ->GetEntriesFast ()]) R3BWRData (timestamp3, fWhiterabbitId3 );
160+ if (timestamp3 > 0 )
161+ new ((*fArray )[fArray ->GetEntriesFast ()]) R3BWRData (timestamp3, fWhiterabbitId3 );
160162
161163 uint64_t timestamp4 = ((uint64_t )fData ->TIMESTAMP_CALIFA4WR_T4 << 48 ) |
162164 ((uint64_t )fData ->TIMESTAMP_CALIFA4WR_T3 << 32 ) |
163165 ((uint64_t )fData ->TIMESTAMP_CALIFA4WR_T2 << 16 ) | (uint64_t )fData ->TIMESTAMP_CALIFA4WR_T1 ;
164- new ((*fArray )[fArray ->GetEntriesFast ()]) R3BWRData (timestamp4, fWhiterabbitId4 );
166+ if (timestamp4 > 0 )
167+ new ((*fArray )[fArray ->GetEntriesFast ()]) R3BWRData (timestamp4, fWhiterabbitId4 );
165168 }
166169 else
167170 {
0 commit comments