Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members  

AlElec.cpp

Go to the documentation of this file.
00001 
00002 //
00003 // CLASS AlElec:
00004 // Concrete class for AlElec Objects, inherits from "QvecBase"
00005 //
00006 // Author : C. Delaere, V. Lemaitre, O. van der Aa
00007 //
00009 
00010 
00011 #include "AlElec.h"
00012 #include "AlEflw.h"
00013 #include "AlTrack.h"
00014 #include "BankClasses.h"
00015 
00016 // default constructor 
00017 AlElec::AlElec()
00018 {  
00019   _theAssocEflw = NULL;
00020   _theAssocTrack= NULL;
00021 }
00022 
00023 // copy constructor
00024 AlElec::AlElec(const AlElec& oldEl):QvecBase(oldEl) 
00025 { 
00026   _theAssocEflw = oldEl._theAssocEflw;
00027   _theAssocTrack = oldEl._theAssocTrack;
00028 }
00029 
00030 // *Normal QvecBase methods (overwritten here)
00031 
00032 // specialised lock
00033 
00034 void AlElec::Lock(bool recurse)
00035 {
00036   if (recurse && (_theAssocEflw != NULL) ) _theAssocEflw->Lock(1);
00037   if (recurse && (_theAssocTrack != NULL) ) _theAssocTrack->Lock(1);
00038   _locked = 1;
00039 }
00040 void AlElec::unLock(bool recurse)
00041 {
00042   if (recurse && (_theAssocEflw != NULL) ) _theAssocEflw->unLock(1);
00043   if (recurse && (_theAssocTrack != NULL) ) _theAssocTrack->unLock(1);
00044   _locked = 0;
00045 }
00046 
00047 // *Special methods for the AlElec objects only
00048 
00049 // set the assoc. Eflw
00050 // Since there may be no associated Eflw,
00051 // it is beter to set the track before.
00052 void AlElec::setEflw(AlEflw* theEflw)
00053 {
00054  _theAssocEflw = theEflw;
00055  if ( _theAssocEflw != NULL ) 
00056    {
00057      //_A4V    = _theAssocEflw->A4V();
00058      //_qch    = _theAssocEflw->QCH();
00059    }
00060 }
00061 
00062 // get the assoc. Eflw
00063 AlEflw* AlElec::getEflw() const
00064 {
00065   return _theAssocEflw;
00066 }
00067 
00068 // set the assoc. Track
00069 // the associated track should always be != NULL
00070 void AlElec::setTrack(AlTrack* theTrack)
00071 {
00072   _theAssocTrack = theTrack;
00073   if ( _theAssocTrack != NULL )
00074    {
00075      _A4V    = _theAssocTrack->A4V();
00076      _qch    = _theAssocTrack->QCH();
00077    }
00078 }
00079 
00080 // get the assoc. Track
00081 AlTrack* AlElec::getTrack() const
00082 {
00083   return _theAssocTrack;
00084 }
00085 
00086 int   AlElec::IF() const{ if ( _theAssocTrack -> Qvec() -> QD != NULL && _theAssocTrack -> Qvec() -> QD -> AE != NULL )
00087                         return _theAssocTrack -> Qvec() -> QD -> AE -> IF;
00088                       else
00089                         return -1; }
00090 float AlElec::R1() const{ if ( _theAssocTrack -> Qvec() -> QD != NULL && _theAssocTrack -> Qvec() -> QD -> AE != NULL )
00091                         return _theAssocTrack -> Qvec() -> QD -> AE -> R1;
00092                      else
00093                         return -1; }
00094 float AlElec::R2() const{ if ( _theAssocTrack -> Qvec() -> QD != NULL && _theAssocTrack -> Qvec() -> QD -> AE != NULL )
00095                         return _theAssocTrack -> Qvec() -> QD -> AE -> R2;
00096                      else
00097                         return -1; }
00098 float AlElec::R3() const{ if ( _theAssocTrack -> Qvec() -> QD != NULL && _theAssocTrack -> Qvec() -> QD -> AE != NULL )
00099                         return _theAssocTrack -> Qvec() -> QD -> AE -> R3;
00100                      else
00101                         return -1; }
00102 float AlElec::R4() const{ if ( _theAssocTrack -> Qvec() -> QD != NULL && _theAssocTrack -> Qvec() -> QD -> AE != NULL )
00103                         return _theAssocTrack -> Qvec() -> QD -> AE -> R4;
00104                      else
00105                         return -1; }
00106 float AlElec::R5() const{ if ( _theAssocTrack -> Qvec() -> QD != NULL && _theAssocTrack -> Qvec() -> QD -> AE != NULL )
00107                         return _theAssocTrack -> Qvec() -> QD -> AE -> R5;
00108                      else
00109                         return -1; }
00110 float AlElec::R6() const{ if ( _theAssocTrack -> Qvec() -> QD != NULL && _theAssocTrack -> Qvec() -> QD -> AE != NULL )
00111                         return _theAssocTrack -> Qvec() -> QD -> AE -> R6;
00112                      else
00113                         return -1; }
00114 float AlElec::R7() const{ if ( _theAssocTrack -> Qvec() -> QD != NULL && _theAssocTrack -> Qvec() -> QD -> AE != NULL )
00115                         return _theAssocTrack -> Qvec() -> QD -> AE -> R7;
00116                      else
00117                         return -1; }
00118 float AlElec::EC() const{ if ( _theAssocTrack -> Qvec() -> QD != NULL && _theAssocTrack -> Qvec() -> QD -> AE != NULL )
00119                         return _theAssocTrack -> Qvec() -> QD -> AE -> EC;
00120                      else
00121                         return -1; }
00122 int   AlElec::IP() const{ if ( _theAssocTrack -> Qvec() -> QD != NULL && _theAssocTrack -> Qvec() -> QD -> AE != NULL )
00123                         return _theAssocTrack -> Qvec() -> QD -> AE -> IP;
00124                      else
00125                         return -1; }
00126 float AlElec::E1() const{ if ( _theAssocTrack -> Qvec() -> QD != NULL && _theAssocTrack -> Qvec() -> QD -> AE != NULL )
00127                         return _theAssocTrack -> Qvec() -> QD -> AE -> E1;
00128                      else
00129                         return -1; }
00130 float AlElec::E2() const{ if ( _theAssocTrack -> Qvec() -> QD != NULL && _theAssocTrack -> Qvec() -> QD -> AE != NULL )
00131                         return _theAssocTrack -> Qvec() -> QD -> AE -> E2;
00132                      else
00133                         return -1; }
00134 float AlElec::E3() const{ if ( _theAssocTrack -> Qvec() -> QD != NULL && _theAssocTrack -> Qvec() -> QD -> AE != NULL )
00135                         return _theAssocTrack -> Qvec() -> QD -> AE -> E3;
00136                      else
00137                         return -1; }
00138 int   AlElec::FR() const{ if ( _theAssocTrack -> Qvec() -> QD != NULL && _theAssocTrack -> Qvec() -> QD -> AE != NULL )
00139                         return _theAssocTrack -> Qvec() -> QD -> AE -> FR;
00140                      else
00141                         return -1; }
00142 int AlElec::PE() const{ if (  _theAssocTrack -> Qvec() -> QD != NULL && _theAssocTrack -> Qvec() -> QD -> AE != NULL )
00143                         return _theAssocTrack -> Qvec() -> QD -> AE -> PE;
00144                      else
00145                         return -1; }
00146 

Generated at Wed Jun 18 17:19:09 2003 for ALPHA++ by doxygen1.2.8.1 written by Dimitri van Heesch, © 1997-2001