Back to home page

EIC code displayed by LXR

 
 

    


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

0001 /*
0002  * BoxStruct.h
0003  *
0004  *  Created on: 09.10.2015
0005  *      Author: swenzel
0006  */
0007 
0008 #ifndef VECGEOM_VOLUMES_BOXSTRUCT_H_
0009 #define VECGEOM_VOLUMES_BOXSTRUCT_H_
0010 #include "VecGeom/base/Global.h"
0011 
0012 namespace vecgeom {
0013 
0014 inline namespace VECGEOM_IMPL_NAMESPACE {
0015 
0016 // we do something crazy : a plain struct without member functions to encapsulate just the parameters
0017 // of a box
0018 template <typename T = double>
0019 struct BoxStruct {
0020   Vector3D<T> fDimensions; //<the HALF lengths of the box
0021 
0022   VECCORE_ATT_HOST_DEVICE
0023   BoxStruct(Vector3D<T> const &dim) : fDimensions(dim) {}
0024 
0025   VECCORE_ATT_HOST_DEVICE
0026   BoxStruct(const T dx, const T dy, const T dz) : fDimensions(dx, dy, dz) {}
0027 };
0028 }
0029 } // end
0030 
0031 #endif