DD4hep  1.30.0
Detector Description Toolkit for High Energy Physics
MultiSegmentation.cpp
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 
14 // Framework include files
17 
18 using namespace dd4hep;
19 
21 const std::string& MultiSegmentation::discriminatorName() const {
22  return access()->implementation->discriminatorName();
23 }
24 
27  return access()->implementation->discriminator();
28 }
29 
33  return access()->implementation->subSegmentations();
34 }
35 
38  return Position(access()->implementation->position(id));
39 }
40 
43  const Position& global,
44  const VolumeID& volID) const
45 {
46  return access()->implementation->cellID(local, global, volID);
47 }
48 
58 std::vector<double> MultiSegmentation::cellDimensions(const CellID& id) const {
59  return access()->implementation->cellDimensions(id);
60 }
dd4hep::MultiSegmentation::cellDimensions
std::vector< double > cellDimensions(const CellID &cellID) const
Returns a vector<double> of the cellDimensions of the given cell ID in natural order of dimensions,...
Definition: MultiSegmentation.cpp:58
dd4hep::MultiSegmentation::subSegmentations
const Segmentations & subSegmentations() const
The underlying sub-segementations.
Definition: MultiSegmentation.cpp:32
MultiSegmentation.h
dd4hep::DDSegmentation::BitFieldElement
Helper class for BitFieldCoder that corresponds to one field value.
Definition: BitFieldCoder.h:32
dd4hep::MultiSegmentation::position
Position position(const CellID &cellID) const
determine the position based on the cell ID
Definition: MultiSegmentation.cpp:37
MultiSegmentation.h
dd4hep::MultiSegmentation::Segmentations
DDSegmentation::MultiSegmentation::Segmentations Segmentations
Definition: MultiSegmentation.h:54
dd4hep::MultiSegmentation::discriminator
const BitFieldElement * discriminator() const
Discriminating bitfield entry.
Definition: MultiSegmentation.cpp:26
dd4hep::MultiSegmentation::cellID
CellID cellID(const Position &local, const Position &global, const VolumeID &volID) const
determine the cell ID based on the position
Definition: MultiSegmentation.cpp:42
dd4hep::Position
ROOT::Math::XYZVector Position
Definition: Objects.h:81
VolumeID
dd4hep::DDSegmentation::VolumeID VolumeID
Definition: SegmentationDictionary.h:49
dd4hep::Handle::access
T * access() const
Checked object access. Throws invalid handle runtime exception if invalid handle.
dd4hep
Namespace for the AIDA detector description toolkit.
Definition: AlignmentsCalib.h:28
dd4hep::MultiSegmentation::discriminatorName
const std::string & discriminatorName() const
access the field name used to discriminate sub-segmentations
Definition: MultiSegmentation.cpp:21
CellID
dd4hep::DDSegmentation::CellID CellID
Definition: SegmentationDictionary.h:50