Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-30 10:26:20

0001 /*
0002  * ConeStruct.h
0003  *
0004  *  Created on: May 11, 2017
0005  *      Author: Raman Sehgal
0006  */
0007 #ifndef VECGEOM_POLYCONESECTION_H_
0008 #define VECGEOM_POLYCONESECTION_H_
0009 
0010 #include "VecGeom/volumes/ConeStruct.h"
0011 
0012 namespace vecgeom {
0013 
0014 // helper structure to encapsulate a section
0015 VECGEOM_DEVICE_FORWARD_DECLARE(struct PolyconeSection;);
0016 VECGEOM_DEVICE_DECLARE_CONV(struct, PolyconeSection);
0017 
0018 inline namespace VECGEOM_IMPL_NAMESPACE {
0019 
0020 struct PolyconeSection {
0021   VECCORE_ATT_HOST_DEVICE
0022   PolyconeSection() : fSolid(0), fShift(0.0), fTubular(0), fConvex(0) {}
0023 
0024   VECCORE_ATT_HOST_DEVICE
0025   ~PolyconeSection() {}
0026 
0027   ConeStruct<Precision> *fSolid;
0028   Precision fShift;
0029   bool fTubular;
0030   bool fConvex; // TRUE if all points in section are concave in regards to whole polycone, will be determined
0031 };
0032 } // namespace VECGEOM_IMPL_NAMESPACE
0033 } // namespace vecgeom
0034 
0035 #endif