PumpStateChangeEventArgs.cs 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. using System;
  2. namespace Wayne.ForecourtControl
  3. {
  4. /// <summary>
  5. /// Event argument for a PumpStateChange Event.
  6. /// </summary>
  7. public class PumpStateChangeEventArgs : EventArgs
  8. {
  9. #region Fields
  10. private IPump pump;
  11. private PumpState pumpState;
  12. #endregion
  13. #region Constructor
  14. /// <summary>
  15. /// Constructor
  16. /// </summary>
  17. /// <param name="pump"></param>
  18. /// <param name="pumpState">The new pump state</param>
  19. public PumpStateChangeEventArgs(IPump pump, PumpState pumpState)
  20. {
  21. this.pump = pump;
  22. this.pumpState = pumpState;
  23. }
  24. #endregion
  25. #region Properties
  26. /// <summary>
  27. /// The new Pump state.
  28. /// </summary>
  29. public PumpState PumpState { get { return pumpState; } }
  30. /// <summary>
  31. /// The Pump whose state was changed.
  32. /// </summary>
  33. public IPump Pump
  34. {
  35. get { return pump; }
  36. set { pump = value; }
  37. }
  38. #endregion
  39. #region Debug methods
  40. /// <summary>
  41. /// Presents the class as a string.
  42. /// </summary>
  43. /// <returns></returns>
  44. public virtual string ToString(string format, IFormatProvider provider)
  45. {
  46. return String.Format(System.Globalization.CultureInfo.InvariantCulture,"PumpStateChange PumpId={0}, State={1}", pump.Id, pumpState.ToString()); ;
  47. }
  48. /// <summary>
  49. /// Presents the class as a string using the specified culture-specific format information.
  50. /// </summary>
  51. /// <returns></returns>
  52. public virtual string ToString(IFormatProvider provider)
  53. {
  54. return ToString("", provider);
  55. }
  56. /// <summary>
  57. /// Presents the class as a string using a format string.
  58. /// </summary>
  59. /// <returns></returns>
  60. public virtual string ToString(string format)
  61. {
  62. return ToString(format, System.Globalization.CultureInfo.InvariantCulture);
  63. }
  64. /// <summary>
  65. /// Presents the class as a string using a format string and the specified culture-specific format information.
  66. /// </summary>
  67. /// <returns></returns>
  68. public override string ToString()
  69. {
  70. return ToString("", System.Globalization.CultureInfo.InvariantCulture);
  71. }
  72. #endregion
  73. }
  74. }