DD4hep  1.30.0
Detector Description Toolkit for High Energy Physics
GlobalAlignmentWriter.h
Go to the documentation of this file.
1 //==========================================================================
2 // AIDA Detector description implementation
3 //--------------------------------------------------------------------------
4 // Copyright (C) Organisation europeenne pour la Recherche nucleaire (CERN)
5 // All rights reserved.
6 //
7 // For the licensing terms see $DD4hepINSTALL/LICENSE.
8 // For the list of contributors see $DD4hepINSTALL/doc/CREDITS.
9 //
10 // Author : M.Frank
11 //
12 //==========================================================================
13 #ifndef DDALIGN_GLOBALALIGNMENTWRITER_H
14 #define DDALIGN_GLOBALALIGNMENTWRITER_H
15 
16 // Framework include files
17 #include <XML/XMLElements.h>
18 #include <DD4hep/DetElement.h>
19 #include <DD4hep/GlobalAlignment.h>
20 
22 namespace dd4hep {
23 
25  namespace align {
26 
27  // Forward declarations
28  class GlobalAlignmentCache;
29 
31 
37  protected:
42 
44  void addNode(xml::Element elt, GlobalAlignment a) const;
45 
46  public:
48  GlobalAlignmentWriter(Detector& description);
50  virtual ~GlobalAlignmentWriter();
51 
53  xml::Document dump(DetElement element, bool enable_transactions=false) const;
55  xml::Element scan(xml::Document doc, DetElement element) const;
59  long write(xml::Document doc, const std::string& output) const;
60  };
61  } // End namespace xml
62 } // End namespace dd4hep
63 #endif // DDALIGN_GLOBALALIGNMENTWRITER_H
64 
GlobalAlignment.h
dd4hep::align::GlobalAlignment
Main handle class to hold a TGeo alignment object of type TGeoPhysicalNode.
Definition: GlobalAlignment.h:38
dd4hep::align::GlobalAlignmentWriter::m_cache
GlobalAlignmentCache * m_cache
Reference to the alignment cache.
Definition: GlobalAlignmentWriter.h:41
dd4hep::align::GlobalAlignmentWriter::write
long write(xml::Document doc, const std::string &output) const
Write the XML document structure to a file.
Definition: GlobalAlignmentWriter.cpp:135
dd4hep::align::GlobalAlignmentWriter
Write aligment data to XML data file.
Definition: GlobalAlignmentWriter.h:36
dd4hep::DetElement
Handle class describing a detector element.
Definition: DetElement.h:188
dd4hep::align::GlobalAlignmentWriter::dump
xml::Document dump(DetElement element, bool enable_transactions=false) const
Dump one full DetElement subtree into a newly created document.
Definition: GlobalAlignmentWriter.cpp:123
dd4hep::align::GlobalAlignmentWriter::m_detDesc
Detector & m_detDesc
Reference to detector description.
Definition: GlobalAlignmentWriter.h:39
dd4hep::xml::Document
Class supporting the basic functionality of an XML document.
Definition: XMLElements.h:697
dd4hep::align::GlobalAlignmentCache
Class caching all known alignment operations for one Detector instance.
Definition: GlobalAlignmentCache.h:41
DetElement.h
XMLElements.h
dd4hep::xml::Element
User abstraction class to manipulate XML elements within a document.
Definition: XMLElements.h:769
dd4hep
Namespace for the AIDA detector description toolkit.
Definition: AlignmentsCalib.h:28
dd4hep::align::GlobalAlignmentWriter::~GlobalAlignmentWriter
virtual ~GlobalAlignmentWriter()
Standard destructor.
Definition: GlobalAlignmentWriter.cpp:42
dd4hep::align::GlobalAlignmentWriter::GlobalAlignmentWriter
GlobalAlignmentWriter(Detector &description)
Initializing Constructor.
Definition: GlobalAlignmentWriter.cpp:35
dd4hep::Detector
The main interface to the dd4hep detector description package.
Definition: Detector.h:90
dd4hep::align::GlobalAlignmentWriter::scan
xml::Element scan(xml::Document doc, DetElement element) const
Scan one DetElement structure and return an XML element containing the alignment in this subtree.
Definition: GlobalAlignmentWriter.cpp:106
dd4hep::align::GlobalAlignmentWriter::createElement
xml::Element createElement(xml::Document doc, DetElement element) const
Create the element corresponding to one single detector element without children.
Definition: GlobalAlignmentWriter.cpp:47
dd4hep::align::GlobalAlignmentWriter::addNode
void addNode(xml::Element elt, GlobalAlignment a) const
Add single alignment node to the XML document.
Definition: GlobalAlignmentWriter.cpp:68