CMS 3D CMS Logo

Public Member Functions | Static Public Attributes | Protected Attributes

DCCDataUnpacker Class Reference

#include <DCCDataUnpacker.h>

List of all members.

Public Member Functions

DCCEventBlockcurrentEvent ()
 DCCDataUnpacker (EcalElectronicsMapper *, bool hU, bool srpU, bool tccU, bool feU, bool memU, bool syncCheck, bool feIdCheck, bool forceToKeepFRdata)
std::auto_ptr
< EcalRawDataCollection > * 
dccHeadersCollection ()
std::auto_ptr< EBDigiCollection > * ebDigisCollection ()
std::auto_ptr
< EBSrFlagCollection > * 
ebSrFlagsCollection ()
std::auto_ptr
< EcalPSInputDigiCollection > * 
ecalPSsCollection ()
std::auto_ptr
< EcalTrigPrimDigiCollection > * 
ecalTpsCollection ()
std::auto_ptr< EEDigiCollection > * eeDigisCollection ()
std::auto_ptr
< EESrFlagCollection > * 
eeSrFlagsCollection ()
const EcalElectronicsMapperelectronicsMapper () const
uint16_t getCCUValue (const int fed, const int ccu) const
uint16_t getChannelStatus (const DetId &id) const
uint16_t getChannelValue (const DetId &id) const
uint16_t getChannelValue (const int fed, const int ccu, const int strip, const int xtal) const
std::auto_ptr
< EcalElectronicsIdCollection > * 
invalidBlockLengthsCollection ()
std::auto_ptr
< EBDetIdCollection > * 
invalidChIdsCollection ()
std::auto_ptr
< EEDetIdCollection > * 
invalidEEChIdsCollection ()
std::auto_ptr
< EEDetIdCollection > * 
invalidEEGainsCollection ()
std::auto_ptr
< EEDetIdCollection > * 
invalidEEGainsSwitchCollection ()
std::auto_ptr
< EBDetIdCollection > * 
invalidGainsCollection ()
std::auto_ptr
< EBDetIdCollection > * 
invalidGainsSwitchCollection ()
std::auto_ptr
< EcalElectronicsIdCollection > * 
invalidMemBlockSizesCollection ()
std::auto_ptr
< EcalElectronicsIdCollection > * 
invalidMemChIdsCollection ()
std::auto_ptr
< EcalElectronicsIdCollection > * 
invalidMemGainsCollection ()
std::auto_ptr
< EcalElectronicsIdCollection > * 
invalidMemTtIdsCollection ()
std::auto_ptr
< EcalElectronicsIdCollection > * 
invalidTTIdsCollection ()
std::auto_ptr
< EcalElectronicsIdCollection > * 
invalidZSXtalIdsCollection ()
std::auto_ptr
< EcalPnDiodeDigiCollection > * 
pnDiodeDigisCollection ()
void setChannelStatusDB (const EcalChannelStatusMap *chdb)
void setDccHeadersCollection (std::auto_ptr< EcalRawDataCollection > *x)
void setEBDigisCollection (std::auto_ptr< EBDigiCollection > *x)
void setEBSrFlagsCollection (std::auto_ptr< EBSrFlagCollection > *x)
void setEcalPSsCollection (std::auto_ptr< EcalPSInputDigiCollection > *x)
void setEcalTpsCollection (std::auto_ptr< EcalTrigPrimDigiCollection > *x)
void setEEDigisCollection (std::auto_ptr< EEDigiCollection > *x)
void setEESrFlagsCollection (std::auto_ptr< EESrFlagCollection > *x)
void setInvalidBlockLengthsCollection (std::auto_ptr< EcalElectronicsIdCollection > *x)
void setInvalidChIdsCollection (std::auto_ptr< EBDetIdCollection > *x)
void setInvalidEEChIdsCollection (std::auto_ptr< EEDetIdCollection > *x)
void setInvalidEEGainsCollection (std::auto_ptr< EEDetIdCollection > *x)
void setInvalidEEGainsSwitchCollection (std::auto_ptr< EEDetIdCollection > *x)
void setInvalidGainsCollection (std::auto_ptr< EBDetIdCollection > *x)
void setInvalidGainsSwitchCollection (std::auto_ptr< EBDetIdCollection > *x)
void setInvalidMemBlockSizesCollection (std::auto_ptr< EcalElectronicsIdCollection > *x)
void setInvalidMemChIdsCollection (std::auto_ptr< EcalElectronicsIdCollection > *x)
void setInvalidMemGainsCollection (std::auto_ptr< EcalElectronicsIdCollection > *x)
void setInvalidMemTtIdsCollection (std::auto_ptr< EcalElectronicsIdCollection > *x)
void setInvalidTTIdsCollection (std::auto_ptr< EcalElectronicsIdCollection > *x)
void setInvalidZSXtalIdsCollection (std::auto_ptr< EcalElectronicsIdCollection > *x)
void setPnDiodeDigisCollection (std::auto_ptr< EcalPnDiodeDigiCollection > *x)
void unpack (const uint64_t *buffer, size_t bufferSize, unsigned int smId, unsigned int fedId)
 ~DCCDataUnpacker ()

Static Public Attributes

static bool silentMode_ = false

Protected Attributes

const EcalChannelStatusMapchdb_
DCCEventBlockcurrentEvent_
std::auto_ptr
< EcalRawDataCollection > * 
dccHeaders_
std::auto_ptr< EBDigiCollection > * ebDigis_
DCCEBEventBlockebEventBlock_
std::auto_ptr
< EBSrFlagCollection > * 
ebSrFlags_
std::auto_ptr
< EcalPSInputDigiCollection > * 
ecalPSs_
std::auto_ptr
< EcalTrigPrimDigiCollection > * 
ecalTps_
std::auto_ptr< EEDigiCollection > * eeDigis_
DCCEEEventBlockeeEventBlock_
std::auto_ptr
< EESrFlagCollection > * 
eeSrFlags_
EcalElectronicsMapperelectronicsMapper_
std::auto_ptr
< EcalElectronicsIdCollection > * 
invalidBlockLengths_
std::auto_ptr
< EBDetIdCollection > * 
invalidChIds_
std::auto_ptr
< EEDetIdCollection > * 
invalidEEChIds_
std::auto_ptr
< EEDetIdCollection > * 
invalidEEGains_
std::auto_ptr
< EEDetIdCollection > * 
invalidEEGainsSwitch_
std::auto_ptr
< EBDetIdCollection > * 
invalidGains_
std::auto_ptr
< EBDetIdCollection > * 
invalidGainsSwitch_
std::auto_ptr
< EcalElectronicsIdCollection > * 
invalidMemBlockSizes_
std::auto_ptr
< EcalElectronicsIdCollection > * 
invalidMemChIds_
std::auto_ptr
< EcalElectronicsIdCollection > * 
invalidMemGains_
std::auto_ptr
< EcalElectronicsIdCollection > * 
invalidMemTtIds_
std::auto_ptr
< EcalElectronicsIdCollection > * 
invalidTTIds_
std::auto_ptr
< EcalElectronicsIdCollection > * 
invalidZSXtalIds_
std::auto_ptr
< EcalPnDiodeDigiCollection > * 
pnDiodeDigis_

Detailed Description

Definition at line 51 of file DCCDataUnpacker.h.


Constructor & Destructor Documentation

DCCDataUnpacker::DCCDataUnpacker ( EcalElectronicsMapper mapper,
bool  hU,
bool  srpU,
bool  tccU,
bool  feU,
bool  memU,
bool  syncCheck,
bool  feIdCheck,
bool  forceToKeepFRdata 
)

Definition at line 11 of file DCCDataUnpacker.cc.

References ebEventBlock_, eeEventBlock_, electronicsMapper_, DCCEventBlock::enableFeIdChecks(), and DCCEventBlock::enableSyncChecks().

 { 
  electronicsMapper_ = mapper;
  ebEventBlock_   = new DCCEBEventBlock(this,mapper,hU,srpU,tccU,feU,memU,forceToKeepFRdata);
  eeEventBlock_   = new DCCEEEventBlock(this,mapper,hU,srpU,tccU,feU,memU,forceToKeepFRdata);
  if(syncCheck){
    ebEventBlock_->enableSyncChecks();  
    eeEventBlock_->enableSyncChecks();
  }
  if(feIdCheck){
    ebEventBlock_->enableFeIdChecks();  
    eeEventBlock_->enableFeIdChecks();
  }
}
DCCDataUnpacker::~DCCDataUnpacker ( )

Definition at line 49 of file DCCDataUnpacker.cc.

References ebEventBlock_, and eeEventBlock_.

                                 {
  delete ebEventBlock_;
  delete eeEventBlock_;
}

Member Function Documentation

DCCEventBlock* DCCDataUnpacker::currentEvent ( ) [inline]

Get the associated event

Definition at line 226 of file DCCDataUnpacker.h.

References currentEvent_.

{ return currentEvent_;}
std::auto_ptr<EcalRawDataCollection>* DCCDataUnpacker::dccHeadersCollection ( ) [inline]

Definition at line 155 of file DCCDataUnpacker.h.

References dccHeaders_.

Referenced by DCCEventBlock::updateCollectors().

  { return dccHeaders_;            }
std::auto_ptr<EBDigiCollection>* DCCDataUnpacker::ebDigisCollection ( ) [inline]

Get the collection pointers

Definition at line 137 of file DCCDataUnpacker.h.

References ebDigis_.

Referenced by DCCTowerBlock::updateCollectors(), and EcalUnpackerWorker::work().

  { return ebDigis_;               }
std::auto_ptr<EBSrFlagCollection>* DCCDataUnpacker::ebSrFlagsCollection ( ) [inline]

Definition at line 149 of file DCCDataUnpacker.h.

References ebSrFlags_.

Referenced by DCCEBSRPBlock::updateCollectors().

  { return ebSrFlags_;             }  
std::auto_ptr<EcalPSInputDigiCollection>* DCCDataUnpacker::ecalPSsCollection ( ) [inline]

Definition at line 146 of file DCCDataUnpacker.h.

References ecalPSs_.

Referenced by DCCEETCCBlock::updateCollectors().

  { return ecalPSs_;                 } 
std::auto_ptr<EcalTrigPrimDigiCollection>* DCCDataUnpacker::ecalTpsCollection ( ) [inline]

Definition at line 143 of file DCCDataUnpacker.h.

References ecalTps_.

Referenced by DCCEETCCBlock::updateCollectors(), and DCCEBTCCBlock::updateCollectors().

  { return ecalTps_;                 } 
std::auto_ptr<EEDigiCollection>* DCCDataUnpacker::eeDigisCollection ( ) [inline]

Definition at line 140 of file DCCDataUnpacker.h.

References eeDigis_.

Referenced by DCCSCBlock::updateCollectors(), and EcalUnpackerWorker::work().

  { return eeDigis_;               }
std::auto_ptr<EESrFlagCollection>* DCCDataUnpacker::eeSrFlagsCollection ( ) [inline]

Definition at line 152 of file DCCDataUnpacker.h.

References eeSrFlags_.

Referenced by DCCEESRPBlock::updateCollectors().

  { return eeSrFlags_;             } 
const EcalElectronicsMapper* DCCDataUnpacker::electronicsMapper ( ) const [inline]

Get the ECAL electronics Mapper

Definition at line 206 of file DCCDataUnpacker.h.

References electronicsMapper_.

Referenced by printStatusRecords().

{ return electronicsMapper_; }
uint16_t DCCDataUnpacker::getCCUValue ( const int  fed,
const int  ccu 
) const

Definition at line 97 of file DCCDataUnpacker.cc.

References EcalElectronicsMapping::dccTowerConstituents(), electronicsMapper_, getChannelValue(), EcalElectronicsMapper::getSMId(), i, EcalElectronicsMapper::mapping(), and findQualityFiles::size.

Referenced by DCCEBEventBlock::unpack(), and DCCEEEventBlock::unpack().

{
  // get list of crystals (DetId) which correspond to given CCU
  const int dcc = electronicsMapper_->getSMId(fed);
  const std::vector<DetId> xtals = electronicsMapper_->mapping()->dccTowerConstituents(dcc, ccu);
  
  // collect set of status codes of given CCU
  std::set<uint16_t> set;
  for (size_t i = 0; i < xtals.size(); ++i) {
    const uint16_t val = getChannelValue(xtals[i]);
    set.insert(val);
  }
  
  // if all crystals in CCU have the same status
  // then this status is treated as CCU status
  if (set.size() == 1) return *set.begin();
  
  // if there are several statuses:
  return 0;
}
uint16_t DCCDataUnpacker::getChannelStatus ( const DetId id) const

Definition at line 54 of file DCCDataUnpacker.cc.

References chdb_, EcalCondObjectContainer< T >::end(), and EcalCondObjectContainer< T >::find().

Referenced by getChannelValue().

{
  // return code for situation of missing channel record
  // equal to "non responding isolated channel (dead of type other)":
  //   https://twiki.cern.ch/twiki/bin/view/CMS/SWGuideEcalRecoLocalReco#Treatment_of_problematic_channel
  // TODO: think on a better way how to cover this case
  const uint16_t NO_DATA = 11;
  
  if (chdb_ == 0) {
    edm::LogError("IncorrectMapping")
      << "ECAL channel status database do not initialized";
    return NO_DATA;
  }
  
  EcalChannelStatus::const_iterator pCh = chdb_->find(id);
  
  if (pCh != chdb_->end()) {
    return pCh->getStatusCode();
  }
  else {
    edm::LogError("IncorrectMapping")
      << "No channel status record found for detit = " << id.rawId();
    return NO_DATA;
  }
}
uint16_t DCCDataUnpacker::getChannelValue ( const DetId id) const
uint16_t DCCDataUnpacker::getChannelValue ( const int  fed,
const int  ccu,
const int  strip,
const int  xtal 
) const

Definition at line 85 of file DCCDataUnpacker.cc.

References electronicsMapper_, getChannelStatus(), EcalElectronicsMapping::getDetId(), EcalElectronicsMapper::getSMId(), and EcalElectronicsMapper::mapping().

{
  // conversion FED ID [601 - 654] -> DCC ID [1 - 54]
  const int dcc = electronicsMapper_->getSMId(fed);
  
  // convert (dcc, ccu, strip, xtal) -> DetId
  const EcalElectronicsId eid(dcc, ccu, strip, xtal);
  const DetId id = electronicsMapper_->mapping()->getDetId(eid);
  
  return getChannelStatus(id) & 0x1F;
}
std::auto_ptr< EcalElectronicsIdCollection>* DCCDataUnpacker::invalidBlockLengthsCollection ( ) [inline]

Definition at line 184 of file DCCDataUnpacker.h.

References invalidBlockLengths_.

Referenced by DCCFEBlock::updateCollectors().

  { return invalidBlockLengths_;   }
std::auto_ptr<EBDetIdCollection>* DCCDataUnpacker::invalidChIdsCollection ( ) [inline]

Definition at line 164 of file DCCDataUnpacker.h.

References invalidChIds_.

Referenced by DCCTowerBlock::updateCollectors().

  { return invalidChIds_;          }
std::auto_ptr<EEDetIdCollection>* DCCDataUnpacker::invalidEEChIdsCollection ( ) [inline]

Definition at line 174 of file DCCDataUnpacker.h.

References invalidEEChIds_.

Referenced by DCCSCBlock::updateCollectors().

  { return invalidEEChIds_;          }
std::auto_ptr<EEDetIdCollection>* DCCDataUnpacker::invalidEEGainsCollection ( ) [inline]

Definition at line 168 of file DCCDataUnpacker.h.

References invalidEEGains_.

Referenced by DCCSCBlock::updateCollectors().

  { return invalidEEGains_;          }
std::auto_ptr<EEDetIdCollection>* DCCDataUnpacker::invalidEEGainsSwitchCollection ( ) [inline]

Definition at line 171 of file DCCDataUnpacker.h.

References invalidEEGainsSwitch_.

Referenced by DCCSCBlock::updateCollectors().

  { return invalidEEGainsSwitch_;    }
std::auto_ptr<EBDetIdCollection>* DCCDataUnpacker::invalidGainsCollection ( ) [inline]

Definition at line 158 of file DCCDataUnpacker.h.

References invalidGains_.

Referenced by DCCTowerBlock::updateCollectors().

  { return invalidGains_;          }
std::auto_ptr<EBDetIdCollection>* DCCDataUnpacker::invalidGainsSwitchCollection ( ) [inline]

Definition at line 161 of file DCCDataUnpacker.h.

References invalidGainsSwitch_.

Referenced by DCCTowerBlock::updateCollectors().

  { return invalidGainsSwitch_;    }
std::auto_ptr<EcalElectronicsIdCollection>* DCCDataUnpacker::invalidMemBlockSizesCollection ( ) [inline]

Definition at line 190 of file DCCDataUnpacker.h.

References invalidMemBlockSizes_.

Referenced by DCCMemBlock::updateCollectors().

  { return invalidMemBlockSizes_;  }
std::auto_ptr<EcalElectronicsIdCollection>* DCCDataUnpacker::invalidMemChIdsCollection ( ) [inline]

Definition at line 193 of file DCCDataUnpacker.h.

References invalidMemChIds_.

Referenced by DCCMemBlock::updateCollectors().

  { return invalidMemChIds_;       }
std::auto_ptr<EcalElectronicsIdCollection>* DCCDataUnpacker::invalidMemGainsCollection ( ) [inline]

Definition at line 196 of file DCCDataUnpacker.h.

References invalidMemGains_.

Referenced by DCCMemBlock::updateCollectors().

  { return invalidMemGains_;       }
std::auto_ptr<EcalElectronicsIdCollection>* DCCDataUnpacker::invalidMemTtIdsCollection ( ) [inline]

Definition at line 187 of file DCCDataUnpacker.h.

References invalidMemTtIds_.

Referenced by DCCMemBlock::updateCollectors().

  { return invalidMemTtIds_;       }
std::auto_ptr<EcalElectronicsIdCollection>* DCCDataUnpacker::invalidTTIdsCollection ( ) [inline]

Definition at line 178 of file DCCDataUnpacker.h.

References invalidTTIds_.

Referenced by DCCFEBlock::updateCollectors().

  { return invalidTTIds_;          }
std::auto_ptr<EcalElectronicsIdCollection>* DCCDataUnpacker::invalidZSXtalIdsCollection ( ) [inline]

Definition at line 181 of file DCCDataUnpacker.h.

References invalidZSXtalIds_.

Referenced by DCCFEBlock::updateCollectors().

  { return invalidZSXtalIds_;          }  
std::auto_ptr<EcalPnDiodeDigiCollection>* DCCDataUnpacker::pnDiodeDigisCollection ( ) [inline]

Definition at line 199 of file DCCDataUnpacker.h.

References pnDiodeDigis_.

Referenced by DCCMemBlock::updateCollectors().

  { return pnDiodeDigis_;          }
void DCCDataUnpacker::setChannelStatusDB ( const EcalChannelStatusMap chdb) [inline]

Functions to work with Channel Status DB

Definition at line 212 of file DCCDataUnpacker.h.

References chdb_.

Referenced by EcalRawToDigi::beginRun().

{ chdb_ = chdb; }
void DCCDataUnpacker::setDccHeadersCollection ( std::auto_ptr< EcalRawDataCollection > *  x) [inline]

Definition at line 73 of file DCCDataUnpacker.h.

References dccHeaders_, and x.

Referenced by EcalUnpackerWorker::EcalUnpackerWorker(), and EcalRawToDigi::produce().

  { dccHeaders_             = x; }
void DCCDataUnpacker::setEBDigisCollection ( std::auto_ptr< EBDigiCollection > *  x) [inline]

Set the collection pointers

Definition at line 67 of file DCCDataUnpacker.h.

References ebDigis_, and x.

Referenced by EcalUnpackerWorker::EcalUnpackerWorker(), and EcalRawToDigi::produce().

  { ebDigis_                = x; } 
void DCCDataUnpacker::setEBSrFlagsCollection ( std::auto_ptr< EBSrFlagCollection > *  x) [inline]

Definition at line 76 of file DCCDataUnpacker.h.

References ebSrFlags_, and x.

Referenced by EcalUnpackerWorker::EcalUnpackerWorker(), and EcalRawToDigi::produce().

  { ebSrFlags_              = x; } 
void DCCDataUnpacker::setEcalPSsCollection ( std::auto_ptr< EcalPSInputDigiCollection > *  x) [inline]

Definition at line 85 of file DCCDataUnpacker.h.

References ecalPSs_, and x.

Referenced by EcalUnpackerWorker::EcalUnpackerWorker(), and EcalRawToDigi::produce().

  { ecalPSs_                  = x; }
void DCCDataUnpacker::setEcalTpsCollection ( std::auto_ptr< EcalTrigPrimDigiCollection > *  x) [inline]

Definition at line 82 of file DCCDataUnpacker.h.

References ecalTps_, and x.

Referenced by EcalUnpackerWorker::EcalUnpackerWorker(), and EcalRawToDigi::produce().

  { ecalTps_                  = x; }
void DCCDataUnpacker::setEEDigisCollection ( std::auto_ptr< EEDigiCollection > *  x) [inline]

Definition at line 70 of file DCCDataUnpacker.h.

References eeDigis_, and x.

Referenced by EcalUnpackerWorker::EcalUnpackerWorker(), and EcalRawToDigi::produce().

  { eeDigis_                = x; } 
void DCCDataUnpacker::setEESrFlagsCollection ( std::auto_ptr< EESrFlagCollection > *  x) [inline]

Definition at line 79 of file DCCDataUnpacker.h.

References eeSrFlags_, and x.

Referenced by EcalUnpackerWorker::EcalUnpackerWorker(), and EcalRawToDigi::produce().

  { eeSrFlags_              = x; }
void DCCDataUnpacker::setInvalidBlockLengthsCollection ( std::auto_ptr< EcalElectronicsIdCollection > *  x) [inline]
void DCCDataUnpacker::setInvalidChIdsCollection ( std::auto_ptr< EBDetIdCollection > *  x) [inline]

Definition at line 94 of file DCCDataUnpacker.h.

References invalidChIds_, and x.

Referenced by EcalUnpackerWorker::EcalUnpackerWorker(), and EcalRawToDigi::produce().

  { invalidChIds_           = x; }
void DCCDataUnpacker::setInvalidEEChIdsCollection ( std::auto_ptr< EEDetIdCollection > *  x) [inline]

Definition at line 104 of file DCCDataUnpacker.h.

References invalidEEChIds_, and x.

Referenced by EcalUnpackerWorker::EcalUnpackerWorker(), and EcalRawToDigi::produce().

void DCCDataUnpacker::setInvalidEEGainsCollection ( std::auto_ptr< EEDetIdCollection > *  x) [inline]

Definition at line 98 of file DCCDataUnpacker.h.

References invalidEEGains_, and x.

Referenced by EcalUnpackerWorker::EcalUnpackerWorker(), and EcalRawToDigi::produce().

void DCCDataUnpacker::setInvalidEEGainsSwitchCollection ( std::auto_ptr< EEDetIdCollection > *  x) [inline]
void DCCDataUnpacker::setInvalidGainsCollection ( std::auto_ptr< EBDetIdCollection > *  x) [inline]

Definition at line 88 of file DCCDataUnpacker.h.

References invalidGains_, and x.

Referenced by EcalUnpackerWorker::EcalUnpackerWorker(), and EcalRawToDigi::produce().

  { invalidGains_           = x; }
void DCCDataUnpacker::setInvalidGainsSwitchCollection ( std::auto_ptr< EBDetIdCollection > *  x) [inline]
void DCCDataUnpacker::setInvalidMemBlockSizesCollection ( std::auto_ptr< EcalElectronicsIdCollection > *  x) [inline]
void DCCDataUnpacker::setInvalidMemChIdsCollection ( std::auto_ptr< EcalElectronicsIdCollection > *  x) [inline]

Definition at line 126 of file DCCDataUnpacker.h.

References invalidMemChIds_, and x.

Referenced by EcalUnpackerWorker::EcalUnpackerWorker(), and EcalRawToDigi::produce().

void DCCDataUnpacker::setInvalidMemGainsCollection ( std::auto_ptr< EcalElectronicsIdCollection > *  x) [inline]

Definition at line 129 of file DCCDataUnpacker.h.

References invalidMemGains_, and x.

Referenced by EcalUnpackerWorker::EcalUnpackerWorker(), and EcalRawToDigi::produce().

void DCCDataUnpacker::setInvalidMemTtIdsCollection ( std::auto_ptr< EcalElectronicsIdCollection > *  x) [inline]

Definition at line 120 of file DCCDataUnpacker.h.

References invalidMemTtIds_, and x.

Referenced by EcalUnpackerWorker::EcalUnpackerWorker(), and EcalRawToDigi::produce().

void DCCDataUnpacker::setInvalidTTIdsCollection ( std::auto_ptr< EcalElectronicsIdCollection > *  x) [inline]

Definition at line 108 of file DCCDataUnpacker.h.

References invalidTTIds_, and x.

Referenced by EcalUnpackerWorker::EcalUnpackerWorker(), and EcalRawToDigi::produce().

  { invalidTTIds_           = x; }
void DCCDataUnpacker::setInvalidZSXtalIdsCollection ( std::auto_ptr< EcalElectronicsIdCollection > *  x) [inline]

Definition at line 111 of file DCCDataUnpacker.h.

References invalidZSXtalIds_, and x.

Referenced by EcalUnpackerWorker::EcalUnpackerWorker(), and EcalRawToDigi::produce().

void DCCDataUnpacker::setPnDiodeDigisCollection ( std::auto_ptr< EcalPnDiodeDigiCollection > *  x) [inline]

Definition at line 117 of file DCCDataUnpacker.h.

References pnDiodeDigis_, and x.

Referenced by EcalUnpackerWorker::EcalUnpackerWorker(), and EcalRawToDigi::produce().

  { pnDiodeDigis_           = x; }
void DCCDataUnpacker::unpack ( const uint64_t *  buffer,
size_t  bufferSize,
unsigned int  smId,
unsigned int  fedId 
)

Unpack data from a buffer

Definition at line 28 of file DCCDataUnpacker.cc.

References currentEvent_, ebEventBlock_, eeEventBlock_, DCCEBEventBlock::unpack(), DCCEEEventBlock::unpack(), and DCCEventBlock::updateCollectors().

Referenced by EcalRawToDigi::produce(), and EcalUnpackerWorker::work().

                                                                                                            {
  //buffer is pointer to binary data
  //See if this fed is on EB or in EE

  if(smId>9&&smId<46){ 
    
    currentEvent_      = ebEventBlock_;
    ebEventBlock_    ->updateCollectors();
    ebEventBlock_    ->unpack(buffer,bufferSize,fedId); 
         
  }
  else{               
   
    currentEvent_     = eeEventBlock_;
    eeEventBlock_    ->updateCollectors();
    eeEventBlock_    ->unpack(buffer,bufferSize,fedId); 

  }
    
}

Member Data Documentation

Definition at line 259 of file DCCDataUnpacker.h.

Referenced by getChannelStatus(), and setChannelStatusDB().

Definition at line 260 of file DCCDataUnpacker.h.

Referenced by currentEvent(), and unpack().

Definition at line 237 of file DCCDataUnpacker.h.

Referenced by dccHeadersCollection(), and setDccHeadersCollection().

std::auto_ptr<EBDigiCollection>* DCCDataUnpacker::ebDigis_ [protected]

Definition at line 233 of file DCCDataUnpacker.h.

Referenced by ebDigisCollection(), and setEBDigisCollection().

Definition at line 261 of file DCCDataUnpacker.h.

Referenced by DCCDataUnpacker(), unpack(), and ~DCCDataUnpacker().

std::auto_ptr<EBSrFlagCollection>* DCCDataUnpacker::ebSrFlags_ [protected]

Definition at line 246 of file DCCDataUnpacker.h.

Referenced by ebSrFlagsCollection(), and setEBSrFlagsCollection().

Definition at line 236 of file DCCDataUnpacker.h.

Referenced by ecalPSsCollection(), and setEcalPSsCollection().

Definition at line 235 of file DCCDataUnpacker.h.

Referenced by ecalTpsCollection(), and setEcalTpsCollection().

std::auto_ptr<EEDigiCollection>* DCCDataUnpacker::eeDigis_ [protected]

Definition at line 234 of file DCCDataUnpacker.h.

Referenced by eeDigisCollection(), and setEEDigisCollection().

Definition at line 262 of file DCCDataUnpacker.h.

Referenced by DCCDataUnpacker(), unpack(), and ~DCCDataUnpacker().

std::auto_ptr<EESrFlagCollection>* DCCDataUnpacker::eeSrFlags_ [protected]

Definition at line 247 of file DCCDataUnpacker.h.

Referenced by eeSrFlagsCollection(), and setEESrFlagsCollection().

Definition at line 240 of file DCCDataUnpacker.h.

Referenced by invalidChIdsCollection(), and setInvalidChIdsCollection().

Definition at line 244 of file DCCDataUnpacker.h.

Referenced by invalidEEChIdsCollection(), and setInvalidEEChIdsCollection().

Definition at line 242 of file DCCDataUnpacker.h.

Referenced by invalidEEGainsCollection(), and setInvalidEEGainsCollection().

Definition at line 238 of file DCCDataUnpacker.h.

Referenced by invalidGainsCollection(), and setInvalidGainsCollection().

Definition at line 254 of file DCCDataUnpacker.h.

Referenced by invalidMemChIdsCollection(), and setInvalidMemChIdsCollection().

Definition at line 255 of file DCCDataUnpacker.h.

Referenced by invalidMemGainsCollection(), and setInvalidMemGainsCollection().

Definition at line 252 of file DCCDataUnpacker.h.

Referenced by invalidMemTtIdsCollection(), and setInvalidMemTtIdsCollection().

Definition at line 248 of file DCCDataUnpacker.h.

Referenced by invalidTTIdsCollection(), and setInvalidTTIdsCollection().

Definition at line 249 of file DCCDataUnpacker.h.

Referenced by invalidZSXtalIdsCollection(), and setInvalidZSXtalIdsCollection().

Definition at line 256 of file DCCDataUnpacker.h.

Referenced by pnDiodeDigisCollection(), and setPnDiodeDigisCollection().

bool DCCDataUnpacker::silentMode_ = false [static]