ATLAS Offline Software
Loading...
Searching...
No Matches
TileCalorimeter
TileCalib
TileCalibBlobObjs
src
TileCalibDrawerInt.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#include "
TileCalibBlobObjs/TileCalibDrawerInt.h
"
6
#include <iostream>
7
8
//
9
//_____________________________________________________________
10
TileCalibDrawerInt
*
11
TileCalibDrawerInt::getInstance
(coral::Blob& blob,
12
const
DefType
& def,
13
uint16_t nChans,
14
uint16_t objVers,
15
const
std::string& author,
16
const
std::string& comment,
17
uint64_t timeStamp)
18
{
19
TileCalibDrawerInt
* calibDrawer =
new
TileCalibDrawerInt
(blob);
20
calibDrawer->init(def,nChans,objVers,author,comment,timeStamp);
21
return
calibDrawer;
22
}
23
24
//
25
//_____________________________________________________________
26
const
TileCalibDrawerInt
*
27
TileCalibDrawerInt::getInstance
(
const
coral::Blob& blob)
28
{
29
//=== const Blob needs to be correctly formated
30
if
(blob.size()<
static_cast<
long
>
(
m_hdrSize32
)){
31
throw
TileCalib::InvalidBlob
(
"TileCalibDrawerBch::getInstance"
);
32
}
33
return
(
new
TileCalibDrawerInt
(blob));
34
}
35
36
//
37
//_______________________________________________________________
38
TileCalibDrawerInt::TileCalibDrawerInt
(
const
coral::Blob& blob)
39
:
TileCalibDrawerDat
<uint32_t>(blob)
40
{
41
//=== check for correct blob type
42
if
(
getBlobSize
()){
43
if
(
getObjType
() !=
TileCalibDrawerInt::getType
()){
44
throw
TileCalib::TypeConflict
(
"TileCalibDrawerInt::Ctor"
,
getObjType
(),
TileCalibDrawerInt::getType
());
45
}
46
}
47
}
48
49
//
50
//_______________________________________________________________
51
TileCalibDrawerInt::TileCalibDrawerInt
(coral::Blob& blob)
52
:
TileCalibDrawerDat
<uint32_t>(blob)
53
{
54
//=== check for correct blob type
55
if
(
getBlobSize
()){
56
if
(
getObjType
() !=
TileCalibDrawerInt::getType
()){
57
throw
TileCalib::TypeConflict
(
"TileCalibDrawerInt::Ctor"
,
getObjType
(),
TileCalibDrawerInt::getType
());
58
}
59
}
60
}
TileCalibDrawerInt.h
TileCalibDrawerDat< uint32_t >::getObjType
uint16_t getObjType() const
TileCalibDrawerDat< uint32_t >::getBlobSize
long getBlobSize() const
Definition
TileCalibDrawerBase.h:92
TileCalibDrawerDat< uint32_t >::m_hdrSize32
static const unsigned int m_hdrSize32
Definition
TileCalibDrawerBase.h:138
TileCalibDrawerDat< uint32_t >::TileCalibDrawerDat
TileCalibDrawerDat(const coral::Blob &blob)
Definition
TileCalibDrawerDat.h:89
TileCalibDrawerDat< uint32_t >::DefType
std::vector< std::vector< uint32_t > > DefType
Definition
TileCalibDrawerDat.h:37
TileCalibDrawerInt
Class for storing a 32 bit array of words for each ADC.
Definition
TileCalibDrawerInt.h:23
TileCalibDrawerInt::getType
virtual uint16_t getType() const
Returns TileCalibType::BCH.
Definition
TileCalibDrawerInt.h:30
TileCalibDrawerInt::TileCalibDrawerInt
TileCalibDrawerInt(const coral::Blob &blob)
Ctor.
Definition
TileCalibDrawerInt.cxx:38
TileCalibDrawerInt::getInstance
static const TileCalibDrawerInt * getInstance(const coral::Blob &blob)
Returns a pointer to a const TileCalibDrawerBch.
Definition
TileCalibDrawerInt.cxx:27
TileCalib::InvalidBlob
Thrown if coral::Blob does not conform with expected structure.
Definition
TileCalorimeter/TileCalib/TileCalibBlobObjs/TileCalibBlobObjs/Exception.h:63
TileCalib::TypeConflict
Thrown if object type in BLOB does not agree with class type.
Definition
TileCalorimeter/TileCalib/TileCalibBlobObjs/TileCalibBlobObjs/Exception.h:99
Generated on
for ATLAS Offline Software by
1.14.0