ATLAS Offline Software
Loading...
Searching...
No Matches
TrigConf::TriggerThresholdLoader Class Reference

TriggerDB loader of the LVL1 trigger thresholds. More...

#include <TriggerThresholdLoader.h>

Inheritance diagram for TrigConf::TriggerThresholdLoader:
Collaboration diagram for TrigConf::TriggerThresholdLoader:

Public Member Functions

 TriggerThresholdLoader (StorageMgr &sm, coral::ISessionProxy &session)
 constructor
virtual ~TriggerThresholdLoader () override=default
 destructor
virtual bool load (TriggerThreshold &data) override
void setLoadCableInfo (bool b)
bool loadCableInfo ()
void setMenuId (const int &id)
int menuId ()
virtual void setLevel (MSGTC::Level lvl) override
 access to output stream
virtual MSGTC::Level outputLevel () const override
void startSession ()
 start session if not already active
void commitSession ()
 commit session if not already done
bool loadL1MasterKey (int SuperMasterKey, int &Lvl1MasterKey)
 get l1 master from super master
bool loadL1MenuKey (int SuperMasterKey, int &Lvl1MenuKey)
 get l1 menu id from super master
unsigned int triggerDBSchemaVersion ()
virtual int verbose () const override
virtual void setVerbose (int v) override
bool isRun1 ()
bool isRun2 ()
bool msgLvl (const MSGTC::Level lvl) const
 Test the output level.
MsgStreamTCmsg () const
 The standard message stream.
MsgStreamTCmsg (const MSGTC::Level lvl) const
 The standard message stream.
const std::string & getName () const
 name accessor

Protected Attributes

StorageMgrm_storageMgr
 reference to the storage manager
coral::ISessionProxy & m_session
 CORAL interface to database session.
bool m_sessionOwner {false}
 remember if the loader started the session in the first place

Private Member Functions

std::tuple< unsigned int, unsigned int > loadSchemaVersion () const
 get DB schema version and run number

Private Attributes

int m_MenuId
bool m_LoadCableInfo
int m_verbose {1}
boost::thread_specific_ptr< MsgStreamTCm_msg_tls
 MsgStreamTC instance (a std::cout like with print-out levels)
std::string m_name

Detailed Description

TriggerDB loader of the LVL1 trigger thresholds.

Definition at line 27 of file TriggerThresholdLoader.h.

Constructor & Destructor Documentation

◆ TriggerThresholdLoader()

TrigConf::TriggerThresholdLoader::TriggerThresholdLoader ( StorageMgr & sm,
coral::ISessionProxy & session )
inline

constructor

Parameters
smreference to storage manager
sessionreference to the database session

Definition at line 36 of file TriggerThresholdLoader.h.

36 :
37 DBLoader("TriggerThresholdLoader", sm, session), m_MenuId(0), m_LoadCableInfo(true) {}
DBLoader(StorageMgr &sm, coral::ISessionProxy &session)
constructor
Definition DBLoader.cxx:30

◆ ~TriggerThresholdLoader()

virtual TrigConf::TriggerThresholdLoader::~TriggerThresholdLoader ( )
overridevirtualdefault

destructor

Member Function Documentation

◆ commitSession()

void TrigConf::DBLoader::commitSession ( )
inherited

commit session if not already done

Definition at line 45 of file DBLoader.cxx.

46{
47 if ( m_session.transaction().isActive() && m_sessionOwner) {
48 m_session.transaction().commit();
49 }
50}
bool m_sessionOwner
remember if the loader started the session in the first place
Definition DBLoader.h:69
coral::ISessionProxy & m_session
CORAL interface to database session.
Definition DBLoader.h:68

◆ getName()

const std::string & TrigConf::TrigConfMessaging::getName ( ) const
inlineinherited

name accessor

Returns
the name

Definition at line 101 of file TrigConfMessaging.h.

101 {
102 return m_name;
103 }

◆ isRun1()

bool TrigConf::DBLoader::isRun1 ( )
inlineinherited

Definition at line 60 of file DBLoader.h.

60{ return ! isRun2(); }

◆ isRun2()

bool DBLoader::isRun2 ( )
inherited

Definition at line 54 of file DBLoader.cxx.

54 {
55 const static unsigned int run = std::get<1>(loadSchemaVersion());
56 return run == 2;
57}
std::tuple< unsigned int, unsigned int > loadSchemaVersion() const
get DB schema version and run number
Definition DBLoader.cxx:81

◆ load()

bool TrigConf::TriggerThresholdLoader::load ( TriggerThreshold & data)
overridevirtual

Implements TrigConf::ITriggerThresholdLoader.

Definition at line 28 of file TriggerThresholdLoader.cxx.

28 {
29
30 const unsigned int schema_version_with_zb_fields = 9;
31
32 TRG_MSG_DEBUG("TriggerThresholdLoader loading threshold with ID = "
33 << ttTarget.id() << " for MenuId = "
34 << m_MenuId << ": ")
35 unsigned int schema_version = triggerDBSchemaVersion();
36
37 try {
39
40 {
41 unique_ptr<coral::IQuery> query(m_session.nominalSchema().tableHandle( "L1_TRIGGER_THRESHOLD").newQuery());
42 query->setRowCacheSize( 5 );
43
44 //Bind list
45 coral::AttributeList bindList;
46 bindList.extend<long>("ttId");
47 std::string cond= "L1TT_ID = :ttId";
48 bindList[0].data<long>() = ttTarget.id();
49 query->setCondition( cond, bindList );
50
51 //Output data and types
52 coral::AttributeList attList;
53 attList.extend<std::string>( "L1TT_NAME" );
54 attList.extend<int>( "L1TT_VERSION" );
55 attList.extend<std::string>( "L1TT_TYPE" );
56 attList.extend<int>( "L1TT_ACTIVE" );
57 attList.extend<int>( "L1TT_MAPPING" );
58 if( (isRun1() && schema_version >= schema_version_with_zb_fields) || isRun2() ) {
59 attList.extend<int>( "L1TT_BCDELAY" );
60 attList.extend<std::string>( "L1TT_SEED" );
61 attList.extend<int>( "L1TT_SEED_MULTI" );
62 }
63 fillQuery(query.get(),attList);
64
65 coral::ICursor& cursor = query->execute();
66
67 if ( ! cursor.next() ) {
68 TRG_MSG_ERROR("No TriggerThreshold exists with ID " << ttTarget.id());
70 throw std::runtime_error( "TriggerThresholdLoader >> TriggerThreshold not available" );
71 }
72
73 const coral::AttributeList& row = cursor.currentRow();
74
75 std::string name = row["L1TT_NAME"].data<std::string>();
76 int version = row["L1TT_VERSION"].data<int>();
77 std::string type = row["L1TT_TYPE"].data<std::string>();
78 int active = row["L1TT_ACTIVE"].data<int>();
79 int mapping = row["L1TT_MAPPING"].data<int>();
80
81 // zero bias related
82 int bcdelay(-1), seed_multi(-1);
83 std::string seed("");
84 if( (isRun1() && schema_version >= schema_version_with_zb_fields) || isRun2() ) {
85 bcdelay = row["L1TT_BCDELAY"].data<int>();
86 seed = row["L1TT_SEED"].data<std::string>();
87 seed_multi = row["L1TT_SEED_MULTI"].data<int>();
88 }
89
90 TRG_MSG_DEBUG(name << " " << version << " " << type << " " << active << " " << mapping);
91
92 // Fill the object with data
93 ttTarget.setName ( name );
94 ttTarget.setVersion( version );
95 ttTarget.setType ( type );
96 ttTarget.setInput ( (type=="TOPO" || type=="ALFA") ? "ctpcore" : "ctpin" );
97 ttTarget.setActive ( active );
98
99 ttTarget.setZBSeedingThresholdName(seed);
100 ttTarget.setZBSeedingThresholdMulti(seed_multi);
101 ttTarget.setBCDelay(bcdelay);
102
103 if(ttTarget.isInternal()) {
104 string::size_type pos = name.find_first_of("0123456789");
105 mapping = std::stoi(name.substr(pos));
106 }
107 ttTarget.setMapping( mapping );
108 }
109
110
111 //==================================================
112 // now get the cable info from TM_TT
113 if(loadCableInfo()) {
114
115 unique_ptr<coral::IQuery> query(m_session.nominalSchema().tableHandle( "L1_TM_TO_TT").newQuery());
116 query->setRowCacheSize( 5 );
117
118 //Bind list
119 coral::AttributeList bindList;
120 std::string cond = "L1TM2TT_TRIGGER_THRESHOLD_ID = :ttId";
121 cond += " AND L1TM2TT_TRIGGER_MENU_ID = :menuId";
122 bindList.extend<long>("ttId");
123 bindList.extend<int>("menuId");
124 bindList[0].data<long>() = ttTarget.id();
125 bindList[1].data<int>() = m_MenuId;
126 query->setCondition( cond, bindList );
127
128 //Define the data types
129 coral::AttributeList attList;
130 attList.extend<std::string>( "L1TM2TT_CABLE_NAME" );
131 attList.extend<std::string>( "L1TM2TT_CABLE_CTPIN" );
132 attList.extend<std::string>( "L1TM2TT_CABLE_CONNECTOR" );
133 attList.extend<int>( "L1TM2TT_CABLE_START" );
134 attList.extend<int>( "L1TM2TT_CABLE_END" );
135 fillQuery(query.get(),attList);
136
137 coral::ICursor& cursor = query->execute();
138
139 if ( ! cursor.next() ) {
140 TRG_MSG_ERROR("No such combination in L1_TM_TO_TT: TT ID "<< ttTarget.id() << ", menu ID " << m_MenuId);
142 throw std::runtime_error( "TriggerThresholdLoader >> "
143 "TMTI combination not availbale in TM_TT" );
144 }
145
146 const coral::AttributeList& row = cursor.currentRow();
147 std::string cable_name = row["L1TM2TT_CABLE_NAME"].data<std::string>();
148 std::string cable_ctpin = row["L1TM2TT_CABLE_CTPIN"].data<std::string>();
149 std::string cable_connector = row["L1TM2TT_CABLE_CONNECTOR"].data<std::string>();
150 int cable_start = row["L1TM2TT_CABLE_START"].data<int>();
151 int cable_end = row["L1TM2TT_CABLE_END"].data<int>();
152
153 ttTarget.setCableName(cable_name);
154 ttTarget.setCableCtpin(cable_ctpin);
155 ttTarget.setCableConnector(cable_connector);
156 ttTarget.setCableStart(cable_start);
157 ttTarget.setCableEnd(cable_end);
158
159 }
160
161 if( ! ttTarget.isInternal() ) { // no trigger threshold values exist for internal triggers
162
163 //=================================================================
164 // now get the TTVs from TT_TTV:
165 coral::ITable& table = m_session.nominalSchema().tableHandle( "L1_TT_TO_TTV");
166 coral::IQuery* query = table.newQuery();
167 query->setRowCacheSize(5);
168
169 //Bind list
170 coral::AttributeList bindList;
171 bindList.extend<long>("ttId");
172 std::string cond = "L1TT2TTV_TRIGGER_THRESHOLD_ID = :ttId";
173 bindList[0].data<long>() = ttTarget.id();
174 query->setCondition( cond, bindList );
175
176 //Output data and types
177 coral::AttributeList attList;
178 attList.extend<long>( "L1TT2TTV_TRIG_THRES_VALUE_ID" );
179 query->defineOutput(attList);
180 query->addToOutputList( "L1TT2TTV_TRIG_THRES_VALUE_ID" );
181
182 coral::ICursor& cursor = query->execute();
183
184 std::vector<long> vec_ttv_id;
185 while( cursor.next() ) {
186 const coral::AttributeList& row = cursor.currentRow();
187 vec_ttv_id.push_back((long)row["L1TT2TTV_TRIG_THRES_VALUE_ID"].data<long>());
188 }
189
190 unsigned int numberofvalues = vec_ttv_id.size();
191
192 TriggerThresholdValueLoader& ttvldr = dynamic_cast<TriggerThresholdValueLoader&>
193 ((dynamic_cast<StorageMgr&>(m_storageMgr)).triggerThresholdValueLoader());
194 ttvldr.setVerbose(verbose());
195 for (unsigned int i=0; i<numberofvalues; ++i) {
196 TriggerThresholdValue* ttv = 0;
197 if (ttTarget.type() == L1DataDef::typeAsString(L1DataDef::MUON)) {
198 ttv = new MuonThresholdValue();
199 } else if (ttTarget.type() == L1DataDef::typeAsString(L1DataDef::EM) ||
200 ttTarget.type() == L1DataDef::typeAsString(L1DataDef::TAU)) {
201 ttv = new ClusterThresholdValue();
202 } else if (ttTarget.type() == L1DataDef::typeAsString(L1DataDef::JET) ||
203 ttTarget.type() == L1DataDef::typeAsString(L1DataDef::JB) ||
204 ttTarget.type() == L1DataDef::typeAsString(L1DataDef::JF)) {
205 ttv = new JetThresholdValue();
206 } else if (ttTarget.type() == L1DataDef::typeAsString(L1DataDef::XE) ||
207 ttTarget.type() == L1DataDef::typeAsString(L1DataDef::JE) ||
208 ttTarget.type() == L1DataDef::typeAsString(L1DataDef::TE)) {
209 ttv = new EtThresholdValue();
210 } else if (ttTarget.type() == L1DataDef::typeAsString(L1DataDef::XS)) {
211 ttv = new XsThresholdValue();
212 } else if (ttTarget.type() == L1DataDef::typeAsString(L1DataDef::NIM) ||
213 ttTarget.type() == L1DataDef::typeAsString(L1DataDef::MBTS) ||
214 ttTarget.type() == L1DataDef::typeAsString(L1DataDef::MBTSSI) ||
215 ttTarget.type() == L1DataDef::typeAsString(L1DataDef::BCM) ||
216 ttTarget.type() == L1DataDef::typeAsString(L1DataDef::BCMCMB) ||
217 ttTarget.type() == L1DataDef::typeAsString(L1DataDef::LUCID) ||
218 ttTarget.type() == L1DataDef::typeAsString(L1DataDef::CALREQ) ||
219 ttTarget.type() == L1DataDef::typeAsString(L1DataDef::ZDC) ||
220 ttTarget.type() == L1DataDef::typeAsString(L1DataDef::TRT) ||
221 ttTarget.type() == L1DataDef::typeAsString(L1DataDef::BPTX) ) {
222 ttv = new NimThresholdValue();
223 } else {
224 msg() << "TriggerThresholdLoader: not supported type "
225 << ttTarget.id() << " type is " << ttTarget.type() << std::endl;
226 delete query;
227 delete ttv;
229 throw std::runtime_error("TriggerThresholdLoader: not supported type" );
230 }
231 ttv->setId(vec_ttv_id[i]);
232 if ( !ttvldr.load( *ttv ) ) {
233 msg() << "TriggerThresholdLoader: Error loading TriggerThreshodValue "
234 << ttv->id() << std::endl;
235 delete ttv;
236 ttv = 0;
237 delete query;
239 throw std::runtime_error("TriggerThresholdLoader: Error loading TriggerThreshodValue " );
240 } else {
241 // fill the vector
242 ttTarget.addThresholdValue(ttv);
243 }
244 }
245 }
246
248 return true;
249 } catch( const coral::SchemaException& e ) {
250 msg() << "TriggerThresholdLoader: SchemaException: "
251 << e.what() << std::endl;
252 m_session.transaction().rollback();
253 return false;
254 } catch( const std::exception& e ) {
255 msg() << "TriggerThresholdLoader >> Standard C++ exception: " << e.what() << std::endl;
256
257 m_session.transaction().rollback();
258 return false;
259 } catch( ... ) {
260 msg() << "TriggerThresholdLoader >> unknown C++ exception" << std::endl;
261
262 m_session.transaction().rollback();
263 return false;
264 }
265}
char data[hepevt_bytes_allocation_ATLAS]
Definition HepEvt.cxx:11
virtual int verbose() const override
Definition DBLoader.h:57
StorageMgr & m_storageMgr
reference to the storage manager
Definition DBLoader.h:67
void commitSession()
commit session if not already done
Definition DBLoader.cxx:45
unsigned int triggerDBSchemaVersion()
Definition DBLoader.cxx:76
void startSession()
start session if not already active
Definition DBLoader.cxx:35
static std::string & typeAsString(TriggerType tt)
Definition L1DataDef.h:53
MsgStreamTC & msg() const
The standard message stream.
row
Appending html table to final .html summary file.
void fillQuery(coral::IQuery *q, coral::AttributeList &attList)
Definition DBHelper.cxx:13
@ active
Definition Layer.h:47
query
Definition index.py:72

◆ loadCableInfo()

bool TrigConf::TriggerThresholdLoader::loadCableInfo ( )
inline

Definition at line 45 of file TriggerThresholdLoader.h.

45{ return m_LoadCableInfo; }

◆ loadL1MasterKey()

bool TrigConf::DBLoader::loadL1MasterKey ( int SuperMasterKey,
int & Lvl1MasterKey )
inherited

get l1 master from super master

Definition at line 128 of file DBLoader.cxx.

128 {
129 try {
130 startSession();
131
132 unique_ptr< coral::IQuery > q( m_session.nominalSchema().tableHandle( "SUPER_MASTER_TABLE").newQuery() );
133 q->setRowCacheSize( 5 );
134
135 //Bind list
136 coral::AttributeList bindings;
137 bindings.extend<int>("smtid");
138 bindings[0].data<int>() = smk;
139 q->setCondition( "SMT_ID = :smtid", bindings );
140
141 //Output data and types
142 coral::AttributeList attList;
143 attList.extend<int>( "SMT_L1_MASTER_TABLE_ID" );
144 fillQuery(q.get(), attList);
145
146 coral::ICursor& cursor = q->execute();
147 if ( ! cursor.next() ) {
148 msg() << "DBLoader: No such SuperMaster key exists " << smk << endl;
149 throw runtime_error( "DBLoader: SuperMasterKey not available" );
150 }
151
152 const coral::AttributeList& row = cursor.currentRow();
153 Lvl1MasterKey = row["SMT_L1_MASTER_TABLE_ID"].data<int>();
154 }
155 catch( const std::exception& e ) {
157 msg() << "DBLoader: C++ exception: " << e.what() << std::endl;
158 throw;
159 }
161 return true;
162}

◆ loadL1MenuKey()

bool TrigConf::DBLoader::loadL1MenuKey ( int SuperMasterKey,
int & Lvl1MenuKey )
inherited

get l1 menu id from super master

Definition at line 167 of file DBLoader.cxx.

167 {
168 try {
169
170 int l1Master = 0;
171 loadL1MasterKey(SuperMasterKey, l1Master);
172
173 startSession();
174
175 unique_ptr< coral::IQuery > q( m_session.nominalSchema().tableHandle( "L1_MASTER_TABLE").newQuery() );
176 q->setRowCacheSize( 5 );
177
178 //Bind list
179 coral::AttributeList bindings;
180 bindings.extend<int>("l1mtid");
181 bindings[0].data<int>() = l1Master;
182 q->setCondition( "L1MT_ID = :l1mtid" , bindings );
183
184 //Output data and types
185 coral::AttributeList attList;
186 attList.extend<int>( "L1MT_TRIGGER_MENU_ID" );
187 q->defineOutput(attList);
188 q->addToOutputList( "L1MT_TRIGGER_MENU_ID" );
189
190 coral::ICursor& cursor = q->execute();
191 if ( ! cursor.next() ) {
192 msg() << "DBLoader >> No such L1 Master key exists " << l1Master << std::endl;
193 throw std::runtime_error( "DBLoader >> L1MasterKey not available" );
195 }
196
197 const coral::AttributeList& row = cursor.currentRow();
198 Lvl1MenuKey = row["L1MT_TRIGGER_MENU_ID"].data<int>();
199
201
202 }
203 catch( const std::exception& e ) {
204 msg() << "DBLoader >> Standard C++ exception: " << e.what() << std::endl;
205 m_session.transaction().rollback();
206 throw;
207 }
208 return true;
209}
bool loadL1MasterKey(int SuperMasterKey, int &Lvl1MasterKey)
get l1 master from super master
Definition DBLoader.cxx:128

◆ loadSchemaVersion()

std::tuple< unsigned int, unsigned int > DBLoader::loadSchemaVersion ( ) const
privateinherited

get DB schema version and run number

Definition at line 81 of file DBLoader.cxx.

82{
83 const static auto versions = [&]() -> std::tuple<unsigned int,unsigned int> {
84 bool mySession = false;
85 if ( ! m_session.transaction().isActive() ) {
86 m_session.transaction().start(true);
87 mySession = true;
88 }
89
90 std::unique_ptr< coral::IQuery > q( m_session.nominalSchema().tableHandle( "TRIGGER_SCHEMA").newQuery() );
91 q->setRowCacheSize( 1 );
92
93 //Output data and types
94 coral::AttributeList attList;
95 attList.extend<int>( "TS_ID" );
96 q->defineOutput(attList);
97 q->addToOutputList( "TS_ID" );
98
99 q->addToOrderList("TS_ID desc");
100 coral::ICursor& cursor = q->execute();
101
102 if ( ! cursor.next() ) {
103 TRG_MSG_ERROR("Table TRIGGER_SCHEMA is not filled");
104 if ( mySession ) m_session.transaction().commit();
105 throw std::runtime_error( "DBLoader::loadSchemaVersion() >> Table TRIGGER_SCHEMA is not filled" );
106 }
107
108 const coral::AttributeList& row = cursor.currentRow();
109 const unsigned int triggerDBSchemaVersion = row["TS_ID"].data<int>();
110
111 TRG_MSG_INFO("TriggerDB schema version: " << triggerDBSchemaVersion);
112
113 const unsigned int run = m_session.nominalSchema().existsTable( "ACTIVE_MASTERS" ) ? 2 : 1;
114
115 TRG_MSG_INFO("Database has Run " << run << " schema");
116 TRG_MSG_INFO("Total number of tables : " << m_session.nominalSchema().listTables().size());
117
118 //commitSession();
119 if ( mySession ) m_session.transaction().commit();
120
121 return {triggerDBSchemaVersion, run};
122 }();
123
124 return versions;
125}

◆ menuId()

int TrigConf::TriggerThresholdLoader::menuId ( )

Definition at line 273 of file TriggerThresholdLoader.cxx.

273 {
274 return m_MenuId;
275}

◆ msg() [1/2]

MsgStreamTC & TrigConf::TrigConfMessaging::msg ( ) const
inlineinherited

The standard message stream.

Returns a reference to the message stream May not be invoked before sysInitialize() has been invoked.

Definition at line 86 of file TrigConfMessaging.h.

87 {
88 MsgStreamTC* ms = m_msg_tls.get();
89 if (!ms) {
90 ms = new MsgStreamTC(m_name);
91 m_msg_tls.reset(ms);
92 }
93 return *ms;
94 }
boost::thread_specific_ptr< MsgStreamTC > m_msg_tls
MsgStreamTC instance (a std::cout like with print-out levels)

◆ msg() [2/2]

MsgStreamTC & TrigConf::TrigConfMessaging::msg ( const MSGTC::Level lvl) const
inlineinherited

The standard message stream.

Returns a reference to the default message stream May not be invoked before sysInitialize() has been invoked.

Definition at line 96 of file TrigConfMessaging.h.

97 {
98 return msg() << lvl;
99 }

◆ msgLvl()

bool TrigConf::TrigConfMessaging::msgLvl ( const MSGTC::Level lvl) const
inlineinherited

Test the output level.

Parameters
lvlThe message level to test against
Returns
boolean Indicting if messages at given level will be printed
Return values
trueMessages at level "lvl" will be printed

Definition at line 75 of file TrigConfMessaging.h.

76 {
77 if (msg().level() <= lvl) {
78 msg() << lvl;
79 return true;
80 }
81 else {
82 return false;
83 }
84 }

◆ outputLevel()

virtual MSGTC::Level TrigConf::DBLoader::outputLevel ( ) const
inlineoverridevirtualinherited

Implements TrigConf::ILoader.

Definition at line 40 of file DBLoader.h.

40{ return msg().level(); }

◆ setLevel()

void DBLoader::setLevel ( MSGTC::Level lvl)
overridevirtualinherited

◆ setLoadCableInfo()

void TrigConf::TriggerThresholdLoader::setLoadCableInfo ( bool b)
inline

Definition at line 44 of file TriggerThresholdLoader.h.

◆ setMenuId()

void TrigConf::TriggerThresholdLoader::setMenuId ( const int & id)

Definition at line 268 of file TriggerThresholdLoader.cxx.

◆ setVerbose()

virtual void TrigConf::DBLoader::setVerbose ( int v)
inlineoverridevirtualinherited

Implements TrigConf::ILoader.

Definition at line 58 of file DBLoader.h.

◆ startSession()

void TrigConf::DBLoader::startSession ( )
inherited

start session if not already active

Definition at line 35 of file DBLoader.cxx.

36{
37 if ( ! m_session.transaction().isActive() ) {
38 //std::cout << "DBLoader: startSession(readonly=true)" << std::endl;
39 bool readOnly = true;
40 m_session.transaction().start(readOnly);
41 m_sessionOwner = true;
42 }
43}

◆ triggerDBSchemaVersion()

unsigned int DBLoader::triggerDBSchemaVersion ( )
inherited

Definition at line 76 of file DBLoader.cxx.

76 {
77 return std::get<0>(loadSchemaVersion());
78}

◆ verbose()

virtual int TrigConf::DBLoader::verbose ( ) const
inlineoverridevirtualinherited

Implements TrigConf::ILoader.

Definition at line 57 of file DBLoader.h.

57{ return m_verbose; }

Member Data Documentation

◆ m_LoadCableInfo

bool TrigConf::TriggerThresholdLoader::m_LoadCableInfo
private

Definition at line 52 of file TriggerThresholdLoader.h.

◆ m_MenuId

int TrigConf::TriggerThresholdLoader::m_MenuId
private

Definition at line 51 of file TriggerThresholdLoader.h.

◆ m_msg_tls

boost::thread_specific_ptr<MsgStreamTC> TrigConf::TrigConfMessaging::m_msg_tls
mutableprivateinherited

MsgStreamTC instance (a std::cout like with print-out levels)

Definition at line 71 of file TrigConfMessaging.h.

◆ m_name

std::string TrigConf::TrigConfMessaging::m_name
privateinherited

Definition at line 72 of file TrigConfMessaging.h.

◆ m_session

coral::ISessionProxy& TrigConf::DBLoader::m_session
protectedinherited

CORAL interface to database session.

Definition at line 68 of file DBLoader.h.

◆ m_sessionOwner

bool TrigConf::DBLoader::m_sessionOwner {false}
protectedinherited

remember if the loader started the session in the first place

Definition at line 69 of file DBLoader.h.

69{false};

◆ m_storageMgr

StorageMgr& TrigConf::DBLoader::m_storageMgr
protectedinherited

reference to the storage manager

Definition at line 67 of file DBLoader.h.

◆ m_verbose

int TrigConf::DBLoader::m_verbose {1}
privateinherited

Definition at line 64 of file DBLoader.h.

64{1};

The documentation for this class was generated from the following files: