HerdSoftware  0.1.1
Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
Herd Namespace Reference

CssGeoParams.h CssGeoParams class declaration. More...

Namespaces

 _Private
 
 FitDigitizationTools
 
 HerdDataModelVersion
 
 RefFrame
 
 SiliconDetectorDigitizationTools
 

Classes

class  ArrayForwarder
 A forwarder class for std::array. More...
 
class  AxesArray
 An array that accepts axis as subscripts. More...
 
class  CaloAcceptanceCut
 An algorithm that reject events out of Calo acceptance. More...
 
struct  CaloAxis
 Container of information about the Calorimeter Shower Axis. More...
 
class  CaloDBSCANClustering
 Algorithm that clusters calorimeter hits into showers. More...
 
class  CaloGeoParams
 Data structure for the Calo geometry parameters. More...
 
class  CaloPDCalibrationAlgo
 Algorithm which converts calo PD hit from ADC to GeV. More...
 
class  CaloPDChannelInfo
 Data structure for the Calo PD readout information. More...
 
class  CaloPDChannelInfoAlgo
 Base algorithm which creates the information needed for the Calo PD read-out digitization. More...
 
class  CaloPDDigitizerAlgo
 Algorithm for digitizers of the Monte Carlo hits of Calo based on a preliminary Pd readout. More...
 
class  CaloPDEventChannelInfo
 Data structure for information regarding a channel connected to a Calo photodiode. More...
 
class  CaloPDZeroSuppressionAlgo
 Algorithm which remove Calo PD hit with small energy deposit. More...
 
class  CaloPMTTriggerComparatorAlgo
 An algorithm that compares variables from CaloPMT trigger inputs and fills flags needed for the offline trigger. More...
 
class  CaloPMTTriggerComputerAlgo
 An algorithm that computes relevant information about CaloPMT needed for the offline trigger. More...
 
class  CaloPMTTriggerFlags
 Data structure with the trigger flags for CaloPMT. More...
 
class  CaloPMTTriggerGeoInfo
 Data structure for the CaloPMT trigger geometric info (trigger regions). More...
 
class  CaloPMTTriggerInputs
 Data structure with the trigger inputs for CaloPMT. More...
 
class  CaloPMTTriggerRegionArray
 An array that accepts CaloPMT trigger regions as subscripts.The elements in CaloPMTTriggerRegionArray can be indexed using values in CaloPMTTriggerGeoInfo.h. More...
 
class  CaloTrackInfoAlgo
 An algorithm which computes information about the track inside the Calo. More...
 
class  Cluster
 Tracker cluster object for transient data model. More...
 
class  CooArray
 An array that accepts coordinates as subscripts. More...
 
class  CssGeoParams
 Geometry parameters of the Chinese Space station. More...
 
class  DataReader
 Base class for DataReaders. More...
 
class  DirectionsArray
 An array that accepts directions as subscripts. More...
 
class  Exception
 
struct  FileHeader
 
class  FitChannelInfo
 
class  FitClusteringAlgo
 Algorithm that clusters the Monte Carlo FIT detector hits. algorithms/clustering/FitClusteringAlgo.h. More...
 
class  FitClustersColl
 Collection of containers for the clusters of all the FIT detectors. More...
 
class  FitDigitizerAlgo
 Algorithm that digitizes the Monte Carlo FIT hits simulating the response of the SIPM reading. More...
 
class  FitGeoParams
 Data structure for single silicon layer geometry parameters. More...
 
class  GGSDataProvider
 Data provider for Geant4 Monte Carlo data. More...
 
class  GGSSimReader
 Base class for GGSSimReaders. More...
 
class  HerdRootDataProvider
 Data provider for HERD Root files based on current EventAnalysis Root data format. More...
 
class  HerdRootDataProviderT
 Data provider service adding HERD-specific behavior to RootDataProvider. More...
 
class  HerdRootDataProviderV0
 Data provider for HERD Root files based on legacy EventAnalysis Root V0 data format. More...
 
class  HerdRootPersistenceService
 Persistence service adding HERD-specific behavior to RootPersistenceService. More...
 
class  HERDward
 Displays tracks from HoughFinder algorithms. More...
 
class  HFCluster
 
class  HighEnergyTriggerCut
 An algorithm that reads the trigger flags for CaloPMT and applies the trigger logic for HE trigger. More...
 
class  Hit
 Hit object for transient data model. More...
 
class  HoughFinder2DAlgo
 Finds tracks from a collection of 2D hits. More...
 
class  HoughTrackStub
 
class  HWBaseEventDisplay
 
class  HWCaloEventDisplay
 
class  HWHoughTrackEventDisplay
 
class  HWMainWindow
 
class  HWMCTruthDisplay
 
class  HWProjections
 
class  HWPSDEventDisplay
 
class  HWTrackingDetectorEventDisplay
 
class  Line
 Class describing a line in the 3D space. More...
 
class  Line2D
 Class describing a line in the 2D space. More...
 
class  LowEnergyGammaTriggerCut
 An algorithm that reads the trigger flags for CaloPMT and Psd, and applies the trigger logic for LEG trigger. More...
 
struct  MCAccOption
 Class which contains the options for CaloAcceptnaceCut. More...
 
class  MCGenerationInfo
 Information about particle generation in MC simulation. More...
 
class  MCInteraction
 Description of a Monte Carlo Interaction. More...
 
class  MCParticle
 Description of a Monte Carlo particle. More...
 
class  MCPrimaryParticle
 Description of a Monte Carlo primary particle. More...
 
class  MCTruth
 Data structure for the Monte Carlo truth of each event. More...
 
class  Parallelogram
 A parallelogram in 3D space. More...
 
class  ParametricGeoReader
 Base class for ParametricGeoReaders. More...
 
class  ParticleHit
 Class to describe the energy deposit of a single particle. More...
 
class  PcaCaloAxisTrackingAlgo
 Algorithm for Calorimeter Shower Axis reconstruction based on Principal Component Analysis (PCA) method. More...
 
class  PhysPoint
 A class describing a physical point in the 3D space. More...
 
class  Plane
 Class describing a Plane in the 3D space. More...
 
class  PolarAngleCut
 An algorithm that rejects events with the polar angle greather than a threshold. More...
 
class  PsdGeometricDigitizerAlgo
 Algorithm that groups the Monte Carlo PSD hits based on a purely geometric criterion. More...
 
class  PsdGeoParams
 Data structure for PSD geometry parameters. More...
 
struct  PSDGeoParamsBarSideHelpValues
 
struct  PSDGeoParamsBarTopHelpValues
 
struct  PSDGeoParamsTileSideHelpValues
 
struct  PSDGeoParamsTileTopHelpValues
 
class  PsdTriggerComparatorAlgo
 An algorithm that compares variables from Psd trigger inputs and fills flags needed for the offline trigger. More...
 
class  PsdTriggerComputerAlgo
 An algorithm that computes relevant information about PSD needed for the offline trigger. More...
 
class  PsdTriggerFlags
 Data structure with the trigger flags for Psd. More...
 
class  PsdTriggerInputs
 Data structure with the trigger inputs for Psd. More...
 
class  Rectangle
 A rectangle in 3D space. More...
 
class  ScdBondingDigitizerAlgo
 Algorithm that bonds the Monte Carlo SCD hits. More...
 
class  ScdCapacitiveNetAlgo
 Algorithm that distributes signal on strips on readout strips. More...
 
class  ScdClusteringAlgo
 Algorithm that clusters the Monte Carlo SCD hits. More...
 
class  ScdClustersColl
 Collection of containers for the clusters of all the SCD detectors. More...
 
class  ScdDriftDiffusionAlgo
 Algorithm that digitizes the Monte Carlo SCD hits based on a purely geometric criterion. More...
 
class  ScdGeometricDigitizerAlgo
 Algorithm that digitizes the Monte Carlo SCD hits based on a purely geometric criterion. More...
 
struct  ScdGeoParamsSideHelpValues
 
struct  ScdGeoParamsTopHelpValues
 
class  SidesArray
 An array that accepts side as subscripts. More...
 
class  SiliconDetectorBondingDigitizerAlgo
 Base algorithm for bonding digitizers of the Monte Carlo hits of silicon detectors. More...
 
class  SiliconDetectorCapacitiveNetAlgo
 Base algorithm for digitizers of the Monte Carlo hits of silicon detector implementing the effect of a capacitive net between on the strips. More...
 
class  SiliconDetectorChannelGeoInfo
 Object managing the geometry of the Si readout strips in a single layer. More...
 
class  SiliconDetectorClusteringAlgo
 Algorithm that clusters the Monte Carlo Silicon detector hits. algorithms/clustering/SiliconDetectorClusteringAlgo.h. More...
 
class  SiliconDetectorDriftDiffusionAlgo
 Base algorithm for digitizers of the Monte Carlo hits of silicon detector implementing the effect of charge dritf and diffusion in the silicon. More...
 
class  SiliconDetectorGeometricDigitizerAlgo
 Base algorithm for digitizers of the Monte Carlo hits of silicon detector based on a purely geometric criterion. More...
 
class  SiliconDetectorGeoParams
 Data structure for single silicon layer geometry parameters. More...
 
class  StkBondingDigitizerAlgo
 Algorithm that bonds the Monte Carlo STK hits. More...
 
class  StkCapacitiveNetAlgo
 Algorithm that distributes signal on strips on readout strips. More...
 
class  StkClusteringAlgo
 Algorithm that clusters the Monte Carlo STK hits. More...
 
class  StkClustersColl
 Collection of containers for the clusters of all the STK detectors. More...
 
class  StkDriftDiffusionAlgo
 Algorithm that digitizes the Monte Carlo STK hits based on a purely geometric criterion. More...
 
class  StkGeometricDigitizerAlgo
 Algorithm that digitizes the Monte Carlo STK hits based on a purely geometric criterion. More...
 
struct  StkGeoParamsSideHelpValues
 
struct  StkGeoParamsTopHelpValues
 
struct  StkIntersection
 A container of information about a interesection between a track and a STK layer. More...
 
struct  StkIntersections
 A container of information about interesections between a track and the STK. More...
 
class  StkIntersectionsAlgo
 An algorithm that calculate the intersections between a track and the STK. More...
 
class  StkIntersectionsCut
 A cut about the number of intersections of a track with STK. More...
 
class  Track
 Class describing a track. More...
 
class  Track2D
 Class describing a track. More...
 
struct  TrackInfoForCalo
 Container of information about the track inside the Calo. More...
 
class  TrackingDetectorGeoParams
 Base data structure for single tracking detector layer geometry parameters. More...
 
class  TriggerPattern
 Data structure with the fired triggers for each event. More...
 
class  UnbiasedTriggerCut
 An algorithm that reads the trigger flags for CaloPMT and applies the trigger logic for unbiased trigger. More...
 
class  Vec3D
 A class describing a vector in 3D space. More...
 
class  VPalette
 

Typedefs

using HFClusters = std::vector< std::vector< HFCluster > >
 
using CaloAxes = std::vector< CaloAxis >
 
using CaloClusters = std::vector< CaloHits >
 
using CaloHits = std::vector< Hit >
 
using ClustersColl = SidesArray< std::vector< std::vector< Cluster > >>
 
using FitChannelInfoColl = SidesArray< std::vector< FitChannelInfo > >
 
using FitClusters = std::vector< std::vector< Cluster > >
 
using FitGeoParamsColl = SidesArray< std::vector< FitGeoParams > >
 
using FitHits = std::vector< std::vector< Hit > >
 
using FitHitsColl = SidesArray< FitHits >
 
using FitParticleHits = ParticleHits
 
using FitParticleHitsColl = SidesArray< FitParticleHits >
 
using Momentum = Vec3D
 
using ParticleHits = std::vector< std::vector< std::vector< ParticleHit > >>
 
using Point = Vec3D
 
using PsdGeoParamsColl = SidesArray< std::vector< PsdGeoParams > >
 
using PsdHits = std::vector< std::vector< Hit > >
 
using PsdHitsColl = SidesArray< PsdHits >
 
using PsdParticleHits = ParticleHits
 
using PsdParticleHitsColl = SidesArray< PsdParticleHits >
 
using ScdChannelGeoInfoColl = SiliconDetectorChannelGeoInfoColl
 
using ScdClusters = SiliconDetectorClusters
 
using ScdGeoParams = SiliconDetectorGeoParams
 
using ScdGeoParamsColl = SiliconDetectorGeoParamsColl
 
using ScdHits = SiliconDetectorHits
 
using ScdHitsColl = SiliconDetectorHitsColl
 
using ScdParticleHits = SiliconDetectorParticleHits
 
using ScdParticleHitsColl = SiliconDetectorParticleHitsColl
 
using SiliconDetectorChannelGeoInfoColl = SidesArray< std::vector< SiliconDetectorChannelGeoInfo > >
 
using SiliconDetectorClusters = std::vector< std::vector< Cluster > >
 
using SiliconDetectorClustersColl = SidesArray< SiliconDetectorClusters >
 
using SiliconDetectorGeoParamsColl = SidesArray< std::vector< SiliconDetectorGeoParams > >
 
using SiliconDetectorHits = std::vector< std::vector< Hit > >
 
using SiliconDetectorHitsColl = SidesArray< SiliconDetectorHits >
 
using SiliconDetectorParticleHits = ParticleHits
 
using SiliconDetectorParticleHitsColl = SidesArray< SiliconDetectorParticleHits >
 
using StkChannelGeoInfoColl = SiliconDetectorChannelGeoInfoColl
 
using StkClusters = SiliconDetectorClusters
 
using StkGeoParams = SiliconDetectorGeoParams
 
using StkGeoParamsColl = SiliconDetectorGeoParamsColl
 
using StkHits = SiliconDetectorHits
 
using StkHitsColl = SiliconDetectorHitsColl
 
using StkParticleHits = SiliconDetectorParticleHits
 
using StkParticleHitsColl = SiliconDetectorParticleHitsColl
 
using TrackingDetectorGeoParamsColl = SidesArray< std::vector< TrackingDetectorGeoParams > >
 
using HerdRootDataProvider = HerdRootDataProviderT< RootDataProvider >
 
using HerdRootDataProviderV0 = HerdRootDataProviderT< RootDataProviderV0 >
 
using ChannelInfoFlag = CaloPDEventChannelInfo::Flag
 
using CaloPMTTrigMask = CaloPMTTriggerFlags::CaloPMTTriggerMask
 
using PsdTrigMask = PsdTriggerFlags::PsdTriggerMask
 

Enumerations

enum  CaloAxisAlgoType { CaloAxisAlgoType::NONE, CaloAxisAlgoType::PCA }
 
enum  CaloPMTTriggerRegion : int {
  CaloPMTTriggerRegion::NONE = -1, CaloPMTTriggerRegion::Core = 0, CaloPMTTriggerRegion::Ztop = 1, CaloPMTTriggerRegion::Zbot = 2,
  CaloPMTTriggerRegion::Xp = 3, CaloPMTTriggerRegion::Yp = 4, CaloPMTTriggerRegion::Yn = 5
}
 

Functions

bool operator== (const HoughTrackStub &lhs, const HoughTrackStub &rhs)
 
template<typename _Tp , std::size_t _Nm>
bool operator== (const ArrayForwarder< _Tp, _Nm > &__one, const ArrayForwarder< _Tp, _Nm > &__two)
 
template<typename _Tp , std::size_t _Nm>
bool operator!= (const ArrayForwarder< _Tp, _Nm > &__one, const ArrayForwarder< _Tp, _Nm > &__two)
 
template<typename _Tp , std::size_t _Nm>
bool operator< (const ArrayForwarder< _Tp, _Nm > &__a, const ArrayForwarder< _Tp, _Nm > &__b)
 
template<typename _Tp , std::size_t _Nm>
bool operator> (const ArrayForwarder< _Tp, _Nm > &__one, const ArrayForwarder< _Tp, _Nm > &__two)
 
template<typename _Tp , std::size_t _Nm>
bool operator<= (const ArrayForwarder< _Tp, _Nm > &__one, const ArrayForwarder< _Tp, _Nm > &__two)
 
template<typename _Tp , std::size_t _Nm>
bool operator>= (const ArrayForwarder< _Tp, _Nm > &__one, const ArrayForwarder< _Tp, _Nm > &__two)
 
template<typename _Tp , std::size_t _Nm>
void swap (ArrayForwarder< _Tp, _Nm > &__one, ArrayForwarder< _Tp, _Nm > &__two) noexcept(noexcept(__one.swap(__two)))
 
template<std::size_t _Int, typename _Tp , std::size_t _Nm>
constexpr _Tp & get (ArrayForwarder< _Tp, _Nm > &__arr) noexcept
 
template<std::size_t _Int, typename _Tp , std::size_t _Nm>
constexpr _Tp && get (ArrayForwarder< _Tp, _Nm > &&__arr) noexcept
 
template<std::size_t _Int, typename _Tp , std::size_t _Nm>
constexpr const _Tp & get (const ArrayForwarder< _Tp, _Nm > &__arr) noexcept
 
template<std::size_t _Int, typename _Tp , std::size_t _Nm>
constexpr const _Tp && get (const ArrayForwarder< _Tp, _Nm > &&__arr) noexcept
 
float operator* (const Vec3D left, const Vec3D right)
 Compute the dot-product between two vectors. More...
 
Vec3D operator+ (Vec3D left, Vec3D const &right)
 Add two vectors. More...
 
Vec3D operator+ (const Vec3D &left, Vec3D &&right)
 
template<typename T , typename std::enable_if< std::is_arithmetic< T >::value >::type * = nullptr>
Vec3D operator* (Vec3D left, T const &right)
 Multiply a vector by a number. More...
 
template<typename T , typename std::enable_if< std::is_arithmetic< T >::value >::type * = nullptr>
Vec3D operator* (T const &right, Vec3D left)
 
template<typename T , typename std::enable_if< std::is_arithmetic< T >::value >::type * = nullptr>
Vec3D operator/ (Vec3D left, T const &right)
 Divide a vector by a number. More...
 
template<typename T , typename std::enable_if< std::is_arithmetic< T >::value >::type * = nullptr>
Vec3D operator/ (T const &right, Vec3D left)
 
std::ostream & operator<< (std::ostream &os, const Vec3D &vec)
 Write coordinates to stream. More...
 
bool operator== (const Hit &h1, const Hit &h2)
 
std::ostream & operator<< (std::ostream &out, const Hit &hit)
 
 RegisterAlgorithm (CaloPDCalibrationAlgo)
 
 RegisterAlgorithm (CaloDBSCANClustering)
 
 RegisterAlgorithm (FitClusteringAlgo)
 
 RegisterAlgorithm (ScdClusteringAlgo)
 
 RegisterAlgorithm (SiliconDetectorClusteringAlgo)
 
 RegisterAlgorithm (StkClusteringAlgo)
 
 RegisterAlgorithm (CaloPDChannelInfoAlgo)
 
 RegisterAlgorithm (CaloPDDigitizerAlgo)
 
 RegisterAlgorithm (CaloPDZeroSuppressionAlgo)
 
 RegisterAlgorithm (FitDigitizerAlgo)
 
 RegisterAlgorithm (PsdGeometricDigitizerAlgo)
 
 RegisterAlgorithm (ScdBondingDigitizerAlgo)
 
 RegisterAlgorithm (ScdCapacitiveNetAlgo)
 
 RegisterAlgorithm (ScdDriftDiffusionAlgo)
 
 RegisterAlgorithm (ScdGeometricDigitizerAlgo)
 
 RegisterAlgorithm (StkBondingDigitizerAlgo)
 
 RegisterAlgorithm (StkCapacitiveNetAlgo)
 
 RegisterAlgorithm (StkDriftDiffusionAlgo)
 
 RegisterAlgorithm (StkGeometricDigitizerAlgo)
 
 RegisterAlgorithm (HERDward)
 
 RegisterAlgorithm (CaloAcceptanceCut)
 
 RegisterAlgorithm (CaloTrackInfoAlgo)
 
 RegisterAlgorithm (PolarAngleCut)
 
 RegisterAlgorithm (StkIntersectionsAlgo)
 
 RegisterAlgorithm (StkIntersectionsCut)
 
 RegisterAlgorithm (PcaCaloAxisTrackingAlgo)
 
 RegisterAlgorithm (HoughFinder2DAlgo)
 
 RegisterAlgorithm (CaloPMTTriggerComparatorAlgo)
 
 RegisterAlgorithm (CaloPMTTriggerComputerAlgo)
 
 RegisterAlgorithm (HighEnergyTriggerCut)
 
 RegisterAlgorithm (LowEnergyGammaTriggerCut)
 
 RegisterAlgorithm (PsdTriggerComparatorAlgo)
 
 RegisterAlgorithm (PsdTriggerComputerAlgo)
 
 RegisterAlgorithm (UnbiasedTriggerCut)
 
 RegisterDataProvider (GGSDataProvider)
 
 RegisterDataProvider (HerdRootDataProvider)
 
 RegisterDataProvider (HerdRootDataProviderV0)
 
std::unique_ptr< PsdGeoParamsCollBuildTilePsdGeoParams (const GGSTGeoParams *, bool)
 
std::unique_ptr< PsdGeoParamsCollBuildBarPsdGeoParams (const GGSTGeoParams *, bool)
 
void FillPsdSingleLayer (PsdGeoParams &psdGeoParams, RefFrame::Side side, std::array< int, 3 > nEle, std::array< float, 3 > size, std::array< float, 3 > gap, Point centerPos)
 
 RegisterPersistence (HerdRootPersistenceService)
 

Variables

constexpr int NCaloPMTTriggerRegions = 6
 The number of trigger regions for CaloPMT. More...
 
constexpr std::array< CaloPMTTriggerRegion, NCaloPMTTriggerRegionsCaloPMTTriggerRegions
 Array of all the CaloPMT trigger regions. This array can be used to iterate over all the trigger regions using array iterators in a range-for loop. More...
 
auto replace_all
 
constexpr int nMaxCubesPerSide = 21
 
static const struct Herd::ParametricGeoReader::CaloGeoParamsHelpValues caloDefaults
 
static const struct Herd::PSDGeoParamsTileTopHelpValues psdTopTileDefaults
 
static const struct Herd::PSDGeoParamsTileSideHelpValues psdSideTileDefaults
 
static const struct Herd::PSDGeoParamsBarTopHelpValues psdTopBarDefaults
 
static const struct Herd::PSDGeoParamsBarSideHelpValues psdSideBarDefaults
 
static const struct Herd::ScdGeoParamsTopHelpValues scdTopDefaults
 
static const struct Herd::ScdGeoParamsSideHelpValues scdSideDefaults
 
static const struct Herd::StkGeoParamsTopHelpValues stkTopDefaults
 
static const struct Herd::StkGeoParamsSideHelpValues stkSideDefaults
 

Detailed Description

CssGeoParams.h CssGeoParams class declaration.

Typedef Documentation

◆ CaloAxes

using Herd::CaloAxes = typedef std::vector<CaloAxis>

◆ CaloClusters

using Herd::CaloClusters = typedef std::vector<CaloHits>

◆ CaloHits

using Herd::CaloHits = typedef std::vector<Hit>

◆ CaloPMTTrigMask

◆ ChannelInfoFlag

◆ ClustersColl

using Herd::ClustersColl = typedef SidesArray<std::vector<std::vector<Cluster> >>

◆ FitChannelInfoColl

using Herd::FitChannelInfoColl = typedef SidesArray<std::vector<FitChannelInfo> >

◆ FitClusters

using Herd::FitClusters = typedef std::vector<std::vector<Cluster> >

◆ FitGeoParamsColl

using Herd::FitGeoParamsColl = typedef SidesArray<std::vector<FitGeoParams> >

◆ FitHits

using Herd::FitHits = typedef std::vector<std::vector<Hit> >

◆ FitHitsColl

◆ FitParticleHits

◆ FitParticleHitsColl

◆ HerdRootDataProvider

using Herd::HerdRootDataProvider = typedef HerdRootDataProviderT<RootDataProvider>

◆ HerdRootDataProviderV0

using Herd::HerdRootDataProviderV0 = typedef HerdRootDataProviderT<RootDataProviderV0>

◆ HFClusters

using Herd::HFClusters = typedef std::vector<std::vector<HFCluster> >

◆ Momentum

using Herd::Momentum = typedef Vec3D

◆ ParticleHits

using Herd::ParticleHits = typedef std::vector<std::vector<std::vector<ParticleHit> >>

◆ Point

using Herd::Point = typedef Vec3D

◆ PsdGeoParamsColl

using Herd::PsdGeoParamsColl = typedef SidesArray<std::vector<PsdGeoParams> >

◆ PsdHits

using Herd::PsdHits = typedef std::vector<std::vector<Hit> >

◆ PsdHitsColl

◆ PsdParticleHits

◆ PsdParticleHitsColl

◆ PsdTrigMask

◆ ScdChannelGeoInfoColl

◆ ScdClusters

◆ ScdGeoParams

◆ ScdGeoParamsColl

◆ ScdHits

◆ ScdHitsColl

◆ ScdParticleHits

◆ ScdParticleHitsColl

◆ SiliconDetectorChannelGeoInfoColl

◆ SiliconDetectorClusters

using Herd::SiliconDetectorClusters = typedef std::vector<std::vector<Cluster> >

◆ SiliconDetectorClustersColl

◆ SiliconDetectorGeoParamsColl

◆ SiliconDetectorHits

using Herd::SiliconDetectorHits = typedef std::vector<std::vector<Hit> >

◆ SiliconDetectorHitsColl

◆ SiliconDetectorParticleHits

◆ SiliconDetectorParticleHitsColl

◆ StkChannelGeoInfoColl

◆ StkClusters

◆ StkGeoParams

◆ StkGeoParamsColl

◆ StkHits

◆ StkHitsColl

◆ StkParticleHits

◆ StkParticleHitsColl

◆ TrackingDetectorGeoParamsColl

Enumeration Type Documentation

◆ CaloAxisAlgoType

Enumerator
NONE 

Reconstruction algorithm not specified

PCA 

Principal Component Analysis algorithm, generated with PcaCaloAxisTrackingAlgo

◆ CaloPMTTriggerRegion

enum Herd::CaloPMTTriggerRegion : int
strong
Enumerator
NONE 
Core 
Ztop 
Zbot 
Xp 
Yp 
Yn 

Function Documentation

◆ BuildBarPsdGeoParams()

std::unique_ptr<PsdGeoParamsColl> Herd::BuildBarPsdGeoParams ( const GGSTGeoParams *  ,
bool   
)

◆ BuildTilePsdGeoParams()

std::unique_ptr<PsdGeoParamsColl> Herd::BuildTilePsdGeoParams ( const GGSTGeoParams *  ,
bool   
)

◆ FillPsdSingleLayer()

void Herd::FillPsdSingleLayer ( PsdGeoParams psdGeoParams,
RefFrame::Side  side,
std::array< int, 3 >  nEle,
std::array< float, 3 >  size,
std::array< float, 3 >  gap,
Point  centerPos 
)

◆ get() [1/4]

template<std::size_t _Int, typename _Tp , std::size_t _Nm>
constexpr _Tp& Herd::get ( ArrayForwarder< _Tp, _Nm > &  __arr)
noexcept

◆ get() [2/4]

template<std::size_t _Int, typename _Tp , std::size_t _Nm>
constexpr _Tp&& Herd::get ( ArrayForwarder< _Tp, _Nm > &&  __arr)
noexcept

◆ get() [3/4]

template<std::size_t _Int, typename _Tp , std::size_t _Nm>
constexpr const _Tp& Herd::get ( const ArrayForwarder< _Tp, _Nm > &  __arr)
noexcept

◆ get() [4/4]

template<std::size_t _Int, typename _Tp , std::size_t _Nm>
constexpr const _Tp&& Herd::get ( const ArrayForwarder< _Tp, _Nm > &&  __arr)
noexcept

◆ operator!=()

template<typename _Tp , std::size_t _Nm>
bool Herd::operator!= ( const ArrayForwarder< _Tp, _Nm > &  __one,
const ArrayForwarder< _Tp, _Nm > &  __two 
)
inline

◆ operator*() [1/3]

float Herd::operator* ( const Vec3D  left,
const Vec3D  right 
)
inline

Compute the dot-product between two vectors.

Returns
The cross-product.

◆ operator*() [2/3]

template<typename T , typename std::enable_if< std::is_arithmetic< T >::value >::type * = nullptr>
Vec3D Herd::operator* ( Vec3D  left,
T const &  right 
)
inline

Multiply a vector by a number.

Returns
The resulting vector.

◆ operator*() [3/3]

template<typename T , typename std::enable_if< std::is_arithmetic< T >::value >::type * = nullptr>
Vec3D Herd::operator* ( T const &  right,
Vec3D  left 
)
inline

◆ operator+() [1/2]

Vec3D Herd::operator+ ( Vec3D  left,
Vec3D const &  right 
)
inline

Add two vectors.

Returns
The resulting vector.

◆ operator+() [2/2]

Vec3D Herd::operator+ ( const Vec3D left,
Vec3D &&  right 
)
inline

◆ operator/() [1/2]

template<typename T , typename std::enable_if< std::is_arithmetic< T >::value >::type * = nullptr>
Vec3D Herd::operator/ ( Vec3D  left,
T const &  right 
)
inline

Divide a vector by a number.

Returns
The resulting vector.

◆ operator/() [2/2]

template<typename T , typename std::enable_if< std::is_arithmetic< T >::value >::type * = nullptr>
Vec3D Herd::operator/ ( T const &  right,
Vec3D  left 
)
inline

◆ operator<()

template<typename _Tp , std::size_t _Nm>
bool Herd::operator< ( const ArrayForwarder< _Tp, _Nm > &  __a,
const ArrayForwarder< _Tp, _Nm > &  __b 
)
inline

◆ operator<<() [1/2]

std::ostream& Herd::operator<< ( std::ostream &  out,
const Hit hit 
)
inline

◆ operator<<() [2/2]

std::ostream& Herd::operator<< ( std::ostream &  os,
const Vec3D vec 
)

Write coordinates to stream.

◆ operator<=()

template<typename _Tp , std::size_t _Nm>
bool Herd::operator<= ( const ArrayForwarder< _Tp, _Nm > &  __one,
const ArrayForwarder< _Tp, _Nm > &  __two 
)
inline

◆ operator==() [1/3]

bool Herd::operator== ( const HoughTrackStub lhs,
const HoughTrackStub rhs 
)
inline

◆ operator==() [2/3]

template<typename _Tp , std::size_t _Nm>
bool Herd::operator== ( const ArrayForwarder< _Tp, _Nm > &  __one,
const ArrayForwarder< _Tp, _Nm > &  __two 
)
inline

◆ operator==() [3/3]

bool Herd::operator== ( const Hit h1,
const Hit h2 
)
inline

◆ operator>()

template<typename _Tp , std::size_t _Nm>
bool Herd::operator> ( const ArrayForwarder< _Tp, _Nm > &  __one,
const ArrayForwarder< _Tp, _Nm > &  __two 
)
inline

◆ operator>=()

template<typename _Tp , std::size_t _Nm>
bool Herd::operator>= ( const ArrayForwarder< _Tp, _Nm > &  __one,
const ArrayForwarder< _Tp, _Nm > &  __two 
)
inline

◆ RegisterAlgorithm() [1/34]

Herd::RegisterAlgorithm ( HighEnergyTriggerCut  )

◆ RegisterAlgorithm() [2/34]

Herd::RegisterAlgorithm ( UnbiasedTriggerCut  )

◆ RegisterAlgorithm() [3/34]

Herd::RegisterAlgorithm ( PsdTriggerComputerAlgo  )

◆ RegisterAlgorithm() [4/34]

Herd::RegisterAlgorithm ( CaloPMTTriggerComparatorAlgo  )

◆ RegisterAlgorithm() [5/34]

Herd::RegisterAlgorithm ( LowEnergyGammaTriggerCut  )

◆ RegisterAlgorithm() [6/34]

Herd::RegisterAlgorithm ( PsdTriggerComparatorAlgo  )

◆ RegisterAlgorithm() [7/34]

Herd::RegisterAlgorithm ( CaloPMTTriggerComputerAlgo  )

◆ RegisterAlgorithm() [8/34]

Herd::RegisterAlgorithm ( ScdBondingDigitizerAlgo  )

◆ RegisterAlgorithm() [9/34]

Herd::RegisterAlgorithm ( ScdCapacitiveNetAlgo  )

◆ RegisterAlgorithm() [10/34]

Herd::RegisterAlgorithm ( ScdDriftDiffusionAlgo  )

◆ RegisterAlgorithm() [11/34]

Herd::RegisterAlgorithm ( ScdGeometricDigitizerAlgo  )

◆ RegisterAlgorithm() [12/34]

Herd::RegisterAlgorithm ( StkBondingDigitizerAlgo  )

◆ RegisterAlgorithm() [13/34]

Herd::RegisterAlgorithm ( StkDriftDiffusionAlgo  )

◆ RegisterAlgorithm() [14/34]

Herd::RegisterAlgorithm ( StkGeometricDigitizerAlgo  )

◆ RegisterAlgorithm() [15/34]

Herd::RegisterAlgorithm ( StkCapacitiveNetAlgo  )

◆ RegisterAlgorithm() [16/34]

Herd::RegisterAlgorithm ( CaloPDChannelInfoAlgo  )

◆ RegisterAlgorithm() [17/34]

Herd::RegisterAlgorithm ( CaloPDZeroSuppressionAlgo  )

◆ RegisterAlgorithm() [18/34]

Herd::RegisterAlgorithm ( CaloPDCalibrationAlgo  )

◆ RegisterAlgorithm() [19/34]

Herd::RegisterAlgorithm ( CaloPDDigitizerAlgo  )

◆ RegisterAlgorithm() [20/34]

Herd::RegisterAlgorithm ( FitClusteringAlgo  )

◆ RegisterAlgorithm() [21/34]

Herd::RegisterAlgorithm ( StkClusteringAlgo  )

◆ RegisterAlgorithm() [22/34]

Herd::RegisterAlgorithm ( CaloAcceptanceCut  )

◆ RegisterAlgorithm() [23/34]

Herd::RegisterAlgorithm ( FitDigitizerAlgo  )

◆ RegisterAlgorithm() [24/34]

Herd::RegisterAlgorithm ( ScdClusteringAlgo  )

◆ RegisterAlgorithm() [25/34]

Herd::RegisterAlgorithm ( PsdGeometricDigitizerAlgo  )

◆ RegisterAlgorithm() [26/34]

Herd::RegisterAlgorithm ( StkIntersectionsCut  )

◆ RegisterAlgorithm() [27/34]

Herd::RegisterAlgorithm ( SiliconDetectorClusteringAlgo  )

◆ RegisterAlgorithm() [28/34]

Herd::RegisterAlgorithm ( PolarAngleCut  )

◆ RegisterAlgorithm() [29/34]

Herd::RegisterAlgorithm ( CaloDBSCANClustering  )

◆ RegisterAlgorithm() [30/34]

Herd::RegisterAlgorithm ( PcaCaloAxisTrackingAlgo  )

◆ RegisterAlgorithm() [31/34]

Herd::RegisterAlgorithm ( StkIntersectionsAlgo  )

◆ RegisterAlgorithm() [32/34]

Herd::RegisterAlgorithm ( HoughFinder2DAlgo  )

◆ RegisterAlgorithm() [33/34]

Herd::RegisterAlgorithm ( HERDward  )

◆ RegisterAlgorithm() [34/34]

Herd::RegisterAlgorithm ( CaloTrackInfoAlgo  )

◆ RegisterDataProvider() [1/3]

Herd::RegisterDataProvider ( GGSDataProvider  )

◆ RegisterDataProvider() [2/3]

Herd::RegisterDataProvider ( HerdRootDataProvider  )

◆ RegisterDataProvider() [3/3]

Herd::RegisterDataProvider ( HerdRootDataProviderV0  )

◆ RegisterPersistence()

Herd::RegisterPersistence ( HerdRootPersistenceService  )

◆ swap()

template<typename _Tp , std::size_t _Nm>
void Herd::swap ( ArrayForwarder< _Tp, _Nm > &  __one,
ArrayForwarder< _Tp, _Nm > &  __two 
)
inlinenoexcept

Variable Documentation

◆ caloDefaults

const struct Herd::ParametricGeoReader::CaloGeoParamsHelpValues Herd::caloDefaults
static

◆ CaloPMTTriggerRegions

constexpr std::array<CaloPMTTriggerRegion, NCaloPMTTriggerRegions> Herd::CaloPMTTriggerRegions
Initial value:
{
CaloPMTTriggerRegion::Core, CaloPMTTriggerRegion::Ztop, CaloPMTTriggerRegion::Zbot,
CaloPMTTriggerRegion::Xp, CaloPMTTriggerRegion::Yp, CaloPMTTriggerRegion::Yn}

Array of all the CaloPMT trigger regions. This array can be used to iterate over all the trigger regions using array iterators in a range-for loop.

◆ NCaloPMTTriggerRegions

constexpr int Herd::NCaloPMTTriggerRegions = 6

The number of trigger regions for CaloPMT.

◆ nMaxCubesPerSide

constexpr int Herd::nMaxCubesPerSide = 21

◆ psdSideBarDefaults

const struct Herd::PSDGeoParamsBarSideHelpValues Herd::psdSideBarDefaults
static

◆ psdSideTileDefaults

const struct Herd::PSDGeoParamsTileSideHelpValues Herd::psdSideTileDefaults
static

◆ psdTopBarDefaults

const struct Herd::PSDGeoParamsBarTopHelpValues Herd::psdTopBarDefaults
static

◆ psdTopTileDefaults

const struct Herd::PSDGeoParamsTileTopHelpValues Herd::psdTopTileDefaults
static

◆ replace_all

auto Herd::replace_all
Initial value:
= [](std::string what, char from, char to) {
auto match_pos = what.find_first_of(from);
while (match_pos != std::string::npos) {
what.replace(match_pos, 1, std::string{to});
match_pos = what.find_first_of(from);
}
return what;
}

◆ scdSideDefaults

const struct Herd::ScdGeoParamsSideHelpValues Herd::scdSideDefaults
static

◆ scdTopDefaults

const struct Herd::ScdGeoParamsTopHelpValues Herd::scdTopDefaults
static

◆ stkSideDefaults

const struct Herd::StkGeoParamsSideHelpValues Herd::stkSideDefaults
static

◆ stkTopDefaults

const struct Herd::StkGeoParamsTopHelpValues Herd::stkTopDefaults
static