21         if (ClusterNumber == StartClusterNumber)
 
   24                 cout << 
"No Cluster placed yet!" << endl;
 
   28                         return ClusterNumber -1;
 
   35         return StartClusterNumber;
 
   41         return ClusterNumber-StartClusterNumber;
 
   46         if (!ParametersInputFile)
 
   48                 cout << 
"Inputfile does not exist!" << endl;
 
   50         else if (ParametersInputFile.good())
 
   54                 getline(ParametersInputFile,InputBuffer);
 
   57                 DataArray[0] = strtod(InputBuffer.data(),&pEnd);
 
   58                 for (Int_t iValues = 1; iValues < NumberOfValues; iValues++)
 
   60                         DataArray[iValues] = strtod(pEnd,&pEnd);
 
   67         if (!ParametersInputFile)
 
   69                 cout << 
"Inputfile does not exist!" << endl;
 
   71         else if (ParametersInputFile.good())
 
   74                 getline(ParametersInputFile,InputBuffer);
 
   80         CryostatTransparency = ExtTransparency;
 
   82         Cryostat->SetTransparency(CryostatTransparency);
 
   90         Cryostat->SetLineColor(ExtColor);
 
   97         ClusterAssembly = 
new TGeoVolumeAssembly(
"ClusterAssembly");
 
   98         BuildCrystals(CrystalNumber);
 
  100         SetCryostatColor(kGreen);
 
  101         SetCryostatTransparency(0);
 
  102         top->AddNode(ClusterAssembly,ClusterNumber,ClusterPlaceAndDirectionTranslation);
 
  109         ClusterAssembly = 
new TGeoVolumeAssembly(
"ClusterAssembly");
 
  110         BuildCrystals(CrystalNumber);
 
  112         SetCryostatColor(kGreen);
 
  113         SetCryostatTransparency(0);
 
  115         ClusterPositionX = 
x;
 
  116         ClusterPositionY = 
y;
 
  117         ClusterPositionZ = z + GlobalZOffset;
 
  118         ClusterEulerAnglePsi = psi;                     
 
  119         ClusterEulerAngleTheta = 
theta;
 
  120         ClusterEulerAnglePhi = 
phi;
 
  121         TGeoRotation *TempClusterRotation = 
new TGeoRotation(
"TempClusterRotation",ClusterEulerAnglePsi,ClusterEulerAngleTheta,ClusterEulerAnglePhi);
 
  122                 TempClusterRotation->RegisterYourself();
 
  123         top->AddNode(ClusterAssembly,ClusterNumber,
new TGeoCombiTrans(ClusterPositionX,ClusterPositionY,ClusterPositionZ,TempClusterRotation));
 
  129         ClusterAssembly = 
new TGeoVolumeAssembly(
"ClusterAssembly");
 
  130         BuildCrystals(CrystalNumber);
 
  132         SetCryostatColor(kGreen);
 
  133         SetCryostatTransparency(0);
 
  139         ClusterEulerAnglePsi = psi;                     
 
  140         ClusterEulerAngleTheta = 
theta;
 
  141         ClusterEulerAnglePhi = 
phi;
 
  142         TGeoRotation *TempClusterRotation = 
new TGeoRotation(
"TempClusterRotation",ClusterEulerAnglePsi,ClusterEulerAngleTheta,ClusterEulerAnglePhi);
 
  143                 TempClusterRotation->RegisterYourself();
 
  144         top->AddNode(ClusterAssembly,ClusterNumber,
new TGeoCombiTrans(ClusterPositionX,ClusterPositionY,ClusterPositionZ,TempClusterRotation));
 
void GetExternalParameters(Int_t NumberOfValues, Double_t *DataArray)
void TrashCommentaryLineInFile()
void SetCryostatColor(Color_t ExtColor)
Int_t GetStartClusterNumber()
Int_t GetNumberOfCopies()
ClassImp(PndGeoHypGeCluster) Int_t PndGeoHypGeCluster
void PlaceCluster(TGeoVolume *top, TGeoMatrix *ClusterPlaceAndDirectionTranslation, Int_t *CrystalNumber)
void SetCryostatTransparency(Int_t ExtTransparency)