ATLAS Offline Software
Loading...
Searching...
No Matches
TileCalibDrawerBase.h File Reference
#include "CoralBase/Blob.h"
#include "TileCalibBlobObjs/Exception.h"
#include "TileCalibBlobObjs/TileCalibType.h"
#include <stdint.h>
#include <vector>
#include <string>
#include <iosfwd>
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 192 of file TileCalibDrawerBase.h.

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