ROOT
6.06/09
Reference Guide
ROOT Home Page
Main Page
Related Pages
User's Classes
Namespaces
All Classes
Files
Release Notes
File List
File Members
geom
geom
inc
TGeoStateInfo.h
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
#ifndef ROOT_TGeoStateInfo
13
#define ROOT_TGeoStateInfo
14
15
#ifndef ROOT_TGeoMatrix
16
#include "
TGeoMatrix.h
"
17
#endif
18
19
class
TGeoNode
;
20
class
TGeoPolygon
;
21
struct
TGeoStateInfo
;
22
23
////////////////////////////////////////////////////////////////////////////
24
// //
25
// TGeoStateInfo - statefull info for the current geometry level. //
26
// //
27
////////////////////////////////////////////////////////////////////////////
28
29
struct
TGeoStateInfo
{
30
TGeoNode
*
fNode
;
// Node to which applies
31
// Assembly data
32
Int_t
fAsmCurrent
;
// Index for current entered node (assemblies)
33
Int_t
fAsmNext
;
// Index for next entered node (assemblies)
34
// Divisions data
35
Int_t
fDivCurrent
;
// Index for the current division node
36
Int_t
fDivNext
;
// Index for the next division node
37
TGeoTranslation
fDivTrans
;
// Translation used by current division node
38
TGeoRotation
fDivRot
;
// Rotation used by current division node
39
TGeoCombiTrans
fDivCombi
;
// Combi transformation used by current division
40
// Voxels data
41
Int_t
fVoxNcandidates
;
// Number of candidates
42
Int_t
fVoxCurrent
;
// Index of current voxel in sorted list
43
Int_t
*
fVoxCheckList
;
// List of candidates
44
UChar_t
*
fVoxBits1
;
// Bits used for list intersection
45
Int_t
fVoxSlices
[3];
// Slice indices for current voxel
46
Int_t
fVoxInc
[3];
// Slice index increment
47
Double_t
fVoxInvdir
[3];
// 1/current director cosines
48
Double_t
fVoxLimits
[3];
// Limits on X,Y,Z
49
// Composite shape data
50
Int_t
fBoolSelected
;
// Selected Boolean node
51
// Xtru shape data
52
Int_t
fXtruSeg
;
// current segment [0,fNvert-1]
53
Int_t
fXtruIz
;
// current z plane [0,fNz-1]
54
Double_t
*
fXtruXc
;
// [fNvert] current X positions for polygon vertices
55
Double_t
*
fXtruYc
;
// [fNvert] current Y positions for polygon vertices
56
TGeoPolygon
*
fXtruPoly
;
// polygon defining section shape
57
58
TGeoStateInfo
(
Int_t
maxdaughters=0);
59
TGeoStateInfo
(
const
TGeoStateInfo
&other);
60
TGeoStateInfo
&
operator=
(
const
TGeoStateInfo
&other);
61
virtual
~TGeoStateInfo
();
62
63
ClassDef
(
TGeoStateInfo
, 0)
// No I/O for this structure
64
};
65
66
#endif
TGeoStateInfo
Definition:
TGeoStateInfo.h:29
TGeoStateInfo::fVoxCurrent
Int_t fVoxCurrent
Definition:
TGeoStateInfo.h:42
TGeoStateInfo::fVoxSlices
Int_t fVoxSlices[3]
Definition:
TGeoStateInfo.h:45
TGeoStateInfo::fXtruYc
Double_t * fXtruYc
Definition:
TGeoStateInfo.h:55
TGeoStateInfo::fBoolSelected
Int_t fBoolSelected
Definition:
TGeoStateInfo.h:50
TGeoStateInfo::~TGeoStateInfo
virtual ~TGeoStateInfo()
Destructor.
Definition:
TGeoStateInfo.cxx:56
TGeoTranslation
Definition:
TGeoMatrix.h:133
TGeoPolygon
Definition:
TGeoPolygon.h:31
Int_t
int Int_t
Definition:
RtypesCore.h:41
TGeoStateInfo::fVoxBits1
UChar_t * fVoxBits1
Definition:
TGeoStateInfo.h:44
TGeoMatrix.h
TGeoStateInfo::fDivCombi
TGeoCombiTrans fDivCombi
Definition:
TGeoStateInfo.h:39
ClassDef
#define ClassDef(name, id)
Definition:
Rtypes.h:254
TGeoStateInfo::fDivTrans
TGeoTranslation fDivTrans
Definition:
TGeoStateInfo.h:37
TGeoStateInfo::fAsmCurrent
Int_t fAsmCurrent
Definition:
TGeoStateInfo.h:32
TGeoCombiTrans
Definition:
TGeoMatrix.h:287
TGeoStateInfo::fVoxLimits
Double_t fVoxLimits[3]
Definition:
TGeoStateInfo.h:48
TGeoStateInfo::fVoxInvdir
Double_t fVoxInvdir[3]
Definition:
TGeoStateInfo.h:47
TGeoStateInfo::fNode
TGeoNode * fNode
Definition:
TGeoStateInfo.h:30
TGeoRotation
Definition:
TGeoMatrix.h:182
TGeoStateInfo::fXtruXc
Double_t * fXtruXc
Definition:
TGeoStateInfo.h:54
TGeoStateInfo::fVoxInc
Int_t fVoxInc[3]
Definition:
TGeoStateInfo.h:46
TGeoStateInfo::fDivRot
TGeoRotation fDivRot
Definition:
TGeoStateInfo.h:38
Double_t
double Double_t
Definition:
RtypesCore.h:55
TGeoStateInfo::fXtruIz
Int_t fXtruIz
Definition:
TGeoStateInfo.h:53
TGeoStateInfo::fAsmNext
Int_t fAsmNext
Definition:
TGeoStateInfo.h:33
TGeoStateInfo::fVoxCheckList
Int_t * fVoxCheckList
Definition:
TGeoStateInfo.h:43
TGeoStateInfo::fDivNext
Int_t fDivNext
Definition:
TGeoStateInfo.h:36
TGeoNode
Definition:
TGeoNode.h:51
UChar_t
unsigned char UChar_t
Definition:
RtypesCore.h:34
TGeoStateInfo::fVoxNcandidates
Int_t fVoxNcandidates
Definition:
TGeoStateInfo.h:41
TGeoStateInfo::fXtruSeg
Int_t fXtruSeg
Definition:
TGeoStateInfo.h:52
TGeoStateInfo::operator=
TGeoStateInfo & operator=(const TGeoStateInfo &other)
Assignment.
Definition:
TGeoStateInfo.cxx:102
TGeoStateInfo::fXtruPoly
TGeoPolygon * fXtruPoly
Definition:
TGeoStateInfo.h:56
TGeoStateInfo::fDivCurrent
Int_t fDivCurrent
Definition:
TGeoStateInfo.h:35
TGeoStateInfo::TGeoStateInfo
TGeoStateInfo(Int_t maxdaughters=0)