hooks_base.c 861 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. #include <stdio.h>
  2. #include "sim_api.h"
  3. #include "hooks_base.h"
  4. void parmacs_roi_begin() {
  5. printf("[HOOKS] Entering ROI\n"); fflush(NULL);
  6. SimRoiStart();
  7. }
  8. void parmacs_roi_end() {
  9. SimRoiEnd();
  10. printf("[HOOKS] Leaving ROI\n"); fflush(NULL);
  11. }
  12. void parmacs_iter_begin(int iter)
  13. {
  14. }
  15. void parmacs_iter_end(int iter)
  16. {
  17. }
  18. // Fortran linkage
  19. void parmacs_roi_begin_() { parmacs_roi_begin(); }
  20. void parmacs_roi_end_() { parmacs_roi_end(); }
  21. void parmacs_iter_begin_(int iter) { parmacs_iter_begin(iter); }
  22. void parmacs_iter_end_(int iter) { parmacs_iter_end(iter); }
  23. void parmacs_setup(void) __attribute ((constructor));
  24. void parmacs_setup(void) {
  25. #if defined(PARMACS_NO_ROI)
  26. parmacs_roi_begin();
  27. #endif
  28. }
  29. void parmacs_shutdown(void) __attribute ((destructor));
  30. void parmacs_shutdown(void) {
  31. #if defined(PARMACS_NO_ROI)
  32. parmacs_roi_end();
  33. #endif
  34. }