FUSIONTankReading.cs 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194
  1. #region --------------- Copyright Dresser Wayne Pignone -------------
  2. /*
  3. * $Log: /Wrk/Support/ForecourtControl/Wrk/NfsControl/NfsTankReading.cs $
  4. *
  5. * 2 07-03-19 17:03 roger.månsson
  6. * Don't publish a class interface of NfsTankReading to COM.
  7. *
  8. * 1 07-03-09 15:42 roger.månsson
  9. *
  10. * 3 07-02-16 9:59 roger.månsson
  11. * FxCop changes
  12. *
  13. * 2 07-01-09 9:28 roger.månsson
  14. * Documentation fixes
  15. *
  16. * 1 07-01-05 15:12 roger.månsson
  17. * Created
  18. */
  19. #endregion
  20. using System;
  21. using System.Runtime.InteropServices;
  22. #if _SINP
  23. using Wayne.ForecourtControl.Nfs;
  24. #endif
  25. namespace Wayne.ForecourtControl.Fusion
  26. {
  27. /// <summary>
  28. /// Data structure carrying the information of a physical tank reading.
  29. /// </summary>
  30. [ComVisible(true)]
  31. [ClassInterface( ClassInterfaceType.None)]
  32. [ComDefaultInterface(typeof(ITankReadingEx))]
  33. public class FUSIONTankReading : ITankReadingEx
  34. {
  35. #region Fields
  36. int tankId;
  37. ProbeState state;
  38. DateTime dateTime;
  39. decimal fuelLevel;
  40. decimal fuelVolume;
  41. decimal normalizedFuelLevel;
  42. decimal waterLevel;
  43. decimal waterVolume;
  44. decimal fuelTemperature;
  45. UnitOfMeasure fuelLevelUnit;
  46. UnitOfMeasure waterLevelUnit;
  47. bool normalizedFuelLevelSupplied;
  48. #endregion
  49. #region Construction
  50. /// <summary>
  51. /// Constructor.
  52. /// </summary>
  53. ///
  54. internal FUSIONTankReading()
  55. {
  56. }
  57. /// <param name="tankId"></param>
  58. /// <param name="state"></param>
  59. /// <param name="dateTime"></param>
  60. /// <param name="fuelLevel"></param>
  61. /// <param name="normalizedFuelLevel"></param>
  62. /// <param name="waterLevel"></param>
  63. /// <param name="fuelTemperature"></param>
  64. /// <param name="fuelLevelUnit"></param>
  65. /// <param name="waterLevelUnit"></param>
  66. /// <param name="normalizedFuelLevelSupplied"></param>
  67. internal FUSIONTankReading(int tankId, ProbeState state, DateTime dateTime, decimal fuelLevel, decimal fuelVolume, decimal normalizedFuelLevel,
  68. decimal waterLevel, decimal waterVolume, decimal fuelTemperature, UnitOfMeasure fuelLevelUnit, UnitOfMeasure waterLevelUnit,
  69. bool normalizedFuelLevelSupplied)
  70. {
  71. this.tankId = tankId;
  72. this.state = state;
  73. this.dateTime = dateTime;
  74. this.fuelLevel = fuelLevel;
  75. this.fuelVolume = fuelVolume;
  76. this.normalizedFuelLevel = normalizedFuelLevel;
  77. this.waterLevel = waterLevel;
  78. this.waterVolume = waterVolume;
  79. this.fuelTemperature = fuelTemperature;
  80. this.fuelLevelUnit = fuelLevelUnit;
  81. this.waterLevelUnit = waterLevelUnit;
  82. this.normalizedFuelLevelSupplied = normalizedFuelLevelSupplied;
  83. }
  84. #endregion
  85. #region ITankReadingEx Members
  86. /// <summary>
  87. /// Tank where the reading was made.
  88. /// </summary>
  89. public int TankId
  90. {
  91. get { return tankId; }
  92. }
  93. /// <summary>
  94. /// Status of the probe reading.
  95. /// </summary>
  96. public ProbeState State
  97. {
  98. get { return state; }
  99. }
  100. /// <summary>
  101. /// Date and time when the phsical reading was made.
  102. /// </summary>
  103. public DateTime DateTime
  104. {
  105. get { return dateTime; }
  106. }
  107. /// <summary>
  108. /// Fuel level, read by the probe.
  109. /// </summary>
  110. public decimal FuelLevel
  111. {
  112. get { return fuelLevel; }
  113. }
  114. /// <summary>
  115. /// Fuel volume, read by the probe.
  116. /// </summary>
  117. public decimal FuelVolume
  118. {
  119. get { return fuelVolume; }
  120. }
  121. /// <summary>
  122. /// Normalized fuel volume recalculated to the normalized temperature (15° C).
  123. /// </summary>
  124. public decimal NormalizedFuelLevel
  125. {
  126. get { return normalizedFuelLevel; }
  127. }
  128. /// <summary>
  129. /// Water level, read by the probe.
  130. /// </summary>
  131. public decimal WaterLevel
  132. {
  133. get { return waterLevel; }
  134. }
  135. /// <summary>
  136. /// Water volume, read by the probe.
  137. /// </summary>
  138. public decimal WaterVolume
  139. {
  140. get { return waterVolume; }
  141. }
  142. /// <summary>
  143. /// Fuel temperature, read by the probe.
  144. /// </summary>
  145. public decimal FuelTemperature
  146. {
  147. get { return fuelTemperature; }
  148. }
  149. /// <summary>
  150. /// Unit of measure used for the fuel level.
  151. /// </summary>
  152. public UnitOfMeasure FuelLevelUnit
  153. {
  154. get { return fuelLevelUnit; }
  155. }
  156. /// <summary>
  157. /// Unit of measure for the water level.
  158. /// </summary>
  159. public UnitOfMeasure WaterLevelUnit
  160. {
  161. get { return waterLevelUnit; }
  162. }
  163. /// <summary>
  164. /// Indicates if the normalized fuel volume is supplied.
  165. /// </summary>
  166. public bool NormalizedFuelLevelSupplied
  167. {
  168. get { return normalizedFuelLevelSupplied; }
  169. }
  170. #endregion
  171. }
  172. }