]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TFluka/queffc.cxx
Routines interfaced to TFlukaCerenkov and TFlukaGeo.
[u/mrichter/AliRoot.git] / TFluka / queffc.cxx
index d5ec165c030af486db69002f33e17da6385c8a9b..78abbb506abe6199e7f492756b98980aeb2713db 100644 (file)
@@ -2,6 +2,11 @@
 #include "Ftrackr.h"  //(TRACKR) fluka common
 #include "Fiounit.h"  //(IOUNIT) fluka common
 #include "Fopphcm.h"  //(OPPHCM) fluka common
+#include "TGeoMaterial.h"
+#include "TFlukaCerenkov.h"
+#include "TFlukaGeo.h"
+#include "TGeoManager.h"
+
 #ifndef WIN32
 # define queffc queffc_
 #else
@@ -11,10 +16,9 @@ extern "C" {
 Double_t queffc(Double_t& wvlngt, Double_t& omgpho, Int_t& mmat)
 {
     printf("queffc called  %e %e %d \n", wvlngt, omgpho, mmat);
-    if (wvlngt  > OPPHCM.wvmxsn || wvlngt < OPPHCM.wvmnsn) {
-       return (0.);
-    } else {
-       return (OPPHCM.opsnmx);
-    }
+    TFluka* fluka =  (TFluka*) gMC;
+    TGeoMaterial*    material =  (TGeoMaterial*) (gGeoManager->GetListOfMaterials())->At(fluka->GetMaterialIndex(mmat));
+    TFlukaCerenkov*  cerenkov = dynamic_cast<TFlukaCerenkov*> (material->GetCerenkovProperties());
+    return (cerenkov->GetQuantumEfficiencyByWaveLength(wvlngt));
 }
 }