// Author: Andrew M. Rogers <mailto, NSCL 07/01/2006
//* Copyright (C) 2006-2008 Andrew M. Rogers


#include "TTarget.h"

ClassImp(TTarget);

//////////////////////////////////////////////////////////////////////////
//                                                                      //
// TTarget                                                              //
//                                                                      //
//                                                                      //
//////////////////////////////////////////////////////////////////////////

//______________________________________________________________________________
TTarget::TTarget()
{
  // -- Default Constuctor.

  TObject::SetBit(kElementChecked,kFALSE);
  fLadder    = 0;
  fLadderPos = 0;
  fThickness = 0;

  fENDFcode = 0;
  fIso      = 0;
  fLevel    = 0;
  fDeltaM   = 0;
  fHalfLife = 0;
  fNatAbun  = 0;
  fTH_F     = 0;
  fTG_F     = 0;
  fTH_S     = 0;
  fTG_S     = 0;
  fStatus   = 0;
  fRatio    = 0;
  fDecays   = 0;
}


//______________________________________________________________________________
TTarget::TTarget(const char *name, const char *title, TGeoManager *fGManager,
		 Int_t ladder, Int_t ladderPos, Double_t thickness,
		 Int_t Z, Int_t A)
{
  // -- Constructor
  SetDefined(kFALSE);
  SetUsed(kFALSE);
  fZ = Z;
  fA = A;

  fLadder    = ladder;
  fLadderPos = ladderPos;
  fThickness = thickness;

  Char_t gName[500];
  sprintf(gName,"fGeo_%s",name);
  //  fGeomTar  = new TGeoManager(gName,"radionuclides");
  fGeomTar = fGManager;
  fTableTar = fGeomTar->GetElementTable();
  //  fTableTar = new TGeoElementTable(200);
  //  fTableTar->BuildDefaultElements();
  //  fTableTar->GetElementRN(A,Z)->Print();

  fTarNuclei = fTableTar->GetElementRN(A,Z);
  //  fTarNuclei->Print();

  TObject::SetBit(kElementChecked,kFALSE);
  fENDFcode = ENDF(A,Z,IsoNo());
  fIso      = IsoNo();
  fLevel    = Level();
  fDeltaM   = MassEx();
  fHalfLife = HalfLife();
  fTitle    = title;
  if (!fTitle.Length()) fTitle = "?";
  fNatAbun  = NatAbun();
  fTH_F     = TH_F();
  fTG_F     = TG_F();
  fTH_S     = TH_S();
  fTG_S     = TG_S();
  fStatus   = Int_t(Status());
  fDecays   = 0;
  fRatio    = 0;
  MakeName(A,Z,IsoNo());
  if ((TMath::Abs(fHalfLife)<1.e-30) || fHalfLife<-1) Warning("ctor","Element %s has T1/2=%g [s]", fName.Data(), fHalfLife);

  SetName(name);

}


//______________________________________________________________________________
TTarget::TTarget(const TTarget & p) : TGeoElementRN(p)
{
  // -- Copy constructor.
 
}


//______________________________________________________________________________
void TTarget::Print()
{
  // -- Print.
  
  printf("Ladder Number:  %i     Ladder Position:  %i",fLadder,fLadderPos);
  fTarNuclei->Print();
}

Last change: Tue Dec 16 22:01:06 2008
Last generated: 2008-12-16 22:01

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.