load_geo.cxx File Reference
#include "DD4hep/Detector.h"
#include "DDG4/Geant4Data.h"
#include "DDRec/CellIDPositionConverter.h"
#include "DDRec/SurfaceManager.h"
#include "DDRec/Surface.h"
#include "ROOT/RDataFrame.hxx"
#include "TCanvas.h"
#include "TChain.h"
Include dependency graph for load_geo.cxx:
Go to the source code of this file.
Functions | |
void | load_geo (const char *fname="test_tracker_disc.root") |
Cell size example. More... | |
Function Documentation
◆ load_geo()
void load_geo | ( | const char * | fname = "test_tracker_disc.root" | ) |
Cell size example.
Makes use of ROOT's TDataframe (https://root.cern.ch/doc/master/classROOT_1_1Experimental_1_1TDataFrame.html)
There are two different ways to produce hits associated with 3d positions in DD4hep:
- With the "segmentation" which is a logical construction that divides the volume into pieces. A segmentation hit associates a (unique) cellID to identify the position of the senstive element.
- With the "surfaces" which produce hits associated with the actual volume's volumeID. A surface hit recordes the volumeID and other information for each hit.
It is important to remember that these two identifiers (CellID and VolumeID) are different and mixing between them will cause problems. However, the VolumeID can be obtained from the CellID but not the other way around around. In this way they can work together to provide geometry related hit information.
This example shows how to get both kinds of hit positions.
Definition at line 65 of file load_geo.cxx.