#include <RecEventCnv.h>
Inheritance diagram for RecHeaderCnv:
Definition at line 20 of file RecEventCnv.h.
RecHeaderCnv::RecHeaderCnv | ( | ISvcLocator * | svc | ) |
Definition at line 8 of file RecEventCnv.cc.
00009 : RootIOTypedCnv<PerRecHeader,RecHeader>("PerRecHeader", 00010 classID(),svc) 00011 { 00012 }
RecHeaderCnv::~RecHeaderCnv | ( | ) | [virtual] |
static const CLID& RecHeaderCnv::classID | ( | ) | [inline, static] |
StatusCode RecHeaderCnv::PerToTran | ( | const PerRecHeader & | tobj, | |
DayaBay::RecHeader & | dobj | |||
) | [virtual] |
Copy data from TObject based class of type TType to DataObject based class of type DOType.
Implements RootIOTypedCnv< PerRecHeader, DayaBay::RecHeader >.
Definition at line 19 of file RecEventCnv.cc.
00021 { 00022 MsgStream log(msgSvc(), "RecHeaderCnv::PerToTran"); 00023 StatusCode sc = HeaderObjectCnv::toTran(perobj, tranobj); 00024 if(sc.isFailure()) return sc; 00025 00026 DayaBay::RecTrigger& recTr = tranobj.recTrigger(); 00027 recTr.setHeader(&tranobj); 00028 Detector det((Site::Site_t)perobj.site, 00029 (DetectorId::DetectorId_t)perobj.detector); 00030 recTr.setDetector(det); 00031 recTr.setTriggerType(Trigger::TriggerType_t (perobj.triggerType)); 00032 recTr.setTriggerNumber( perobj.triggerNumber ); 00033 00034 timespec value = {perobj.triggerTimeSec, perobj.triggerTimeNanoSec}; 00035 TimeStamp tstamp(value); 00036 recTr.setTriggerTime(tstamp); 00037 00038 recTr.setEnergy( perobj.energy ); 00039 recTr.setPosition( CLHEP::HepLorentzVector(perobj.x, perobj.y, 00040 perobj.z, perobj.t) ); 00041 recTr.setPosition( CLHEP::HepLorentzVector(perobj.dx, perobj.dy, 00042 perobj.dz, perobj.dt) ); 00043 recTr.setEnergyStatus( perobj.energyStatus ); 00044 recTr.setPositionStatus( perobj.positionStatus ); 00045 recTr.setDirectionStatus( perobj.directionStatus ); 00046 recTr.setEnergyQuality( perobj.energyQuality ); 00047 recTr.setPositionQuality( perobj.positionQuality ); 00048 recTr.setDirectionQuality( perobj.directionQuality ); 00049 if(perobj.errorMatrixDim>0){ 00050 CLHEP::HepMatrix errMatrix(perobj.errorMatrixDim, 00051 perobj.errorMatrixDim, 00052 0); 00053 for(int row=1; row<perobj.errorMatrixDim; row++){ 00054 for(int col=1; col<perobj.errorMatrixDim; col++){ 00055 int rcIndex = (row-1)*perobj.errorMatrixDim + (col-1); 00056 errMatrix(row,col) = perobj.errorMatrix[rcIndex]; 00057 } 00058 } 00059 recTr.setErrorMatrix( errMatrix ); 00060 }else{ 00061 recTr.setErrorMatrix( CLHEP::HepMatrix() ); 00062 } 00063 return StatusCode::SUCCESS; 00064 }
StatusCode RecHeaderCnv::TranToPer | ( | const DayaBay::RecHeader & | dobj, | |
PerRecHeader & | tobj | |||
) | [virtual] |
Copy data from DataObject based class of type DOType to TObject based class of type TType.
Implements RootIOTypedCnv< PerRecHeader, DayaBay::RecHeader >.
Definition at line 66 of file RecEventCnv.cc.
00068 { 00069 MsgStream log(msgSvc(), "RecHeaderCnv::TranToPer"); 00070 StatusCode sc = HeaderObjectCnv::toPer(tranobj,perobj); 00071 if (sc.isFailure()) return sc; 00072 const DayaBay::RecTrigger& recTr = tranobj.recTrigger(); 00073 00074 perobj.site = (recTr.detector()).site(); 00075 perobj.detector = (recTr.detector()).detectorId(); 00076 perobj.triggerType = recTr.triggerType(); 00077 perobj.triggerNumber = recTr.triggerNumber(); 00078 perobj.triggerTimeSec = recTr.triggerTime().GetSec(); 00079 perobj.triggerTimeNanoSec = recTr.triggerTime().GetNanoSec(); 00080 00081 perobj.energy = recTr.energy(); 00082 perobj.x = recTr.position().x(); 00083 perobj.y = recTr.position().y(); 00084 perobj.z = recTr.position().z(); 00085 perobj.t = recTr.position().t(); 00086 perobj.dx = recTr.position().x(); 00087 perobj.dy = recTr.position().y(); 00088 perobj.dz = recTr.position().z(); 00089 perobj.dt = recTr.position().t(); 00090 perobj.energyStatus = recTr.energyStatus(); 00091 perobj.positionStatus = recTr.positionStatus(); 00092 perobj.directionStatus = recTr.directionStatus(); 00093 perobj.energyQuality = recTr.energyQuality(); 00094 perobj.positionQuality = recTr.positionQuality(); 00095 perobj.directionQuality = recTr.directionQuality(); 00096 perobj.errorMatrixDim = recTr.errorMatrix().num_row(); 00097 perobj.errorMatrix.resize(perobj.errorMatrixDim*perobj.errorMatrixDim); 00098 if(perobj.errorMatrixDim>0){ 00099 for(int row=1; row<perobj.errorMatrixDim; row++){ 00100 for(int col=1; col<perobj.errorMatrixDim; col++){ 00101 int rcIndex = (row-1)*perobj.errorMatrixDim + (col-1); 00102 perobj.errorMatrix[rcIndex] = recTr.errorMatrix()(row,col); 00103 } 00104 } 00105 } 00106 00107 return StatusCode::SUCCESS; 00108 }
StatusCode RecHeaderCnv::fillRepRefs | ( | IOpaqueAddress * | addr, | |
DataObject * | dobj | |||
) | [virtual] |
Reimplemented from RootIOTypedCnv< PerRecHeader, DayaBay::RecHeader >.
Definition at line 110 of file RecEventCnv.cc.
00110 { 00111 00112 MsgStream log(msgSvc(), "RecHeaderCnv::fillRepRefs"); 00113 //MsgStream log(msgSvc(), "fillRepRefs"); 00114 RecHeader* rh = dynamic_cast<RecHeader*>(dobj); 00115 00116 log << MSG::DEBUG 00117 << "Saving links to " << rh->inputHeaders().size() 00118 << " input headers" << endreq; 00119 00120 StatusCode sc = HeaderObjectCnv::fillPer(m_rioSvc,*rh,*m_perOutObj); 00121 00122 if (sc.isFailure()) { 00123 log << MSG::ERROR << "Failed to fill HeaderObject part" << endreq; 00124 return sc; 00125 } 00126 00127 // ... fill RecHeader part... 00128 return sc; 00129 }
StatusCode RecHeaderCnv::fillObjRefs | ( | IOpaqueAddress * | addr, | |
DataObject * | dobj | |||
) | [virtual] |
Reimplemented from RootIOTypedCnv< PerRecHeader, DayaBay::RecHeader >.
Definition at line 131 of file RecEventCnv.cc.
00131 { 00132 //MsgStream log(msgSvc(), "RecHeaderCnv::fillObjRefs"); 00133 MsgStream log(msgSvc(), "fillObjRefs"); 00134 HeaderObject* hobj = dynamic_cast<HeaderObject*>(dobj); 00135 00136 StatusCode sc = HeaderObjectCnv::fillTran(m_rioSvc,*m_perInObj,*hobj); 00137 if (sc.isFailure()) { 00138 log << MSG::ERROR << "Failed to fill HeaderObject part" << endreq; 00139 return sc; 00140 } 00141 00142 log << MSG::DEBUG 00143 << "Restored links to " << hobj->inputHeaders().size() 00144 << " input headers" << endreq; 00145 00146 // ... fill RecHeader part... 00147 return sc; 00148 }
PerRecHeader & RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::getPerInputObject | ( | ) | [inherited] |
PerRecHeader & RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::getPerOutputObject | ( | ) | [inherited] |
const RootIOBaseObject * RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::getBaseInputObject | ( | ) | [virtual, inherited] |
Implements RootIOBaseCnv.
const RootIOBaseObject * RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::getBaseOutputObject | ( | ) | [virtual, inherited] |
Implements RootIOBaseCnv.
virtual StatusCode RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::TranObjectToPerObject | ( | DataObject & | dat, | |
const RootOutputAddress & | ||||
) | [virtual, inherited] |
Implements RootIOBaseCnv.
virtual StatusCode RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::PerObjectToTranObject | ( | DataObject *& | dat | ) | [virtual, inherited] |
Implements RootIOBaseCnv.
virtual RootInputStream * RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::makeInputStream | ( | const RootInputAddress & | ria | ) | [virtual, inherited] |
Implements RootIOBaseCnv.
virtual RootOutputStream * RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::makeOutputStream | ( | const RootOutputAddress & | ria | ) | [virtual, inherited] |
Implements RootIOBaseCnv.
virtual long RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::repSvcType | ( | ) | const [virtual, inherited] |
Reimplemented from RootIOBaseCnv.
virtual StatusCode RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::initialize | ( | ) | [virtual, inherited] |
Reimplemented from RootIOBaseCnv.
virtual StatusCode RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::finalize | ( | ) | [virtual, inherited] |
Reimplemented from RootIOBaseCnv.
virtual StatusCode RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::createObj | ( | IOpaqueAddress * | addr, | |
DataObject *& | dat | |||
) | [virtual, inherited] |
Reimplemented from RootIOBaseCnv.
virtual StatusCode RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::createRep | ( | DataObject * | pObject, | |
IOpaqueAddress *& | refpAddress | |||
) | [virtual, inherited] |
Reimplemented from RootIOBaseCnv.
int RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::commit | ( | const RootOutputAddress & | roa | ) | [inherited] |
Reimplemented from RootIOBaseCnv.
RootIOBaseCnv * RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::otherConverter | ( | int | clID | ) | [inherited] |
Reimplemented from RootIOBaseCnv.
virtual StatusCode RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::queryInterface | ( | const InterfaceID & | riid, | |
void ** | ppvInterface | |||
) | [virtual, inherited] |
Reimplemented from RootIOBaseCnv.
virtual unsigned long RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::addRef | ( | ) | [virtual, inherited] |
Reimplemented from RootIOBaseCnv.
virtual unsigned long RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::release | ( | ) | [virtual, inherited] |
Reimplemented from RootIOBaseCnv.
virtual StatusCode RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::setDataProvider | ( | IDataProviderSvc * | svc | ) | [virtual, inherited] |
Reimplemented from RootIOBaseCnv.
virtual IDataProviderSvc * RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::dataProvider | ( | ) | const [virtual, inherited] |
Reimplemented from RootIOBaseCnv.
virtual StatusCode RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::setConversionSvc | ( | IConversionSvc * | svc | ) | [virtual, inherited] |
Reimplemented from RootIOBaseCnv.
virtual IConversionSvc * RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::conversionSvc | ( | ) | const [virtual, inherited] |
Reimplemented from RootIOBaseCnv.
virtual StatusCode RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::setAddressCreator | ( | IAddressCreator * | creator | ) | [virtual, inherited] |
Reimplemented from RootIOBaseCnv.
virtual IAddressCreator * RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::addressCreator | ( | ) | const [virtual, inherited] |
Reimplemented from RootIOBaseCnv.
virtual const CLID & RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::objType | ( | ) | const [virtual, inherited] |
Reimplemented from RootIOBaseCnv.
virtual long RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::i_repSvcType | ( | ) | const [virtual, inherited] |
Reimplemented from RootIOBaseCnv.
virtual StatusCode RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::updateObj | ( | IOpaqueAddress * | pAddress, | |
DataObject * | refpObject | |||
) | [virtual, inherited] |
Reimplemented from RootIOBaseCnv.
virtual StatusCode RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::updateObjRefs | ( | IOpaqueAddress * | pAddress, | |
DataObject * | pObject | |||
) | [virtual, inherited] |
Reimplemented from RootIOBaseCnv.
virtual StatusCode RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::updateRep | ( | IOpaqueAddress * | pAddress, | |
DataObject * | pObject | |||
) | [virtual, inherited] |
Reimplemented from RootIOBaseCnv.
virtual StatusCode RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::updateRepRefs | ( | IOpaqueAddress * | pAddress, | |
DataObject * | pObject | |||
) | [virtual, inherited] |
Reimplemented from RootIOBaseCnv.
StatusCode RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::service | ( | const std::string & | name, | |
T *& | psvc, | |||
bool | createIf = false | |||
) | const [inherited] |
Reimplemented from RootIOBaseCnv.
StatusCode RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::service | ( | const std::string & | type, | |
const std::string & | name, | |||
T *& | psvc | |||
) | const [inherited] |
Reimplemented from RootIOBaseCnv.
static unsigned char RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::storageType | ( | ) | [static, inherited] |
Reimplemented from RootIOBaseCnv.
static const InterfaceID & RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::interfaceID | ( | ) | [static, inherited] |
Reimplemented from RootIOBaseCnv.
static const InterfaceID & RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::interfaceID | ( | ) | [static, inherited] |
Reimplemented from RootIOBaseCnv.
ISvcLocator * RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::serviceLocator | ( | ) | const [protected, inherited] |
Reimplemented from RootIOBaseCnv.
IMessageSvc * RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::msgSvc | ( | ) | const [protected, inherited] |
Reimplemented from RootIOBaseCnv.
IMessageSvc * RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::messageService | ( | ) | const [protected, inherited] |
Reimplemented from RootIOBaseCnv.
IDataManagerSvc * RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::dataManager | ( | ) | const [protected, inherited] |
Reimplemented from RootIOBaseCnv.
RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::INVALID_ADDRESS [inherited] |
Reimplemented from RootIOBaseCnv.
RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::INVALID_OBJECT [inherited] |
Reimplemented from RootIOBaseCnv.
RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::NO_MEMORY [inherited] |
Reimplemented from RootIOBaseCnv.
RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::BAD_STORAGE_TYPE [inherited] |
Reimplemented from RootIOBaseCnv.
RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::NO_SOURCE_OBJECT [inherited] |
Reimplemented from RootIOBaseCnv.
RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::ICONVERSIONSVC_LAST_ERROR [inherited] |
Reimplemented from RootIOBaseCnv.
std::string RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::m_perclassName [protected, inherited] |
PerRecHeader * RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::m_perInObj [protected, inherited] |
PerRecHeader * RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::m_perOutObj [protected, inherited] |
IRootIOSvc * RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::m_rioSvc [protected, inherited] |
Reimplemented from RootIOBaseCnv.
IConversionSvc * RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::m_cnvSvc [protected, inherited] |
Reimplemented from RootIOBaseCnv.
RootInputStream * RootIOTypedCnv< PerRecHeader , DayaBay::RecHeader >::m_ris [protected, inherited] |
Reimplemented from RootIOBaseCnv.