BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
RootTofSimDataCnv.h
Go to the documentation of this file.
1// $Header:
2// /bes/bes/BossCvs/Calibration/CalibSvc/CalibROOTCnv/src/cnv/RootTofSimDataCnv.h,v 1.1
3// 2010/01/14 02:54:26 huangb Exp $
4#ifndef RootTofSimDataCnv_h
5#define RootTofSimDataCnv_h
6
7/** @class RootMdcdelt0Cnv
8
9 Base class for CAL calibration converters from ROOT files to TCDS.
10 All such converters need to do certain things, which are
11 handled here. Methods common to *all* calibrations are in the
12 base class RootCalBaseCnv
13
14 @author J. Bogart
15*/
16
17#include "RootCalBaseCnv.h"
18template <class TYPE> class CnvFactory;
20
21 friend class CnvFactory<RootTofSimDataCnv>;
22
23public:
24 const CLID& objType() const;
25 static const CLID& classID();
26 RootTofSimDataCnv( ISvcLocator* svc );
27
28 virtual ~RootTofSimDataCnv(){};
29
30 virtual StatusCode createRoot( const std::string& fname, CalibData::CalibBase1* pTDSObj );
31
32 virtual long repSvcType() const { return CALIBROOT_StorageType; }
33
34 // virtual StatusCode finalize();
35
36 /**
37 Create the transient representation of an object, given an opaque
38 address. This and the following update method comprise the core
39 functionality of calibration converters.
40 */
41 // virtual StatusCode createObj(IOpaqueAddress* addr,
42 // DataObject*& refpObject);
43
44 // virtual StatusCode i_createObj (const DOM_Element& element,
45 // DataObject*& refpObject);
46
47 // virtual StatusCode i_processObj(DataObject* pObject,
48 //
49
50 /// Convenience routine used by most CAL calibration types, which
51 /// have a <dimension> element describing how the remainder of the
52 /// Data is laid out. Read from TDS; store information internally
53 /// in protected members.
54 // StatusCode readDimension(CalibData::CalCalibBase* pCalBase);
55
56 // Might need another one reading from Root class into protected members
57 /*
58 Not sure yet what the analogous thing to findFirstRange, findNextRange
59 ought to be..likely don't need it at all since ROOT persistent form
60 comes fully labeled with CalXtalId
61 */
62
63protected:
64 /**
65 Given a pointer to a TDS object which can be cast to "our" type, fill
66 in corresponding information in the corresponding root class
67
68 @param pTDSObj Pointer to tds object to be converted
69 @param pRootObj Pointer to destination root object
70
71 */
72 // virtual StatusCode fillRoot(CalibData::Mdct0* pTDSObj,
73 // TObject* pRootObj);
74
75 /**
76 Read in object from specified branch. Don't need tree name; it's
77 always Calib
78 */
79 // virtual StatusCode readRootObj(const std::string& branch, TObject*& pCalib);
80
81 virtual StatusCode i_createObj( const std::string& fname, DataObject*& refpObject );
82};
83
84#endif
RootCalBaseCnv(ISvcLocator *svc, const CLID &clid)
static const CLID & classID()
virtual long repSvcType() const
RootTofSimDataCnv(ISvcLocator *svc)
const CLID & objType() const
virtual StatusCode createRoot(const std::string &fname, CalibData::CalibBase1 *pTDSObj)
virtual StatusCode i_createObj(const std::string &fname, DataObject *&refpObject)