aboutsummaryrefslogtreecommitdiff
path: root/Python
diff options
context:
space:
mode:
Diffstat (limited to 'Python')
-rw-r--r--Python/pywarpx/callbacks.py30
1 files changed, 30 insertions, 0 deletions
diff --git a/Python/pywarpx/callbacks.py b/Python/pywarpx/callbacks.py
index 9ae36266e..8fa08e6ef 100644
--- a/Python/pywarpx/callbacks.py
+++ b/Python/pywarpx/callbacks.py
@@ -250,6 +250,8 @@ class CallbackFunctions(object):
# --- Now create the actual instances.
_afterinit = CallbackFunctions('afterinit')
+_beforecollisions = CallbackFunctions('beforecollisions')
+_aftercollisions = CallbackFunctions('aftercollisions')
_beforeEsolve = CallbackFunctions('beforeEsolve')
_poissonsolver = CallbackFunctions('poissonsolver')
_afterEsolve = CallbackFunctions('afterEsolve')
@@ -314,6 +316,34 @@ def isinstalledafterinit(f):
return _afterinit.isinstalledfuncinlist(f)
# ----------------------------------------------------------------------------
+def callfrombeforecollisions(f):
+ installbeforecollisions(f)
+ return f
+def installbeforecollisions(f):
+ "Adds a function to the list of functions called before collisions"
+ _beforecollisions.installfuncinlist(f)
+def uninstallbeforecollisions(f):
+ "Removes the function from the list of functions called before collisions"
+ _beforecollisions.uninstallfuncinlist(f)
+def isinstalledbeforecollisions(f):
+ "Checks if the function is called before collisions"
+ return _beforecollisions.isinstalledfuncinlist(f)
+
+# ----------------------------------------------------------------------------
+def callfromaftercollisions(f):
+ installaftercollisions(f)
+ return f
+def installaftercollisions(f):
+ "Adds a function to the list of functions called after collisions"
+ _aftercollisions.installfuncinlist(f)
+def uninstallaftercollisions(f):
+ "Removes the function from the list of functions called after collisions"
+ _aftercollisions.uninstallfuncinlist(f)
+def isinstalledaftercollisions(f):
+ "Checks if the function is called after collisions"
+ return _aftercollisions.isinstalledfuncinlist(f)
+
+# ----------------------------------------------------------------------------
def callfrombeforeEsolve(f):
installbeforeEsolve(f)
return f