Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

RawDataHltCnv Class Reference

#include <RawDataHltCnv.h>

Inheritance diagram for RawDataHltCnv:

RawDataBaseCnv RawDataBaseCnv Converter< Ty1, Ty2 > Converter< Ty1, Ty2 > Converter< Ty1, Ty2 > Converter< Ty1, Ty2 > List of all members.

Public Types

typedef Ty2 destination
typedef Ty2 destination
typedef Ty1 source
typedef Ty1 source

Public Member Functions

StatusCode createObj (IOpaqueAddress *pAddr, DataObject *&pObj)
StatusCode createObj (IOpaqueAddress *pAddr, DataObject *&pObj)
virtual StatusCode createRep (DataObject *pObj, IOpaqueAddress *&pAddr)
 Convert the transient object to the requested representation.
virtual StatusCode createRep (DataObject *pObj, IOpaqueAddress *&pAddr)
 Convert the transient object to the requested representation.
void declareObject (const std::string &fullPath, const CLID &clid, const std::string &bank, long par=0)
 Store TDS path to link a particular converter to an object on the TDS.
void declareObject (const std::string &fullPath, const CLID &clid, const std::string &bank, long par=0)
 Store TDS path to link a particular converter to an object on the TDS.
virtual StatusCode fillRepRefs (IOpaqueAddress *pAddress, DataObject *pObject)
 Resolve the references of the converted object.
virtual StatusCode fillRepRefs (IOpaqueAddress *pAddress, DataObject *pObject)
 Resolve the references of the converted object.
virtual StatusCode finalize ()
virtual StatusCode finalize ()
StatusCode initialize ()
StatusCode initialize ()
destinationoperator (const source &) const
destinationoperator (const source &) const
virtual long repSvcType () const
virtual long repSvcType () const
virtual StatusCode updateObj (IOpaqueAddress *, DataObject *)
 override the RawDataBaseCnv version
virtual StatusCode updateObj (IOpaqueAddress *, DataObject *)
 override the RawDataBaseCnv version
virtual StatusCode updateRep (IOpaqueAddress *pAddress, DataObject *pObject)
 Update the converted representation of a transient object.
virtual StatusCode updateRep (IOpaqueAddress *pAddress, DataObject *pObject)
 Update the converted representation of a transient object.
virtual StatusCode updateRepRefs (IOpaqueAddress *pAddress, DataObject *pObject)
 Update the references of an already converted object.
virtual StatusCode updateRepRefs (IOpaqueAddress *pAddress, DataObject *pObject)
 Update the references of an already converted object.

Static Public Member Functions

const CLID & classID ()
const CLID & classID ()
const unsigned char storageType ()
const unsigned char storageType ()

Protected Member Functions

virtual destinationconvert (const source &) const =0
virtual destinationconvert (const source &) const =0
 RawDataHltCnv (ISvcLocator *svc)
 RawDataHltCnv (ISvcLocator *svc)

Protected Attributes

IRawDataCnvSvcm_CnvSvc
 Pointer to event conversion service interface.
IRawDataCnvSvcm_CnvSvc
 Pointer to event conversion service interface.
std::vector< IRawDataCnvSvc::Leafm_leaves
 Leaf objects giving the locations of the objects in the data store.
std::vector< IRawDataCnvSvc::Leafm_leaves
 Leaf objects giving the locations of the objects in the data store.

Private Attributes

IRawDataInputSvcm_inputSvc
IRawDataInputSvcm_inputSvc
IRawDataCnvSvcm_RawDataAccess
 Define the interface to raw data cnv.
IRawDataCnvSvcm_RawDataAccess
 Define the interface to raw data cnv.

Friends

class CnvFactory<RawDataHltCnv>

Member Typedef Documentation

template<class Ty1, class Ty2>
typedef Ty2 Converter< Ty1, Ty2 >::destination [inherited]
 

template<class Ty1, class Ty2>
typedef Ty2 Converter< Ty1, Ty2 >::destination [inherited]
 

template<class Ty1, class Ty2>
typedef Ty1 Converter< Ty1, Ty2 >::source [inherited]
 

template<class Ty1, class Ty2>
typedef Ty1 Converter< Ty1, Ty2 >::source [inherited]
 


Constructor & Destructor Documentation

RawDataHltCnv::RawDataHltCnv ISvcLocator *  svc  )  [protected]
 

00028                                              : 
00029 RawDataBaseCnv(PACKEDRAWEVENT_StorageType, classID(), svc) 
00030 {
00031     //init();
00032 }

RawDataHltCnv::RawDataHltCnv ISvcLocator *  svc  )  [protected]
 


Member Function Documentation

const CLID& RawDataHltCnv::classID  )  [static]
 

Reimplemented from RawDataBaseCnv.

const CLID & RawDataHltCnv::classID  )  [static]
 

Reimplemented from RawDataBaseCnv.

00037 {
00038   return CLID_HltEvent;
00039 }

template<class Ty1, class Ty2>
virtual destination* Converter< Ty1, Ty2 >::convert const source  )  const [protected, pure virtual, inherited]
 

template<class Ty1, class Ty2>
virtual destination* Converter< Ty1, Ty2 >::convert const source  )  const [protected, pure virtual, inherited]
 

StatusCode RawDataHltCnv::createObj IOpaqueAddress *  pAddr,
DataObject *&  pObj
 

StatusCode RawDataHltCnv::createObj IOpaqueAddress *  pAddr,
DataObject *&  pObj
 

00104 {
00105    //MsgStream log(msgSvc(), "RawDataHltCnv");
00106    //RawDataAddress *pEFAddr;
00107    
00108    // Purpose and Method:  This converter will create an empty EventHeader on
00109    //   the TDS.
00110    HltEvent *digi = new HltEvent();
00111    // Set fromMc to false
00112    digi->initialize(false);
00113    pObj = digi;
00114    return StatusCode::SUCCESS;
00115 
00116 }

virtual StatusCode RawDataHltCnv::createRep DataObject *  pObj,
IOpaqueAddress *&  pAddr
[virtual]
 

Convert the transient object to the requested representation.

Reimplemented from RawDataBaseCnv.

StatusCode RawDataHltCnv::createRep DataObject *  pObj,
IOpaqueAddress *&  pAddr
[virtual]
 

Convert the transient object to the requested representation.

Reimplemented from RawDataBaseCnv.

00119 {
00120     // convert Raws in the container into ByteStream
00121     StatusCode sc = StatusCode::SUCCESS ; 
00122     //MsgStream log(messageService(), "RawDataHltCnv");
00123  
00124     //WriteRawEvent* re = static_cast<WriteRawEvent*>(m_RawDataAccess->getRawEvent()); 
00125  
00126  
00127     std::string nm = pObj->registry()->name(); 
00128  
00129     RawDataAddress* addr = new RawDataAddress(classID(), nm, ""); 
00130  
00131     pAddr = addr; 
00132  
00133     return StatusCode::SUCCESS; 
00134  
00135 }

void RawDataBaseCnv::declareObject const std::string &  fullPath,
const CLID &  clid,
const std::string &  bank,
long  par = 0
[inherited]
 

Store TDS path to link a particular converter to an object on the TDS.

void RawDataBaseCnv::declareObject const std::string &  fullPath,
const CLID &  clid,
const std::string &  bank,
long  par = 0
[inherited]
 

Store TDS path to link a particular converter to an object on the TDS.

00082                                                                       {
00083     // Purpose and Method:  Save the path on the TDS, in the m_leaves vector, 
00084     //   corresponding to the DataObject that the converter handles.
00085     // m_leaves.push_back(IRawDataCnvSvc::Leaf(path, cl, bank, par));
00086 }

virtual StatusCode RawDataBaseCnv::fillRepRefs IOpaqueAddress *  pAddress,
DataObject *  pObject
[virtual, inherited]
 

Resolve the references of the converted object.

StatusCode RawDataBaseCnv::fillRepRefs IOpaqueAddress *  pAddress,
DataObject *  pObject
[virtual, inherited]
 

Resolve the references of the converted object.

00030                                                  {
00031     // Purpose and Method:  Resolve the references of the converted object.
00032     //     It is expected that derived classes will override this method.
00033     return StatusCode::SUCCESS;
00034 }

virtual StatusCode RawDataBaseCnv::finalize  )  [virtual, inherited]
 

StatusCode RawDataBaseCnv::finalize  )  [virtual, inherited]
 

00073                                       {
00074     if ( m_CnvSvc )     {
00075         m_CnvSvc->release();
00076         m_CnvSvc = 0;
00077     }
00078     return Converter::finalize();
00079 }

StatusCode RawDataHltCnv::initialize  ) 
 

Reimplemented from RawDataBaseCnv.

StatusCode RawDataHltCnv::initialize  ) 
 

Reimplemented from RawDataBaseCnv.

00042 {
00043     std::string PackedRawDataCnvSvc_Name("PackedRawDataCnvSvc");
00044     std::string RawDataInputSvc_Name("RawDataInputSvc");
00045     std::string RawDataHltCnv_Name("RawDataHltCnv");
00046     
00047     // for Mutil-thread by tianhl
00048     ConversionSvc*  pCnvSvc = 0;
00049     if (pCnvSvc = dynamic_cast<ConversionSvc*>(conversionSvc())){
00050       if  (isGaudiThreaded(pCnvSvc->name())){
00051         PackedRawDataCnvSvc_Name += getGaudiThreadIDfromName(pCnvSvc->name());
00052         RawDataInputSvc_Name += getGaudiThreadIDfromName(pCnvSvc->name());
00053         RawDataHltCnv_Name += getGaudiThreadIDfromName(pCnvSvc->name());
00054       }
00055     }
00056     StatusCode sc = RawDataBaseCnv::initialize();
00057     if(StatusCode::SUCCESS!=sc)
00058     {
00059        return sc;
00060     }
00061 
00062     MsgStream log(messageService(), RawDataHltCnv_Name.c_str());
00063 
00064     IService* svc = 0;
00065     sc = serviceLocator()->service(PackedRawDataCnvSvc_Name.c_str(), svc);
00066     if (sc != StatusCode::SUCCESS) {
00067         log << MSG::ERROR << "Can't get RawDataAccess interface" << endreq;
00068         return StatusCode::FAILURE;
00069     }
00070 
00071     m_RawDataAccess = dynamic_cast<PackedRawDataCnvSvc*> (svc);
00072     if (m_RawDataAccess  == 0 ) {
00073       log << MSG::ERROR << "RawDataCnv: Cant cast to RawDataCnvSvc" << endreq;
00074       return StatusCode::FAILURE;
00075     }
00076 
00077     sc = serviceLocator()->getService(RawDataInputSvc_Name.c_str(), svc);
00078     if(sc != StatusCode::SUCCESS ) {
00079         log << MSG::WARNING << "Cant get RawDataInputSvc " << endreq;
00080         return sc ;
00081     }
00082  
00083     m_inputSvc = dynamic_cast<RawDataInputSvc*> (svc);
00084     if(m_inputSvc == 0 ) {
00085         log << MSG::ERROR << "Cant cast to RawDataInputSvc" << endreq;
00086         return StatusCode::FAILURE ;
00087     }
00088 
00089     return StatusCode::SUCCESS;
00090 }

template<class Ty1, class Ty2>
destination* Converter< Ty1, Ty2 >::operator const source  )  const [inline, inherited]
 

template<class Ty1, class Ty2>
destination* Converter< Ty1, Ty2 >::operator const source  )  const [inline, inherited]
 

virtual long RawDataHltCnv::repSvcType  )  const [inline, virtual]
 

Reimplemented from RawDataBaseCnv.

00045                                    {
00046        return PACKEDRAWEVENT_StorageType;
00047    }

virtual long RawDataHltCnv::repSvcType  )  const [inline, virtual]
 

Reimplemented from RawDataBaseCnv.

00045                                    {
00046        return PACKEDRAWEVENT_StorageType;
00047    }

const unsigned char RawDataHltCnv::storageType  )  [inline, static]
 

Reimplemented from RawDataBaseCnv.

00049                                             {
00050        return PACKEDRAWEVENT_StorageType;
00051    }

const unsigned char RawDataHltCnv::storageType  )  [inline, static]
 

Reimplemented from RawDataBaseCnv.

00049                                             {
00050        return PACKEDRAWEVENT_StorageType;
00051    }

virtual StatusCode RawDataHltCnv::updateObj IOpaqueAddress *  ,
DataObject * 
[virtual]
 

override the RawDataBaseCnv version

StatusCode RawDataHltCnv::updateObj IOpaqueAddress *  ,
DataObject * 
[virtual]
 

override the RawDataBaseCnv version

00093                                                                            {
00094     // Purpose and Method:  This method does nothing other than announce it has
00095     //   been called.
00096 
00097     //MsgStream log(msgSvc(), "RawDataHltCnv");
00098     //log << MSG::DEBUG << "RawDataHltCnv::updateObj" << endreq;
00099     return Converter::updateObj(pAddr, pObj);
00100 }

virtual StatusCode RawDataBaseCnv::updateRep IOpaqueAddress *  pAddress,
DataObject *  pObject
[virtual, inherited]
 

Update the converted representation of a transient object.

StatusCode RawDataBaseCnv::updateRep IOpaqueAddress *  pAddress,
DataObject *  pObject
[virtual, inherited]
 

Update the converted representation of a transient object.

00037                                               {
00038     // Purpose and Method:  Update the converted representation of a transient 
00039     //     object.  It is expected that derived classes will override this.
00040     return StatusCode::SUCCESS;
00041 }

virtual StatusCode RawDataBaseCnv::updateRepRefs IOpaqueAddress *  pAddress,
DataObject *  pObject
[virtual, inherited]
 

Update the references of an already converted object.

StatusCode RawDataBaseCnv::updateRepRefs IOpaqueAddress *  pAddress,
DataObject *  pObject
[virtual, inherited]
 

Update the references of an already converted object.

00044                                                 {
00045     // Purpose and Method:  Update the references of an already converted object.
00046     //   It is expected that derived classes will override this method.
00047     return StatusCode::SUCCESS;
00048 }


Friends And Related Function Documentation

CnvFactory<RawDataHltCnv> [friend]
 


Member Data Documentation

IRawDataCnvSvc* RawDataBaseCnv::m_CnvSvc [protected, inherited]
 

Pointer to event conversion service interface.

IRawDataCnvSvc* RawDataBaseCnv::m_CnvSvc [protected, inherited]
 

Pointer to event conversion service interface.

IRawDataInputSvc* RawDataHltCnv::m_inputSvc [private]
 

IRawDataInputSvc* RawDataHltCnv::m_inputSvc [private]
 

std::vector<IRawDataCnvSvc::Leaf> RawDataBaseCnv::m_leaves [protected, inherited]
 

Leaf objects giving the locations of the objects in the data store.

std::vector<IRawDataCnvSvc::Leaf> RawDataBaseCnv::m_leaves [protected, inherited]
 

Leaf objects giving the locations of the objects in the data store.

IRawDataCnvSvc* RawDataHltCnv::m_RawDataAccess [private]
 

Define the interface to raw data cnv.

IRawDataCnvSvc* RawDataHltCnv::m_RawDataAccess [private]
 

Define the interface to raw data cnv.


The documentation for this class was generated from the following files:
Generated on Wed Feb 2 16:42:25 2011 for BOSS6.5.5 by  doxygen 1.3.9.1