DD4hep - The AIDA detector description toolkit for high energy physics experiments
DD4hep  Rev:Unversioneddirectory
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AlignmentsPrinter.h
Go to the documentation of this file.
1 //==========================================================================
2 // AIDA Detector description implementation for LCD
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 DD4HEP_DDCORE_ALIGNMENTSPRINTER_H
14 #define DD4HEP_DDCORE_ALIGNMENTSPRINTER_H
15 
16 // Framework includes
18 
20 namespace DD4hep {
21 
23  namespace Alignments {
24 
26 
37  public:
39  std::string name;
41  std::string prefix;
42  protected:
44  int m_flag;
45 
46  public:
48  AlignmentsPrinter(const std::string& prefix="",int flags=0);
50  virtual ~AlignmentsPrinter() = default;
52  void setName(const std::string& value) { name = value; }
54  void setPrefix(const std::string& value) { prefix = value; }
56  virtual int operator()(Alignment cond);
58  virtual int operator()(Container container);
60  virtual int processElement(DetElement de);
61  };
62 
64  void printAlignment(const std::string& prefix, Alignment alignment);
65 
67  void printContainer(const std::string& prefix, Container container, UserPool* pool);
68 
70  void printElement(const std::string& prefix, DetElement element, UserPool* pool);
71 
73  void printElementPlacement(const std::string& prefix, DetElement detector, UserPool* pool);
74 
75  } /* End namespace Alignments */
76 } /* End namespace DD4hep */
77 #endif /* DD4HEP_DDCORE_ALIGNMENTSPRINTER_H */
void printContainer(const std::string &prefix, Container container, UserPool *pool)
Default printout of a container entry.
virtual ~AlignmentsPrinter()=default
Default destructor.
AlignmentsPrinter(const std::string &prefix="", int flags=0)
Initializing constructor.
void setPrefix(const std::string &value)
Set prefix for printouts.
std::string prefix
Printout prefix.
Geometry::DetElement DetElement
Make DetElement type local.
Main handle class to hold an alignment object.
Definition: Alignments.h:65
int m_flag
Printout processing and customization flag.
std::string name
Printer name. Want to know who is printing what.
Generic Alignments processor.
virtual int operator()(Alignment cond)
Callback to output alignments information.
Generic Alignments data dumper.
void setName(const std::string &value)
Set name for printouts.
void printElement(const std::string &prefix, DetElement element, UserPool *pool)
Default printout of a detector element entry.
void printAlignment(const std::string &prefix, Alignment alignment)
Default printout of an alignment entry.
Handle class describing a detector element.
Definition: Detector.h:172
Container class for alignment handles aggregated by a detector element.
Definition: Alignments.h:206
void printElementPlacement(const std::string &prefix, DetElement detector, UserPool *pool)
PrintElement placement with/without alignment applied.
virtual int processElement(DetElement de)
Callback to output alignments information of an entire DetElement.