ATLAS Offline Software
Classes | Functions
TileCalibDrawerBase.h File Reference
#include <stdint.h>
#include <vector>
#include <string>
#include <iostream>
#include "CoralBase/Blob.h"
#include "TileCalibBlobObjs/Exception.h"
#include "TileCalibBlobObjs/TileCalibType.h"
Include dependency graph for TileCalibDrawerBase.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  TileCalibDrawerBase
 This class provides the core BLOB infrastructure. More...
 

Functions

 __attribute__ ((always_inline)) inline uint16_t TileCalibDrawerBase
 

Function Documentation

◆ __attribute__()

__attribute__ ( (always_inline)  )

Definition at line 190 of file TileCalibDrawerBase.h.

192 {
193  return m_blobStart16[0];
194 }
195 
196 //
197 //_________________________________________________________
198 __attribute__((always_inline)) inline uint16_t
200 {
201  return m_blobStart16[1];
202 }
203 
204 //
205 //_________________________________________________________
206 __attribute__((always_inline)) inline uint32_t
208 {
209  return m_blobStart32[1];
210 }
211 
212 //
213 //_________________________________________________________
214 __attribute__((always_inline)) inline uint32_t
216 {
217  return m_blobStart32[2];
218 }
219 
220 //
221 //_________________________________________________________
222 __attribute__((always_inline)) inline uint16_t
224 {
225  return m_blobStart16[6];
226 }
227 
228 //
229 //_________________________________________________________
230 __attribute__((always_inline)) inline uint16_t
232 {
233  return m_blobStart16[7];
234 }
235 
236 //
237 //_________________________________________________________
238 __attribute__((always_inline)) inline uint32_t
240 {
241  return m_blobStart32[4];
242 }
243 
244 //
245 //_________________________________________________________
246 __attribute__((always_inline)) inline const void*
247 TileCalibDrawerBase::getAddress(unsigned int iEle) const
248 {
249  if(iEle>=getNObjs()){
250  throw TileCalib::IndexOutOfRange("TileCalibDrawerBase::getAddress", iEle, getNObjs());
251  }
252  return static_cast<const void*>( m_blobStart32 + m_hdrSize32 + getObjSizeUint32()*iEle );
253 }
254 
255 //
256 //_________________________________________________________
257 __attribute__((always_inline)) inline void*
258 TileCalibDrawerBase::getAddress(unsigned int iEle)
259 {
260  if(iEle>=getNObjs()){
261  throw TileCalib::IndexOutOfRange("TileCalibDrawerBase::getAddress", iEle, getNObjs());
262  }
263  uint32_t* blobStart32 = static_cast<uint32_t*>(m_blob_nc->startingAddress());
264  return static_cast<void*>( blobStart32 + m_hdrSize32 + getObjSizeUint32()*iEle );
265 }
TileCalib::IndexOutOfRange
Thrown if an index is out of range.
Definition: TileCalorimeter/TileCalib/TileCalibBlobObjs/TileCalibBlobObjs/Exception.h:141
TileCalibDrawerBase::getNGains
uint16_t getNGains() const
Returns the number of gains stored for each channel.
TileCalibDrawerBase::m_blobStart32
const uint32_t * m_blobStart32
Cache blob starting address as uint_32t*.
Definition: TileCalibDrawerBase.h:178
TileCalibDrawerBase::m_blob_nc
coral::Blob * m_blob_nc
Non-const reference to the BLOB.
Definition: TileCalibDrawerBase.h:174
TileCalibDrawerBase::m_hdrSize32
static const unsigned int m_hdrSize32
The header size in units of uint32_t.
Definition: TileCalibDrawerBase.h:138
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
TileCalibDrawerBase::getCommentSizeUint32
uint32_t getCommentSizeUint32() const
Returns the space occupied by the comment fields in units of uint32_t.
TileCalibDrawerBase::getObjVersion
uint16_t getObjVersion() const
Returns the BLOB object version.
xAOD::uint16_t
setWord1 uint16_t
Definition: eFexEMRoI_v1.cxx:93
TileCalibDrawerBase::getNChans
uint16_t getNChans() const
Returns the number of channels stored in the BLOB.
__attribute__
__attribute__((always_inline)) inline uint16_t TileCalibDrawerBase
Definition: TileCalibDrawerBase.h:190
TileCalibDrawerBase::getObjSizeUint32
uint32_t getObjSizeUint32() const
Returns the size of a data object in units of uint32_t.
TileCalibDrawerBase::getAddress
const void * getAddress(unsigned int iEle) const
Returns start address of iEle-th basic unit.
TileCalibDrawerBase::m_blobStart16
const uint16_t * m_blobStart16
Cache blob starting address as uint_16t*.
Definition: TileCalibDrawerBase.h:180
TileCalibDrawerBase::getNObjs
uint32_t getNObjs() const
Returns the number of data objects stored int the BLOB.