BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
RawDataEmcDigiCnv Class Reference

#include <RawDataEmcDigiCnv.hpp>

Inheritance diagram for RawDataEmcDigiCnv:

Public Member Functions

 RawDataEmcDigiCnv (ISvcLocator *svc)
 ~RawDataEmcDigiCnv ()
StatusCode initialize () override
StatusCode createObj (IOpaqueAddress *, DataObject *&pObj)
StatusCode createRep (DataObject *, IOpaqueAddress *&)
Public Member Functions inherited from RawDataBaseCnv
StatusCode initialize ()
long repSvcType () const
const long storageType ()
Public Member Functions inherited from Converter< Ty1, Ty2 >
destinationoperator (const source &) const
destinationoperator (const source &) const
destinationoperator (const source &) const

Static Public Member Functions

static const CLID & classID ()

Additional Inherited Members

Public Types inherited from Converter< Ty1, Ty2 >
typedef Ty1 source
typedef Ty2 destination
typedef Ty1 source
typedef Ty2 destination
typedef Ty1 source
typedef Ty2 destination
Protected Member Functions inherited from RawDataBaseCnv
 RawDataBaseCnv (long storageType, const CLID &clid, ISvcLocator *svc)
 RawDataBaseCnv (ISvcLocator *svc, const CLID &clid)
Protected Member Functions inherited from Converter< Ty1, Ty2 >
virtual destinationconvert (const source &) const =0
virtual destinationconvert (const source &) const =0
virtual destinationconvert (const source &) const =0
Protected Attributes inherited from RawDataBaseCnv
std::vector< IRawDataCnvSvc::Leafm_leaves
IRawDataCnvSvcm_cnvSvc
IRawDataInputSvcm_inputSvc

Detailed Description

Definition at line 13 of file RawDataEmcDigiCnv.hpp.

Constructor & Destructor Documentation

◆ RawDataEmcDigiCnv()

RawDataEmcDigiCnv::RawDataEmcDigiCnv ( ISvcLocator * svc)
inline

Definition at line 16 of file RawDataEmcDigiCnv.hpp.

16: RawDataBaseCnv( svc, classID() ){};
RawDataBaseCnv(long storageType, const CLID &clid, ISvcLocator *svc)
static const CLID & classID()

◆ ~RawDataEmcDigiCnv()

RawDataEmcDigiCnv::~RawDataEmcDigiCnv ( )
inline

Definition at line 18 of file RawDataEmcDigiCnv.hpp.

static void destroy()

Member Function Documentation

◆ classID()

const CLID & RawDataEmcDigiCnv::classID ( )
inlinestatic

Definition at line 36 of file RawDataEmcDigiCnv.hpp.

36{ return CLID_EmcDigiCol; }
const CLID & CLID_EmcDigiCol

Referenced by RawDataCnvSvc::addConverters(), RawDataCnvSvc::createConverter(), and RawDataEmcDigiCnv().

◆ createObj()

StatusCode RawDataEmcDigiCnv::createObj ( IOpaqueAddress * ,
DataObject *& pObj )
inline

Definition at line 39 of file RawDataEmcDigiCnv.hpp.

39 {
40 MsgStream log( msgSvc(), "RawDataEmcDigiCnv" );
41
42 // Purpose and Method: This converter will create an empty EmcDigiCol on
43 // the TDS.
44 EmcDigiCol* digiCol = new EmcDigiCol;
45 pObj = digiCol;
46
47 RAWEVENT* evt = m_inputSvc->currentEvent();
48 if ( !evt )
49 {
50 cout << "RawDataEmcDigiCnv::createObj can't get event!" << endl;
51 return StatusCode::FAILURE;
52 }
53
54 const BufferHolder& emcBuf = evt->getEmcBuf();
55
56 return m_cnv->convert( emcBuf, digiCol );
57 }
ObjectVector< EmcDigi > EmcDigiCol
IMessageSvc * msgSvc()
IRawDataInputSvc * m_inputSvc

◆ createRep()

StatusCode RawDataEmcDigiCnv::createRep ( DataObject * ,
IOpaqueAddress *&  )
inline

Definition at line 59 of file RawDataEmcDigiCnv.hpp.

59 {
60 // convert PixelRaw in the container into ByteStream
61 MsgStream log( msgSvc(), "RawDataEmcDigiCnv" );
62
63 WriteRawEvent*& re = m_cnvSvc->getRawEvent();
64 if ( re == 0 )
65 {
66 log << " get RawEvent failed !" << endmsg;
67 return StatusCode::FAILURE;
68 }
69
70 SmartDataPtr<EmcDigiCol> digiCol( dataProvider(), EventModel::Digi::EmcDigiCol );
71 if ( !digiCol )
72 {
73 log << "no EmcDigiCol found" << endmsg;
74 return StatusCode::FAILURE;
75 }
76
77 return m_cnv->convert( digiCol, re );
78 }
eformat::write::FullEventFragment WriteRawEvent
IRawDataCnvSvc * m_cnvSvc

◆ initialize()

StatusCode RawDataEmcDigiCnv::initialize ( )
inlineoverride

Definition at line 20 of file RawDataEmcDigiCnv.hpp.

20 {
21 MsgStream log( msgSvc(), "RawDataEmcDigiCnv" );
22
24 if ( sc.isFailure() )
25 {
26 log << MSG::ERROR << "Failed to initialize Converter" << endmsg;
27 return sc;
28 }
29
30 m_cnv = EmcConverter::instance();
31
32 return StatusCode::SUCCESS;
33 }
static EmcConverter * instance(int runMode=2)
StatusCode initialize()

The documentation for this class was generated from the following file: