| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

gen::CylinderSelf Class Reference

List of all members.

Public Member Functions

def __init__
def parameters
def logvol

Public Attributes

 name
 radius
 height
 material
 parent
 child
 params
 lv

Detailed Description

Definition at line 98 of file gen.py.


Member Function Documentation

def gen::CylinderSelf::__init__ (   self,
  name,
  radius,
  height,
  material,
  parent = None,
  child = None 
)

Definition at line 99 of file gen.py.

00099                                                                          :
00100         self.name = name
00101         self.radius = radius
00102         self.height = height
00103         self.material=material
00104         self.parent = parent
00105         self.child = child
00106         self.params = []
00107         self.lv = None
00108         return
00109 
    def parameters(self):

def gen::CylinderSelf::parameters (   self  ) 

Definition at line 110 of file gen.py.

00110                         :
00111         """
00112         Build up the parameters for a cylinder based on thicknesses and parent values.
00113         """
00114         if self.params: return self.params
00115 
00116         from XmlDetDescGen.parameter import Parameter
00117 
00118         ts = []
00119         ps = []
00120         for thing,size in [("Radius",self.radius),
00121                             ("Height",self.height)]:
00122             t = Parameter("AD%s%s"%(self.name,thing),
00123                           size,
00124                           "%s for %s"%(thing,self.name.upper()))
00125             ts.append(t)
00126         if self.name=="sst":
00127             p = [Parameter("ADsstBotRibHeight",
00128                           "430*mm",
00129                            "Height for %s bottom ribs."%(self.name.upper())),
00130                  Parameter("SstFotHeight",
00131                            "10*mm",
00132                            "Height for %s feet."%(self.name.upper())),
00133                  Parameter("SstBotThickness",
00134                            "20*mm",
00135                            "%s bottom thickness."%(self.name.upper())),
00136                  Parameter("SstLidThickness",
00137                            "15*mm",
00138                            "%s bottom thickness."%(self.name.upper()))
00139                  ]
00140             ps.extend(p)
00141 
00142         if self.name=="oil":
00143             p = [Parameter("ADrftBotHeight",
00144                            "30*mm",
00145                            "Height for the bottom reflector in %s."
00146                            %(self.name.upper()))
00147                  ]
00148             ps.extend(p)
00149 
00150         self.params = ts + ps
        return self.params

def gen::CylinderSelf::logvol (   self  ) 

Definition at line 151 of file gen.py.

00153                     :
00154         if self.lv: return self.lv
00155 
00156         from XmlDetDescGen.geometry import Tubs,Logvol,Physvol,PosXYZ
00157         from XmlDetDescGen.util import ExternalEntity
00158 
00159         pv = []
00160         if self.child:
00161             if self.name == 'sst':
00162                 pv.append(Physvol("pv"+self.child.name.upper(),
00163                                   self.child.logvol(),
00164                                   PosXYZ(0, 0,"(SstFotHeight+SstBotThickness-SstLidThickness)/2")))
00165             elif self.name == 'oil':
00166                 pv.append(Physvol("pv"+self.child.name.upper(),
00167                                   self.child.logvol(),
00168                                   #PosXYZ(0, 0, "ADrftBotHeight+ADsstBotRibHeight-ADoilHeight/2")))
00169                                   PosXYZ(0, 0, "ADrftBotHeight+ADsstBotRibHeight-ADoilHeight/2+(OavBrlHeight-OavBrlFlgThickness)/2")))
00170             else:
00171                 pv.append(Physvol("pv"+self.child.name.upper(),
00172                                   self.child.logvol()))
00173 
00174         pv.append(ExternalEntity("HandWrittenPhysVols"))
00175 
00176         self.lv = Logvol("lv"+self.name.upper(),self.material,
00177                          Tubs(self.name,
00178                               'AD%sHeight'%self.name,
00179                               'AD%sRadius'%self.name),
00180                          pv)
        return self.lv


Member Data Documentation

gen::CylinderSelf::name

Definition at line 100 of file gen.py.

gen::CylinderSelf::radius

Definition at line 101 of file gen.py.

gen::CylinderSelf::height

Definition at line 102 of file gen.py.

gen::CylinderSelf::material

Definition at line 103 of file gen.py.

gen::CylinderSelf::parent

Definition at line 104 of file gen.py.

gen::CylinderSelf::child

Definition at line 105 of file gen.py.

gen::CylinderSelf::params

Definition at line 106 of file gen.py.

gen::CylinderSelf::lv

Definition at line 107 of file gen.py.


The documentation for this class was generated from the following file:
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 20:13:45 2011 for MiniDryRunXmlDetDesc by doxygen 1.4.7