Simulation Core
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

60 lines
1.5 KiB

  1. module CZeroStringSpeed
  2. use CVoidEventHandlerCollection
  3. implicit none
  4. logical :: ZeroStringSpeed = .false.
  5. public
  6. type(VoidEventHandlerCollection) :: OnZeroStringSpeedChange
  7. private :: ZeroStringSpeed
  8. contains
  9. subroutine Set_ZeroStringSpeed(v)
  10. implicit none
  11. logical , intent(in) :: v
  12. #ifdef ExcludeExtraChanges
  13. if(ZeroStringSpeed == v) return
  14. #endif
  15. ZeroStringSpeed = v
  16. #ifdef deb
  17. print*, 'ZeroStringSpeed=', ZeroStringSpeed
  18. #endif
  19. call OnZeroStringSpeedChange%RunAll()
  20. end subroutine
  21. logical function Get_ZeroStringSpeed()
  22. implicit none
  23. Get_ZeroStringSpeed = ZeroStringSpeed
  24. !Get_ZeroStringSpeed = .true.
  25. end function
  26. subroutine Set_ZeroStringSpeed_WN(v)
  27. !DEC$ ATTRIBUTES DLLEXPORT :: Set_ZeroStringSpeed_WN
  28. !DEC$ ATTRIBUTES ALIAS: 'Set_ZeroStringSpeed_WN' :: Set_ZeroStringSpeed_WN
  29. implicit none
  30. logical , intent(in) :: v
  31. call Set_ZeroStringSpeed(v)
  32. end subroutine
  33. logical function Get_ZeroStringSpeed_WN()
  34. !DEC$ ATTRIBUTES DLLEXPORT :: Get_ZeroStringSpeed_WN
  35. !DEC$ ATTRIBUTES ALIAS: 'Get_ZeroStringSpeed_WN' :: Get_ZeroStringSpeed_WN
  36. implicit none
  37. Get_ZeroStringSpeed_WN = ZeroStringSpeed
  38. !Get_ZeroStringSpeed_WN = .true.
  39. end function
  40. subroutine Subscribe_ZeroStringSpeed()
  41. implicit none
  42. end subroutine
  43. end module CZeroStringSpeed