17 std::string shortPrint(
const SCT_RDO_Container* main_input_SCT,
unsigned maxprint=25) {
18 std::ostringstream
os;
20 for (
unsigned i=0;
i<maxprint;
i++) {
31 os<<
" [SCT_RDO_Container==nullptr]";
50 const SCT_ID* idhelper(
nullptr);
61 return StatusCode::SUCCESS;
68 ATH_MSG_DEBUG(
"createPersistent(): main converter. TRANS = "<<shortPrint(transCont));
74 unsigned int converter_num(1);
78 if (it_Coll != it_CollEnd) {
79 while (it_Coll != it_CollEnd && (*it_Coll)->size() == 0) ++it_Coll;
80 if (it_Coll != it_CollEnd) {
82 if (
dynamic_cast<const SCT1_RawData*
>(test) !=
nullptr) {
85 }
else if (
dynamic_cast<const SCT3_RawData*
>(test) !=
nullptr) {
89 ATH_MSG_FATAL(
"Converter not implemented for this concrete type ");
90 throw "Converter not implemented";
93 ATH_MSG_WARNING(
"Container has only empty collections. Using TP1 converter");
101 if (converter_num == 1 || converter_num == 3) {
116 static const pool::Guid p0_guid(
"B82A1D11-3F86-4F07-B380-B61BA2DAF3A9");
117 static const pool::Guid TP1_guid(
"DA76970C-E019-43D2-B2F9-25660DCECD9D");
118 static const pool::Guid SCT_TP1_guid(
"8E13963E-13E5-4D10-AA8B-73F00AFF8FA8");
119 static const pool::Guid SCT_TP2_guid(
"D1258125-2CBA-476E-8578-E09D54F477E1");
120 static const pool::Guid SCT_TP3_guid(
"5FBC8D4D-7B4D-433A-8487-0EA0C870CBDB");
121 static const pool::Guid SCT_TP4_guid(
"6C7540BE-E85C-4777-BC1C-A9FF11460F54");
128 ATH_MSG_DEBUG(
"createTransient(): New TP version - TP4 branch");
134 ATH_MSG_DEBUG(
"createTransient(), TP4 branch: returns TRANS = "<<shortPrint(
res));
141 ATH_MSG_DEBUG(
"createTransient(): New TP version - TP3 branch");
147 ATH_MSG_DEBUG(
"createTransient(), TP3 branch: returns TRANS = "<<shortPrint(
res));
154 ATH_MSG_DEBUG(
"createTransient(): New TP version - TP2 branch");
160 ATH_MSG_DEBUG(
"createTransient(), TP2 branch: returns TRANS = "<<shortPrint(
res));
167 ATH_MSG_DEBUG(
"createTransient(): New TP version - TP1 branch");
172 ATH_MSG_DEBUG(
"createTransient(), TP1 branch: returns TRANS = "<<shortPrint(
res));
179 ATH_MSG_DEBUG(
"createTransient(): New TP version - TP1 branch");
184 ATH_MSG_DEBUG(
"createTransient(), TP1 branch: returns TRANS = "<<shortPrint(
res));
192 ATH_MSG_DEBUG(
"createTransient(): Old input file - p0 branch");
197 ATH_MSG_DEBUG(
"createTransient(), p0 branch: returns TRANS = "<<shortPrint(
res));
202 throw std::runtime_error(
"Unsupported persistent version of SCT_RDO_Container");
#define ATH_CHECK
Evaluate an expression and check for errors.
#define ATH_MSG_WARNING(x)
std::pair< std::vector< unsigned int >, bool > res
This is an Identifier helper class for the SCT subdetector.
T_AthenaPoolCustomCnv< SCT_RDO_Container, SCT_RDO_Container_PERS > SCT_RDO_ContainerCnvBase
SCT_RawDataContainer_p4 SCT_RDO_Container_PERS
InDetRawDataContainer< InDetRawDataCollection< SCT_RDORawData > > SCT_RDO_Container
const ServiceHandle< StoreGateSvc > & detStore() const
const_iterator end() const
return const_iterator for end of container
virtual const T * indexFindPtr(IdentifierHash hashId) const override final
return pointer on the found entry or null if out of range using hashed index - fast version,...
const_iterator begin() const
return const_iterator for first entry
This is an Identifier helper class for the SCT subdetector.
virtual StatusCode initialize() override
Gaudi Service Interface method implementations:
SCT_RawDataContainerCnv_p1 m_converter_SCT_TP1
SCT_RDO_ContainerCnv_PERS m_converter_PERS
SCT_RDO_ContainerCnv(ISvcLocator *svcloc)
SCT1_RawDataContainerCnv_p1 m_converter_TP1
SCT_RawDataContainerCnv_p3 m_converter_SCT_TP3
SCT_RDO_ContainerCnv_p0 m_converter_p0
SCT_RawDataContainerCnv_p2 m_converter_SCT_TP2
SCT_RawDataContainerCnv_p4 m_converter_SCT_TP4
virtual SCT_RDO_Container_PERS * createPersistent(SCT_RDO_Container *transCont) override
virtual SCT_RDO_Container * createTransient() override
virtual bool compareClassGuid(const Guid &clid) const
virtual StatusCode initialize()