ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TrigEvent
TrigCaloEventTPCnv
TrigCaloEventTPCnv
TrigRNNOutputContainerCnv_p1.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
/**********************************************************************************
6
* @Project: Trigger
7
* @Package: TrigCaloEventTPCnv
8
* @class : TrigRNNOutputContainerCnv_p1
9
*
10
* @brief transient persistent converter for TrigRNNOutputContainer
11
*
12
* @author Danilo Enoque Ferreira de Lima <dferreir@mail.cern.ch> - UFRJ
13
*
14
* $Id$
15
**********************************************************************************/
16
#ifndef TRIGEVENTTPCNV_TRIGRNNOUTPUTCONTAINER_CNV_P1_H
17
#define TRIGEVENTTPCNV_TRIGRNNOUTPUTCONTAINER_CNV_P1_H
18
19
#include "
AthenaPoolCnvSvc/T_AthenaPoolTPConverter.h
"
20
21
#include "
TrigCaloEvent/TrigRNNOutputContainer.h
"
22
#include "
TrigCaloEventTPCnv/TrigRNNOutputContainer_p1.h
"
23
#include "
TrigCaloEventTPCnv/TrigRNNOutputCnv_p1.h
"
24
25
class
TrigRNNOutputContainerCnv_p1
:
public
T_AthenaPoolTPPtrVectorCnv
<TrigRNNOutputContainer, TrigRNNOutputContainer_p1, ITPConverterFor<TrigRNNOutput> > {
26
27
public
:
28
29
TrigRNNOutputContainerCnv_p1
() { }
30
31
// This part is implemented in T_AthenaPoolTPConverter.h.
32
// It is here temporarily to override and allow some extra debugging
33
virtual
void
persToTrans
(
const
TrigRNNOutputContainer_p1
*persVect,
34
TrigRNNOutputContainer
*transVect,
35
MsgStream &log) {
36
log << MSG::DEBUG <<
"TrigRNNOutputContainerCnv::persToTrans"
<<
endmsg
;
37
if
(!persVect) {
38
log << MSG::WARNING <<
"TrigRNNOutputContainerCnv::persToTrans cannot convert NULL persVect"
<<
endmsg
;
39
return
;
40
}
41
if
(!transVect) {
42
log << MSG::WARNING <<
"TrigRNNOutputContainerCnv::persToTrans cannot convert to NULL transVect"
<<
endmsg
;
43
return
;
44
}
45
46
transVect->
clear
();
47
transVect->
reserve
(persVect->size());
48
49
// convert vector entries one by one
50
for
(TrigRNNOutputContainer_p1::const_iterator it = persVect->begin();
51
it != persVect->end(); ++it) {
52
TrigRNNOutput
*p =
createTransFromPStore
(&
m_elementCnv
, *it, log);
53
transVect->
push_back
(p);
54
if
(!p)
55
log << MSG::WARNING <<
"TrigRNNOutputContainerCnv::persToTrans failed for an element "
<<
endmsg
;
56
}
57
}
58
59
60
virtual
void
transToPers
(
const
TrigRNNOutputContainer
*transVect,
61
TrigRNNOutputContainer_p1
*persVect,
62
MsgStream &log) {
63
if
(!persVect) {
64
log << MSG::WARNING <<
"TrigRNNOutputContainerCnv::transToPers cannot convert NULL persVect"
<<
endmsg
;
65
return
;
66
}
67
if
(!transVect) {
68
log << MSG::WARNING <<
"TrigRNNOutputContainerCnv::transToPers cannot convert to NULL transVect"
<<
endmsg
;
69
return
;
70
}
71
72
persVect->clear();
73
persVect->reserve(transVect->
size
());
74
// convert vector entries one by one
75
for
(
TrigRNNOutputContainer::const_iterator
it = transVect->
begin
();
76
it != transVect->
end
(); ++it ) {
77
TPObjRef
a
=
toPersistent
(&
m_elementCnv
, *it, log);
78
persVect->push_back(
a
);
79
if
(
a
.isNull()) {
80
log << MSG::WARNING <<
"TrigRNNOutputContainerCnv::transToPers failed for an element "
<< *it <<
" "
81
<<
m_elementCnv
<<
endmsg
;
82
}
83
}
84
}
85
};
86
87
#endif
88
endmsg
#define endmsg
Definition
AnalysisConfig_Ntuple.cxx:54
a
static Double_t a
Definition
LArPhysWaveHECTool.cxx:38
T_AthenaPoolTPConverter.h
T_AthenaPoolTPPtrVectorCnv
TPPtrVectorCnv< TRANS, PERS, CONV > T_AthenaPoolTPPtrVectorCnv
Definition
T_AthenaPoolTPConverter.h:51
TrigRNNOutputCnv_p1.h
TrigRNNOutputContainer_p1.h
TrigRNNOutputContainer.h
DataVector< TrigRNNOutput >::const_iterator
DataModel_detail::const_iterator< DataVector > const_iterator
Definition
DataVector.h:838
DataVector::reserve
void reserve(size_type n)
Attempt to preallocate enough memory for a specified number of elements.
DataVector::push_back
value_type push_back(value_type pElem)
Add an element to the end of the collection.
DataVector::end
const_iterator end() const noexcept
Return a const_iterator pointing past the end of the collection.
DataVector::begin
const_iterator begin() const noexcept
Return a const_iterator pointing at the beginning of the collection.
DataVector::size
size_type size() const noexcept
Returns the number of elements in the collection.
DataVector::clear
void clear()
Erase all the elements in the collection.
TPPolyCnvBase< TRANS, TRANS, PERS >::createTransFromPStore
CNV::Trans_t * createTransFromPStore(CNV **cnv, const TPObjRef &ref, MsgStream &log) const
Definition
TPConverter.h:172
TPPolyCnvBase< TRANS, TRANS, PERS >::toPersistent
TPObjRef toPersistent(CNV **cnv, const typename CNV::TransBase_t *transObj, MsgStream &log) const
Definition
TPConverter.h:119
TPObjRef
This class is an object reference used in Athena persistent data model.
Definition
TPObjRef.h:20
TPPtrVectorCnv::m_elementCnv
CONV * m_elementCnv
pointer to the TP converter used for vector elements
Definition
TPConverter.h:963
TrigRNNOutputContainerCnv_p1::transToPers
virtual void transToPers(const TrigRNNOutputContainer *transVect, TrigRNNOutputContainer_p1 *persVect, MsgStream &log)
Definition
TrigRNNOutputContainerCnv_p1.h:60
TrigRNNOutputContainerCnv_p1::TrigRNNOutputContainerCnv_p1
TrigRNNOutputContainerCnv_p1()
Definition
TrigRNNOutputContainerCnv_p1.h:29
TrigRNNOutputContainerCnv_p1::persToTrans
virtual void persToTrans(const TrigRNNOutputContainer_p1 *persVect, TrigRNNOutputContainer *transVect, MsgStream &log)
Definition
TrigRNNOutputContainerCnv_p1.h:33
TrigRNNOutputContainer_p1
Definition
TrigRNNOutputContainer_p1.h:23
TrigRNNOutputContainer
Definition
Trigger/TrigEvent/TrigCaloEvent/TrigCaloEvent/TrigRNNOutputContainer.h:13
TrigRNNOutput
This class carries the output of the Neural Network of TrigMultiVarHypo.
Definition
Trigger/TrigEvent/TrigCaloEvent/TrigCaloEvent/TrigRNNOutput.h:21
Generated on
for ATLAS Offline Software by
1.17.0