ATLAS Offline Software
Loading...
Searching...
No Matches
AlignableTransformContainerCnv.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3*/
4
10
13
14
16 MsgStream log(msgSvc(), "AlignableTransformContainerCnv" );
18 AlignableTransform_PERS* persObj = cnv.createPersistent( transObj, log );
19 if (log.level()<=MSG::DEBUG) log << MSG::DEBUG << "AlignableTransformContainer write a new AlignableTransform_PERS " << endmsg;
20 return persObj;
21}
22
24 MsgStream log(msgSvc(), "AlignableTransformContainerCnv" );
25 static const pool::Guid p1_guid("BA1A841C-8D92-45AE-9AD1-9AF7A1736844");
26 static const pool::Guid p0_guid("E779C6B5-3F2A-473E-B35E-6CCB345E0665");
27 if( compareClassGuid(p1_guid) ) {
28 // using unique_ptr ensures deletion of the persistent object
29 if (log.level()<=MSG::DEBUG) log << MSG::DEBUG << "AlignableTransformContainer read p1" << endmsg;
30 std::unique_ptr< AlignableTransform_p1 > col_vect( poolReadObject< AlignableTransform_p1 >() );
32 return cnv.createTransient( col_vect.get(), log );
33 }
34 else if( compareClassGuid(p0_guid) ) {
35 // regular object from before TP separation, just return it
36 if (log.level()<=MSG::DEBUG) log << MSG::DEBUG << "AlignableTransformContainer read p0" << endmsg;
38 }
39 throw std::runtime_error("Unsupported persistent version of AlignableTransformContainer");
40}
41
42
47
Generated header file which defines a typedef for templated converter class.
AlignableTransformContainer::base_value_type AlignableTransform_TRANS
AlignableTransform_p1 AlignableTransform_PERS
#define endmsg
virtual StatusCode initialize()
Gaudi Service Interface method implementations:
virtual AlignableTransform_PERS * createPersistent(AlignableTransform_TRANS *transObj)
method to be implemented by the developer.
virtual AlignableTransform_TRANS * createTransient()
method to be implemented by the developer.
virtual PERS * createPersistent(const TRANS *transObj, MsgStream &log)
Create persistent representation of a transient object.
virtual TRANS * createTransient(const PERS *persObj, MsgStream &log)
Create transient representation of a persistent object.