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.
 
 
 
 
 
 

59 lines
1.5 KiB

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