Logo ROOT  
Reference Guide
TGeoStateInfo.cxx
Go to the documentation of this file.
1 // @(#):$Id$
2 // Author: Andrei Gheata 07/02/2012
3 
4 /*************************************************************************
5  * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
6  * All rights reserved. *
7  * *
8  * For the licensing terms see $ROOTSYS/LICENSE. *
9  * For the list of contributors see $ROOTSYS/README/CREDITS. *
10  *************************************************************************/
11 
12 #include "TGeoStateInfo.h"
13 
14 #include "Rtypes.h"
15 #include "TGeoNode.h"
16 #include "TGeoManager.h"
17 #include "TGeoPolygon.h"
18 
19 /** \class TGeoStateInfo
20 \ingroup Geometry_classes
21 Statefull info for the current geometry level.
22 */
23 
25 
26 ////////////////////////////////////////////////////////////////////////////////
27 /// Constructor
28 
30  :fNode(0),
31  fAsmCurrent(0),
32  fAsmNext(0),
33  fDivCurrent(0),
34  fDivNext(0),
35  fDivTrans(),
36  fDivRot(),
37  fDivCombi(),
38  fVoxNcandidates(0),
39  fVoxCurrent(0),
40  fVoxCheckList(0),
41  fVoxBits1(0),
42  fBoolSelected(0),
43  fXtruSeg(0),
44  fXtruIz(0),
45  fXtruXc(0),
46  fXtruYc(0),
47  fXtruPoly(0)
48 {
49  Int_t maxDaughters = (maxdaughters>0) ? maxdaughters : TGeoManager::GetMaxDaughters();
50  Int_t maxXtruVert = TGeoManager::GetMaxXtruVert();
51  fVoxCheckList = new Int_t[maxDaughters];
52  fVoxBits1 = new UChar_t[2 + ((maxDaughters-1)>>3)];
53  fXtruXc = new Double_t[maxXtruVert];
54  fXtruYc = new Double_t[maxXtruVert];
55  fVoxSlices[0] = fVoxSlices[1] = fVoxSlices[2] = -1;
56  fVoxInc[0] = fVoxInc[1] = fVoxInc[2] = 0;
57  fVoxInvdir[0] = fVoxInvdir[1] = fVoxInvdir[2] = 0;
58  fVoxLimits[0] = fVoxLimits[1] = fVoxLimits[2] = 0;
59 }
60 
61 ////////////////////////////////////////////////////////////////////////////////
62 /// Destructor
63 
65 {
66  delete [] fVoxCheckList;
67  delete [] fVoxBits1;
68  delete [] fXtruXc;
69  delete [] fXtruYc;
70 }
ClassImp
#define ClassImp(name)
Definition: Rtypes.h:364
TGeoStateInfo::TGeoStateInfo
TGeoStateInfo(Int_t maxdaughters=0)
Constructor.
Definition: TGeoStateInfo.cxx:29
TGeoManager::GetMaxXtruVert
static Int_t GetMaxXtruVert()
Return maximum number of vertices for an xtru shape used.
Definition: TGeoManager.cxx:1949
TGeoStateInfo::~TGeoStateInfo
virtual ~TGeoStateInfo()
Destructor.
Definition: TGeoStateInfo.cxx:64
TGeoStateInfo::fVoxInvdir
Double_t fVoxInvdir[3]
Definition: TGeoStateInfo.h:39
TGeoStateInfo::fVoxCheckList
Int_t * fVoxCheckList
Definition: TGeoStateInfo.h:35
TGeoStateInfo::fVoxSlices
Int_t fVoxSlices[3]
Definition: TGeoStateInfo.h:37
TGeoStateInfo
Statefull info for the current geometry level.
Definition: TGeoStateInfo.h:21
TGeoManager.h
TGeoStateInfo::fVoxBits1
UChar_t * fVoxBits1
Definition: TGeoStateInfo.h:36
TGeoPolygon.h
Double_t
double Double_t
Definition: RtypesCore.h:59
TGeoManager::GetMaxDaughters
static Int_t GetMaxDaughters()
Return maximum number of daughters of a volume used in the geometry.
Definition: TGeoManager.cxx:1933
TGeoStateInfo::fXtruYc
Double_t * fXtruYc
Definition: TGeoStateInfo.h:47
UChar_t
unsigned char UChar_t
Definition: RtypesCore.h:38
TGeoStateInfo::fXtruXc
Double_t * fXtruXc
Definition: TGeoStateInfo.h:46
TGeoStateInfo::fVoxLimits
Double_t fVoxLimits[3]
Definition: TGeoStateInfo.h:40
TGeoStateInfo.h
TGeoStateInfo::fVoxInc
Int_t fVoxInc[3]
Definition: TGeoStateInfo.h:38
Rtypes.h
TGeoNode.h
int