DD4hep  1.30.0
Detector Description Toolkit for High Energy Physics
NoSegmentation.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 //==========================================================================
11 
12 /*
13  * NoSegmentation.h
14  *
15  * Created on: Feb. 13 2017
16  * Author: Whitney Armstrong, ANL
17  */
18 
19 #ifndef DDSEGMENTATION_NOSEGMENTATION_H
20 #define DDSEGMENTATION_NOSEGMENTATION_H
21 
23 
24 namespace dd4hep {
25  namespace DDSegmentation {
26 
28  class NoSegmentation: public Segmentation {
29  public:
30 
31  virtual ~NoSegmentation();
32 
33  NoSegmentation(const std::string& cellEncoding = "");
35 
36  virtual Vector3D position(const CellID& cellID) const;
37  virtual CellID cellID(const Vector3D& localPosition, const Vector3D& globalPosition, const VolumeID& volumeID) const;
38 
39  };
40 
41 
42  } /* namespace DDSegmentation */
43 } /* namespace dd4hep */
44 #endif // DDSEGMENTATION_NOSEGMENTATION_H
dd4hep::DDSegmentation::VolumeID
uint64_t VolumeID
Definition: BitFieldCoder.h:27
dd4hep::DDSegmentation::Vector3D
Simple container for a physics vector.
Definition: Segmentation.h:48
dd4hep::DDSegmentation::BitFieldCoder
Helper class for decoding and encoding a bit field of 64bits for convenient declaration.
Definition: BitFieldCoder.h:114
dd4hep::DDSegmentation::NoSegmentation::NoSegmentation
NoSegmentation(const std::string &cellEncoding="")
Definition: NoSegmentation.cpp:23
dd4hep::DDSegmentation::NoSegmentation::cellID
virtual CellID cellID(const Vector3D &localPosition, const Vector3D &globalPosition, const VolumeID &volumeID) const
Determine the cell ID based on the position.
Definition: NoSegmentation.cpp:45
dd4hep::DDSegmentation::Segmentation::decoder
virtual const BitFieldCoder * decoder() const
Access the underlying decoder.
Definition: Segmentation.h:112
dd4hep::DDSegmentation::CellID
uint64_t CellID
Definition: BitFieldCoder.h:26
dd4hep::DDSegmentation::Segmentation::volumeID
virtual VolumeID volumeID(const CellID &cellID) const
Determine the volume ID from the full cell ID by removing all local fields.
Definition: Segmentation.cpp:66
dd4hep::DDSegmentation::NoSegmentation
This class exists to provide a segmenation when it is need but doesn't exist.
Definition: NoSegmentation.h:28
dd4hep::DDSegmentation::NoSegmentation::~NoSegmentation
virtual ~NoSegmentation()
Definition: NoSegmentation.cpp:36
dd4hep
Namespace for the AIDA detector description toolkit.
Definition: AlignmentsCalib.h:28
Segmentation.h
dd4hep::DDSegmentation::Segmentation
Base class for all segmentations.
Definition: Segmentation.h:75
dd4hep::DDSegmentation::NoSegmentation::position
virtual Vector3D position(const CellID &cellID) const
Determine the local position based on the cell ID.
Definition: NoSegmentation.cpp:39