CirclingWind: eliminate attributes min_vector, max_vector
[xcsoar.git] / src / UIReceiveBlackboard.cpp
blob330b6e110719f927cd684f8d6c76fd7798224661
1 /*
2 Copyright_License {
4 XCSoar Glide Computer - http://www.xcsoar.org/
5 Copyright (C) 2000-2013 The XCSoar Project
6 A detailed list of copyright holders can be found in the file "AUTHORS".
8 This program is free software; you can redistribute it and/or
9 modify it under the terms of the GNU General Public License
10 as published by the Free Software Foundation; either version 2
11 of the License, or (at your option) any later version.
13 This program is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details.
18 You should have received a copy of the GNU General Public License
19 along with this program; if not, write to the Free Software
20 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
24 #include "UIReceiveBlackboard.hpp"
25 #include "Interface.hpp"
26 #include "ActionInterface.hpp"
27 #include "ApplyVegaSwitches.hpp"
28 #include "ApplyExternalSettings.hpp"
29 #include "InfoBoxes/InfoBoxManager.hpp"
30 #include "Device/All.hpp"
31 #include "Input/TaskEventObserver.hpp"
32 #include "Task/ProtectedTaskManager.hpp"
33 #include "Components.hpp"
35 static TaskEventObserver task_event_observer;
37 void
38 UIReceiveSensorData()
40 XCSoarInterface::ReceiveGPS();
42 ApplyVegaSwitches();
44 bool modified = ApplyExternalSettings();
47 * Update the infoboxes if no location is available
49 * (if the location is available the CalculationThread will send the
50 * Command::CALCULATED_UPDATE message which will update them)
52 if (modified || !CommonInterface::Basic().location_available) {
53 InfoBoxManager::SetDirty();
54 InfoBoxManager::ProcessTimer();
58 void
59 UIReceiveCalculatedData()
61 XCSoarInterface::ReceiveCalculated();
63 ActionInterface::UpdateDisplayMode();
64 ActionInterface::SendUIState();
66 AllDevicesNotifyCalculatedUpdate(CommonInterface::Basic(),
67 CommonInterface::Calculated());
70 const ProtectedTaskManager::Lease lease(*protected_task_manager);
71 task_event_observer.Check(lease);