diff --git a/DDG4/python/DDG4.py b/DDG4/python/DDG4.py
index 3e80c91f622383465d9e87b606bc78d19f78aa9f..c30c951912dab6005c59e3f407c5a86569959205 100644
--- a/DDG4/python/DDG4.py
+++ b/DDG4/python/DDG4.py
@@ -477,12 +477,23 @@ class Geant4:
           sdtyp = self.sensitive_types[typ]
         print '+++  %-32s type:%-12s  --> Sensitive type: %s'%(o.name(), typ, sdtyp,)
 
-  def setupDetector(self,name,sensitive_type):
+  def setupDetector(self,name,action):
+    #fg: allow the action to be a tuple with parameter dictionary
+    sensitive_type = ""
+    parameterDict = {}
+    if isinstance( action, tuple ):
+      sensitive_type = action[0]
+      parameterDict = action[1]
+    else:
+      sensitive_type = action
+    
     seq = SensitiveSequence(self.kernel(),'Geant4SensDetActionSequence/'+name)
     act = SensitiveAction(self.kernel(),sensitive_type+'/'+name+'Handler',name)
     seq.enableUI()
     act.enableUI()
     seq.add(act)
+    for parameter, value in parameterDict.iteritems():
+      setattr( act, parameter, value)
     return (seq,act)
 
   def setupCalorimeter(self,name,type=None):