83 logstr << MSG::ERROR <<
"No LArRodBlockStructure defined! Can't encode fragment!" <<
endmsg;
87 std::map<uint32_t,FebData_t>::iterator it=
m_mFEB.begin();
88 std::map<uint32_t,FebData_t>::iterator it_end=
m_mFEB.end();
91 for(;it!=it_end;++it) {
94 if (
m_BlStruct->canSetEnergy() && it->second.vLArRC.size()>0) {
104 if ( theChannel !=
nullptr ){
107 int e=theChannel->
energy();
108 uint32_t quality = theChannel->
quality();
110 quality,theChannel->
gain());
116 double cellnoise = noise.getNoise(myofflineID,theChannel->
gain());
117 if( e > (nsigma*cellnoise) && (quality != 65535 ) ){
118 double aux=caloDDE->
sinTh();
119 double aux_z=tanh(caloDDE->
eta());
120 Ex += e*aux*caloDDE->
cosPhi();
121 Ey += e*aux*caloDDE->
sinPhi();
135 if (
m_BlStruct->canIncludeRawData() && it->second.vLArDigit.size()>0) {
137 m_BlStruct->sortDataVector(it->second.vLArDigit);
138 for (
const LArDigit* digit : it->second.vLArDigit) {
140 m_BlStruct->setRawData(cId, digit->samples(), digit->gain());
144 if (
m_BlStruct->canSetRawData() && it->second.vLArDigit.size()>0) {
145 m_BlStruct->sortDataVector(it->second.vLArDigit);
146 std::vector<const LArDigit*>::const_iterator digit_it = it->second.vLArDigit.begin();
147 std::vector<const LArDigit*>::const_iterator digit_it_end=it->second.vLArDigit.end();
148 if(digit_it!=digit_it_end) {
149 m_BlStruct->setNumberOfSamples((*digit_it)->samples().size());
150 for (;digit_it!=digit_it_end;++digit_it) {
152 m_BlStruct->setRawData(cId, (*digit_it)->samples(), (*digit_it)->gain());
159 for (
int i=0;i<3;i++) {
160 m_BlStruct->sortDataVector(it->second.vLArDigitFixed[i]);
161 std::vector<const LArDigit*>::const_iterator digit_it = it->second.vLArDigitFixed[i].begin();
162 std::vector<const LArDigit*>::const_iterator digit_it_end=it->second.vLArDigitFixed[i].end();
163 if(digit_it!=digit_it_end) {
164 m_BlStruct->setNumberOfSamples((*digit_it)->samples().size());
165 for (;digit_it!=digit_it_end;++digit_it) {
167 m_BlStruct->setRawDataFixed(cId, (*digit_it)->samples(), (*digit_it)->gain());
175 for (
int i=0;i<3;i++) {
176 m_BlStruct->sortDataVector(it->second.vLArCalibDigit[i]);
177 std::vector<const LArCalibDigit*>::const_iterator digit_it = it->second.vLArCalibDigit[i].begin();
178 std::vector<const LArCalibDigit*>::const_iterator digit_it_end=it->second.vLArCalibDigit[i].end();
179 if(digit_it!=digit_it_end) {
180 m_BlStruct->setNumberOfSamples((*digit_it)->samples().size());
183 for (;digit_it!=digit_it_end;++digit_it) {
185 m_BlStruct->setRawDataFixed(cId, (*digit_it)->samples(), (*digit_it)->gain());
186 if ((*digit_it)->isPulsed())