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.
26 #include "Hardware/ModelType.hpp"
31 // asset/registration data
32 extern TCHAR asset_number
[];
35 * Finds the unique ID of this PDA
37 void ReadAssetNumber();
40 #ifdef HAVE_MODEL_TYPE
42 extern ModelType global_model_type
;
46 #define global_model_type ModelType::GENERIC
51 * Returns whether this is a debug build.
65 * Returns whether the application is running on an embedded platform.
66 * @return True if host hardware is an embedded platform, False otherwise
72 #if defined(_WIN32_WCE) || defined(ANDROID)
80 * Returns whether the application is running on Pocket PC / Windows
81 * CE / Windows Mobile.
95 * Returns whether the application is running on an old version of
96 * Windows CE (pre 5.0). Starting with version 5.0, several bug
97 * workarounds are disabled at compile time.
103 #if defined(_WIN32_WCE) && _WIN32_WCE < 0x0500
111 * Is XCSoar running on ancient and slow hardware? If yes, then some
112 * expensive UI features are disabled.
118 #if defined(_WIN32_WCE) && _WIN32_WCE < 0x0400
119 /* Windows CE 3.0 (PPC2000 & PPC2002) */
122 /* we assume that all other platforms are fast enough */
128 * Returns whether the application is running on a HP31x
129 * @return True if host hardware is a HP31x, False otherwise
134 return global_model_type
== ModelType::HP31X
;
138 * Returns whether the application is running on an Altair
139 * @return True if host hardware is an Altair, False otherwise
153 * Returns whether the application is running on Android
167 * Does this device have little main memory? On those, some expensive
168 * features are disabled.
174 return IsAncientHardware() || IsAltair();
178 * Returns whether the application is compiled with IOIOLib
192 * Does this device have a pointer device? (mouse or touch screen)
193 * @return True if a touch screen or mouse is assumed for the hardware
194 * that XCSoar is running on, False if the hardware has only buttons
204 * Does this device have a touch screen? This is useful to know for
205 * sizing controls, as a touch screen may require bigger areas.
211 return IsAndroid() || (IsWindowsCE() && !IsAltair());
215 * Does this device have a keyboard device?
216 * @return True if a keyboard is assumed for the hardware
217 * that XCSoar is running on, False if the hardware has no keyboard
223 return !IsEmbedded();
227 * Does this device have a display with colors?
229 * XXX not yet implemented!