96 -> std::vector<BoardFlagsEvent> {
97 std::vector<BoardFlagsEvent> events;
98 if (!m_has_previous_) {
99 m_has_previous_ =
true;
105 if (fresh.m_door != m_previous_.m_door) {
109 if (fresh.m_innerWaterBunker != m_previous_.m_innerWaterBunker) {
110 events.push_back(fresh.m_innerWaterBunker
114 if (fresh.m_brewingUnit != m_previous_.m_brewingUnit) {
120 if (fresh.m_bunkerForBulkMissing != m_previous_.m_bunkerForBulkMissing) {
121 events.push_back(fresh.m_bunkerForBulkMissing
135 if (fresh.m_emptyLeftCoffeBunker != m_previous_.m_emptyLeftCoffeBunker) {
136 events.push_back(fresh.m_emptyLeftCoffeBunker
140 if (fresh.m_emptyRightCoffeBunker !=
141 m_previous_.m_emptyRightCoffeBunker) {
142 events.push_back(fresh.m_emptyRightCoffeBunker
147 if (fresh.m_leftBunkerCoffeeMissing !=
148 m_previous_.m_leftBunkerCoffeeMissing) {
149 events.push_back(fresh.m_leftBunkerCoffeeMissing
153 if (fresh.m_rightBunkerCoffeeOrBothMissing !=
154 m_previous_.m_rightBunkerCoffeeOrBothMissing) {
155 events.push_back(fresh.m_rightBunkerCoffeeOrBothMissing
161 if (fresh.m_emptyLeftBulkBunker != m_previous_.m_emptyLeftBulkBunker) {
162 events.push_back(fresh.m_emptyLeftBulkBunker
166 if (fresh.m_emptyRightBulkBunker != m_previous_.m_emptyRightBulkBunker) {
167 events.push_back(fresh.m_emptyRightBulkBunker
173 if (fresh.m_systemLackOfWater != m_previous_.m_systemLackOfWater) {
174 events.push_back(fresh.m_systemLackOfWater
178 if (fresh.m_systemOverPressure != m_previous_.m_systemOverPressure) {
179 events.push_back(fresh.m_systemOverPressure
185 if (fresh.m_boilerTooLow != m_previous_.m_boilerTooLow) {
186 events.push_back(fresh.m_boilerTooLow
190 if (fresh.m_steamBoilTooLow != m_previous_.m_steamBoilTooLow) {
191 events.push_back(fresh.m_steamBoilTooLow
200 const bool old_milk_missing =
201 m_previous_.m_milkMissing || m_previous_.m_milkMissing2;
202 const bool new_milk_missing = fresh.m_milkMissing || fresh.m_milkMissing2;
203 if (old_milk_missing != new_milk_missing) {
207 const bool old_needs_diagnosis = m_previous_.m_selfDiagnosisBrewingUnit ||
208 m_previous_.m_selfDiagnosisBrewingUnit2;
209 const bool new_needs_diagnosis =
210 fresh.m_selfDiagnosisBrewingUnit || fresh.m_selfDiagnosisBrewingUnit2;
211 if (old_needs_diagnosis != new_needs_diagnosis) {
212 events.push_back(new_needs_diagnosis
218 if (fresh.m_heatingWaterBoilerTimeToLong !=
219 m_previous_.m_heatingWaterBoilerTimeToLong) {
220 events.push_back(fresh.m_heatingWaterBoilerTimeToLong
224 if (fresh.m_heatingSteamBoilerTimeToLong !=
225 m_previous_.m_heatingSteamBoilerTimeToLong) {
226 events.push_back(fresh.m_heatingSteamBoilerTimeToLong
230 if (fresh.m_hotSteamBoilSensError != m_previous_.m_hotSteamBoilSensError) {
231 events.push_back(fresh.m_hotSteamBoilSensError
235 if (fresh.m_hotWaterBoilSensError != m_previous_.m_hotWaterBoilSensError) {
236 events.push_back(fresh.m_hotWaterBoilSensError
242 if (fresh.m_brewingMechError != m_previous_.m_brewingMechError) {
243 events.push_back(fresh.m_brewingMechError
247 if (fresh.m_waterSupplyError != m_previous_.m_waterSupplyError) {
248 events.push_back(fresh.m_waterSupplyError
252 if (fresh.m_rightCoffeeGrindError != m_previous_.m_rightCoffeeGrindError) {
253 events.push_back(fresh.m_rightCoffeeGrindError
257 if (fresh.m_leftCoffeeGrindError != m_previous_.m_leftCoffeeGrindError) {
258 events.push_back(fresh.m_leftCoffeeGrindError
269 m_previous_.m_emptyRightCoffeBunker;
271 m_previous_ = next_previous;