|
ATLAS Offline Software
|
Go to the documentation of this file.
17 std::string shortPrint(
const PixelRDO_Container *main_input_Pixel,
unsigned maxprint=25) {
18 std::ostringstream
os;
19 if(main_input_Pixel) {
20 for(
unsigned i=0;
i<maxprint;
i++) {
31 os<<
" [PixelRDO_Container==NULL]";
43 const PixelID* idhelper(
nullptr);
52 return StatusCode::SUCCESS;
57 ATH_MSG_DEBUG(
"createPersistent(): main converter. TRANS = "<<shortPrint(transCont));
63 unsigned int converter_num(1);
67 if(it_Coll != it_CollEnd) {
68 while (it_Coll != it_CollEnd && (*it_Coll) && (*it_Coll)->size() == 0 ) ++it_Coll;
69 if(it_Coll != it_CollEnd) {
72 ATH_MSG_DEBUG(
"Found container with Pixel1RawData concrete type objects");
75 ATH_MSG_FATAL(
"Converter not implemented for this concrete type ");
76 throw "Converter not implemented";
79 ATH_MSG_DEBUG(
"Container has only empty collections. Using TP1 converter");
87 if(converter_num == 1) {
99 static const pool::Guid p0_guid(
"7F2C09B6-0B47-4957-8BBA-EDC665A290AC");
100 static const pool::Guid TP1_guid(
"DA76970C-E019-43D2-B2F9-25660DCECD9D");
101 static const pool::Guid TP2_guid(
"7138342E-0A80-4A32-A387-2842A01C2539");
105 ATH_MSG_DEBUG(
"createTransient(): New TP version - TP2 branch");
107 std::unique_ptr< InDetRawDataContainer_p2 > col_vect( poolReadObject< InDetRawDataContainer_p2 >() );
110 ATH_MSG_DEBUG(
"createTransient(), TP2 branch: returns TRANS = "<<shortPrint(
res));
117 ATH_MSG_DEBUG(
"createTransient(): New TP version - TP1 branch");
119 std::unique_ptr< InDetRawDataContainer_p1 > col_vect( poolReadObject< InDetRawDataContainer_p1 >() );
122 ATH_MSG_DEBUG(
"createTransient(), TP1 branch: returns TRANS = "<<shortPrint(
res));
129 ATH_MSG_DEBUG(
"createTransient(): Old input file - p0 branch");
131 std::unique_ptr< PixelRDO_Container_p0 > col_vect( poolReadObject< PixelRDO_Container_p0 >() );
134 ATH_MSG_DEBUG(
"createTransient(), p0 branch: returns TRANS = "<<shortPrint(
res));
138 throw std::runtime_error(
"Unsupported persistent version of PixelRDO_Container");
def retrieve(aClass, aKey=None)
virtual StatusCode initialize() override
Gaudi Service Interface method implementations:
This is an Identifier helper class for the Pixel subdetector. This class is a factory for creating co...
PixelRDO_ContainerCnv_PERS m_converter_PERS
virtual PERS * createPersistent(const TRANS *transObj, MsgStream &log)
Create persistent representation of a transient object.
::StatusCode StatusCode
StatusCode definition for legacy code.
Pixel1RawDataContainerCnv_p1 m_converter_TP1
std::pair< std::vector< unsigned int >, bool > res
void initialize(const PixelID *idhelper)
const_iterator end() const
return const_iterator for end of container
const_iterator begin() const
return const_iterator for first entry
const ServiceHandle< StoreGateSvc > & detStore() const
Handle to DetectorStore.
MsgStream & msg() const
The standard message stream.
void initialize(const PixelID *idhelper)
virtual PixelRDO_Container * createTransient(const InDetRawDataContainer_p1 *persObj, MsgStream &log)
Pixel1RawDataContainerCnv_p2 m_converter_TP2
virtual PixelRDO_Container * createTransient() override
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,...
virtual PixelRDO_Container * createTransient(const InDetRawDataContainer_p2 *persObj, MsgStream &log)
virtual PixelRDO_Container * createTransient(const PixelRDO_Container_p0 *persObj, MsgStream &log)
void initialize(const PixelID *idhelper)
virtual PixelRDO_Container_PERS * createPersistent(PixelRDO_Container *transCont) override
virtual bool compareClassGuid(const Guid &clid) const
Compare POOL class GUID with the one of the object being read.
PixelRDO_ContainerCnv_p0 m_converter_p0
virtual StatusCode initialize()
Gaudi Service Interface method implementations: