#ifndef ALIITSV11GEOMETRYSUPPORT_H
#define ALIITSV11GEOMETRYSUPPORT_H
#include "AliITSv11Geometry.h"
#include <TGeoManager.h>
#include <TGeoCompositeShape.h>
#include <TGeoXtru.h>
class TGeoVolume;
class AliITSv11GeometrySupport : public AliITSv11Geometry {
public:
AliITSv11GeometrySupport(){};
AliITSv11GeometrySupport(Int_t debug):AliITSv11Geometry(debug){};
virtual ~AliITSv11GeometrySupport(){};
virtual void SPDCone(TGeoVolume *moth,const TGeoManager *mgr=gGeoManager);
virtual void SDDCone(TGeoVolume *moth,const TGeoManager *mgr=gGeoManager);
virtual void SSDCone(TGeoVolume *moth,const TGeoManager *mgr=gGeoManager);
virtual void ServicesCableSupport(TGeoVolume *moth,
TGeoManager *mgr=gGeoManager);
virtual void ServicesCableSupportSPD(TGeoVolume *moth,
TGeoManager *mgr=gGeoManager);
virtual void ServicesCableSupportSDD(TGeoVolume *moth,
TGeoManager *mgr=gGeoManager);
virtual void ServicesCableSupportSSD(TGeoVolume *moth,
TGeoManager *mgr=gGeoManager);
virtual void ITSTPCSupports(TGeoVolume *moth,
const TGeoManager *mgr=gGeoManager);
private:
void CreateSPDThermalShape(Double_t ina, Double_t inb, Double_t inr,
Double_t oua, Double_t oub, Double_t our,
Double_t t, Double_t *x , Double_t *y ) const;
void CreateSPDOmegaShape(const Double_t *xin, const Double_t *yin, Double_t d,
Double_t *x, Double_t *y);
void FillSPDXtruShape(Double_t a, Double_t b, Double_t r,
Double_t t, Double_t *x, Double_t *y) const;
void PointFromParallelLines(Double_t x1, Double_t y1,
Double_t x2, Double_t y2, Double_t d,
Double_t &x, Double_t &y) const;
void ReflectPoint(Double_t x1, Double_t y1, Double_t x2, Double_t y2,
Double_t x3, Double_t y3, Double_t &x, Double_t &y) const;
void TraySupportsSideA(TGeoVolume *moth,const TGeoManager *mgr=gGeoManager);
void SPDCableTraysSideA(TGeoVolume *moth,const TGeoManager *mgr=gGeoManager);
void SPDCableTraysSideC(TGeoVolume *moth,const TGeoManager *mgr=gGeoManager);
void SDDCableTraysSideA(TGeoVolume *moth, const TGeoManager *mgr=gGeoManager);
void SDDCableTraysSideC(TGeoVolume *moth,const TGeoManager *mgr=gGeoManager);
void SSDCableTraysSideA(TGeoVolume *moth,const TGeoManager *mgr=gGeoManager);
void SSDCableTraysSideC(TGeoVolume *moth,const TGeoManager *mgr=gGeoManager);
void CreateSDDForwardTraySideA(TGeoVolumeAssembly *tray,
const TGeoManager *mgr);
TGeoCompositeShape* CreateTrayAForwardCover(const Double_t coverLen);
TGeoCompositeShape* CreateTrayAExternalCover(const Double_t coverLen);
void CreateTrayACoverHolesShape(const Double_t wide, const Double_t length,
const Double_t r10,
Double_t *x, Double_t *y);
TGeoXtru* CreateSDDSSDTraysSideA(const Double_t trayLen,
const Double_t trayHi);
TGeoVolumeAssembly* CreateSDDSSDTraysSideC(const char *trayName,
const TGeoManager *mgr=gGeoManager);
ClassDef(AliITSv11GeometrySupport,1)
};
#endif
AliITSv11GeometrySupport.h:1 AliITSv11GeometrySupport.h:2 AliITSv11GeometrySupport.h:3 AliITSv11GeometrySupport.h:4 AliITSv11GeometrySupport.h:5 AliITSv11GeometrySupport.h:6 AliITSv11GeometrySupport.h:7 AliITSv11GeometrySupport.h:8 AliITSv11GeometrySupport.h:9 AliITSv11GeometrySupport.h:10 AliITSv11GeometrySupport.h:11 AliITSv11GeometrySupport.h:12 AliITSv11GeometrySupport.h:13 AliITSv11GeometrySupport.h:14 AliITSv11GeometrySupport.h:15 AliITSv11GeometrySupport.h:16 AliITSv11GeometrySupport.h:17 AliITSv11GeometrySupport.h:18 AliITSv11GeometrySupport.h:19 AliITSv11GeometrySupport.h:20 AliITSv11GeometrySupport.h:21 AliITSv11GeometrySupport.h:22 AliITSv11GeometrySupport.h:23 AliITSv11GeometrySupport.h:24 AliITSv11GeometrySupport.h:25 AliITSv11GeometrySupport.h:26 AliITSv11GeometrySupport.h:27 AliITSv11GeometrySupport.h:28 AliITSv11GeometrySupport.h:29 AliITSv11GeometrySupport.h:30 AliITSv11GeometrySupport.h:31 AliITSv11GeometrySupport.h:32 AliITSv11GeometrySupport.h:33 AliITSv11GeometrySupport.h:34 AliITSv11GeometrySupport.h:35 AliITSv11GeometrySupport.h:36 AliITSv11GeometrySupport.h:37 AliITSv11GeometrySupport.h:38 AliITSv11GeometrySupport.h:39 AliITSv11GeometrySupport.h:40 AliITSv11GeometrySupport.h:41 AliITSv11GeometrySupport.h:42 AliITSv11GeometrySupport.h:43 AliITSv11GeometrySupport.h:44 AliITSv11GeometrySupport.h:45 AliITSv11GeometrySupport.h:46 AliITSv11GeometrySupport.h:47 AliITSv11GeometrySupport.h:48 AliITSv11GeometrySupport.h:49 AliITSv11GeometrySupport.h:50 AliITSv11GeometrySupport.h:51 AliITSv11GeometrySupport.h:52 AliITSv11GeometrySupport.h:53 AliITSv11GeometrySupport.h:54 AliITSv11GeometrySupport.h:55 AliITSv11GeometrySupport.h:56 AliITSv11GeometrySupport.h:57 AliITSv11GeometrySupport.h:58 AliITSv11GeometrySupport.h:59 AliITSv11GeometrySupport.h:60 AliITSv11GeometrySupport.h:61 AliITSv11GeometrySupport.h:62 AliITSv11GeometrySupport.h:63 AliITSv11GeometrySupport.h:64 AliITSv11GeometrySupport.h:65 AliITSv11GeometrySupport.h:66 AliITSv11GeometrySupport.h:67 AliITSv11GeometrySupport.h:68 AliITSv11GeometrySupport.h:69 AliITSv11GeometrySupport.h:70 AliITSv11GeometrySupport.h:71 AliITSv11GeometrySupport.h:72 AliITSv11GeometrySupport.h:73 AliITSv11GeometrySupport.h:74 AliITSv11GeometrySupport.h:75 AliITSv11GeometrySupport.h:76 AliITSv11GeometrySupport.h:77 AliITSv11GeometrySupport.h:78 AliITSv11GeometrySupport.h:79 AliITSv11GeometrySupport.h:80 AliITSv11GeometrySupport.h:81 AliITSv11GeometrySupport.h:82 AliITSv11GeometrySupport.h:83 AliITSv11GeometrySupport.h:84 AliITSv11GeometrySupport.h:85 AliITSv11GeometrySupport.h:86 AliITSv11GeometrySupport.h:87 AliITSv11GeometrySupport.h:88