| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

XmlBaseDetElemCnv.h

Go to the documentation of this file.
00001 
00002 
00003 #ifndef DETDESCCNV_XMLDETELEMCNV_H
00004 #define DETDESCCNV_XMLDETELEMCNV_H
00005 
00007 #include "DetDescCnv/XmlGenericCnv.h"
00008 #include "DetDesc/DetectorElement.h"
00009 
00010 #include "GaudiKernel/Converter.h"
00011 
00013 class     ISvcLocator;
00014 template <class TYPE> class CnvFactory;
00015 
00016 
00027 class XmlBaseDetElemCnv : public XmlGenericCnv {
00028 
00029 public:
00030   
00035   virtual StatusCode initialize();
00036   
00041   static const CLID& classID();
00042   
00043 protected:
00044   
00049   XmlBaseDetElemCnv(ISvcLocator* svcs);
00050 
00056   XmlBaseDetElemCnv(ISvcLocator* svc, const CLID& clsID );
00057 
00061   virtual ~XmlBaseDetElemCnv();
00062 
00066   virtual StatusCode fillObjRefs(IOpaqueAddress* pAddress, DataObject* pObject);
00067 
00074   virtual StatusCode i_createObj (xercesc::DOMElement* element,
00075                                   DataObject*& refpObject);
00076 
00084   virtual StatusCode i_fillObj (xercesc::DOMElement* childElement,
00085                                 DataObject* refpObject,
00086                                 IOpaqueAddress* address);
00087 
00098   virtual StatusCode i_fillSpecificObj (xercesc::DOMElement* childElement,
00099                                         DetectorElement* refpObject,
00100                                         IOpaqueAddress* address) = 0;
00101 
00102 
00103 private:
00104   
00106   bool m_doGenericCnv;
00107 
00108 private:
00109   // a silly method to init strings
00110   void initStrings();
00111 
00112   // Constant strings for element names
00113   const XMLCh* specificString;
00114   const XMLCh* detelemString;
00115   const XMLCh* detelemrefString;
00116   const XMLCh* versionString;
00117   const XMLCh* authorString;
00118   const XMLCh* geometryinfoString;
00119   const XMLCh* alignmentinfoString;
00120   const XMLCh* calibrationinfoString;
00121   const XMLCh* readoutinfoString;
00122   const XMLCh* slowcontrolinfoString;
00123   const XMLCh* fastcontrolinfoString;
00124   const XMLCh* paramString;
00125   const XMLCh* paramVectorString;
00126   const XMLCh* userParameterString;
00127   const XMLCh* userParameterVectorString;
00128   const XMLCh* conditioninfoString;
00129 
00130   // Constant Strings for parameter names
00131   const XMLCh* typeString;
00132   const XMLCh* nameString;
00133   const XMLCh* commentString;
00134   const XMLCh* hrefString;
00135   const XMLCh* lvnameString;
00136   const XMLCh* supportString;
00137   const XMLCh* rpathString;
00138   const XMLCh* npathString;
00139   const XMLCh* conditionString;
00140   
00141 };
00142 
00143 #endif // DETDESCCNV_XMLDETELEMCNV_H
00144 
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 20:00:54 2011 for DetDescCnv by doxygen 1.4.7