|  | ATLAS Offline Software
    | 
 
 
 
Go to the documentation of this file.
    5 #ifndef TILECALIBBLOBOBJS_TILECALIBDRAWERDAT_H 
    6 #define TILECALIBBLOBOBJS_TILECALIBDRAWERDAT_H 
   27 #include "CoralBase/Blob.h" 
   37   typedef std::vector<std::vector<T> > 
DefType;
 
   62         const std::string& 
author=
"",
 
   84   virtual void dump(std::ostream& stm) 
const;
 
  106 template<
class T> 
void 
  110                 const std::string&  
author,
 
  115   uint32_t objSize  = nGains>0 ? def.begin()->size() * 
sizeof(
T)/
sizeof(
uint32_t) : 0; 
 
  119   for(
unsigned int iGain=0; iGain<nGains; ++iGain){
 
  120     unsigned int thisSize = def[iGain].size()*
sizeof(
T)/
sizeof(
uint32_t);
 
  121     if( thisSize != objSize ){
 
  131     for(
unsigned int adc=0; 
adc<nGains; ++
adc){
 
  142   if(
idx>=getObjSizeUint32()){
 
  157   if(
adc >= getNGains()) {
adc = 0;}
 
  164 template<
class T> 
void  
  171   if(
adc>=getNGains()){
 
  174   if(
idx>=getObjSizeUint32()){
 
  183 template<
class T> 
void  
  186   for(
typename std::vector<T>::const_iterator 
i=
data.begin(); 
i!=
data.end(); ++
i){
 
  193 template<
class T> 
const T* 
 
  211 template<
class T> 
void  
  216     for(
unsigned int adc=0; 
adc<getNGains(); ++
adc){
 
  218       for(
unsigned int idx=0; 
idx<getObjSizeUint32(); ++
idx){
 
  
char data[hepevt_bytes_allocation_ATLAS]
const InDetSimData * getData(const InDetSimDataCollection &coll, const Identifier &id)
Thrown if an index is out of range.
void dumpHeader(std::ostream &stm) const
Prints the BLOB header summary information.
Generic template class for storing a number of "T"s for each channel or ADC.
Thrown if BLOB size is not correct.
TileCalibDrawerDat(coral::Blob &blob)
Ctor (non-const).
void setData(unsigned int channel, unsigned int adc, unsigned int idx, T data)
Sets a single T belonging to a channel/ADC.
TileCalibDrawerDat(const coral::Blob &blob)
Ctor (const).
virtual ~TileCalibDrawerDat()
Dtor.
void setData(unsigned int channel, unsigned int adc, const std::vector< T > &data)
Sets a number of Ts stored in the input vector.
This class provides the core BLOB infrastructure.
T * getAddress(unsigned int channel, unsigned int adc)
void init(const DefType &def, uint16_t nChans, uint16_t objVers, const std::string &author="", const std::string &comment="", uint64_t timeStamp=0)
Initializing function.
virtual void dump() const
Prints out the content of the blob to std::out.
std::vector< std::vector< T > > DefType
Object to hold default data used for initialization.
const T * getAddress(unsigned int channel, unsigned int adc) const
Returns a pointer to the first value for the specified channel & ADC.
T getData(unsigned int channel, unsigned int adc, unsigned int idx) const
Returns a single T belonging to a channel/ADC.
static const unsigned int MAX_CHAN
Number of channels in drawer.
virtual void dump(std::ostream &stm) const
Prints out the content of the blob.
T getType(const char *cStr)
Return Ringer enumeration of type T identifying string type:
const void * getAddress(unsigned int iEle) const
Returns start address of iEle-th basic unit.