# openPilotLog: Class List

Class List
Here are the classes, structs, unions and interfaces with brief descriptions:

experimental | Temporary namespace for experimental features. Will be removed in later versions
AAircraftEntry |
ADatabase | The DB class encapsulates the SQL database by providing fast access to hot database data
ADatabaseError | Custom Database Error derived from QSqlError. Extends text() adding "Database Error: " before the text
AEntry | The Entry class encapsulates table metadata(table name, row id) and data for new and existing entries in the database to operate on
AFlightEntry |
APilotEntry |
ATailEntry |
DataPosition |
UserInput | The EntryData struct. Contains ALL possible data. However depending on who is constructing it, different types are initialised. FUTURE: Would it be necessary to able to change data? George: I would say no because we dont want to fuck around with the entry. Collect data from user -> Pack it up in the entry -> Consume it
ABenchmark | Quick access to benchmarking two functions for the purpose of performance testing
ADataBaseSetup | Responsible for the inital setup of the database when the application is first launched. It creates the database in the specified default location and creates all required tables and views. It can also be used to reset the database currently used
ADownload |
Aircraft | The aircraft class
AircraftWidget |
ARunGuard | The RunGuard class ensures only a single instance of the application is running simultaneously
ASettings | The Settings class is a thin wrapper for the QSettings class, simplifying reading and writing of settings
AStrictRxValidator | Only returns Invalid or Acceptable
ATimer | Easy to use performance timer

Db

Basic API for accessing the database programatically. It is used to set up the initial connection and various basic queries can be executed using a set of static functions. When interfacing with the database for the purpose of adding, deleting or updating entries, the use of the entry class and its subclasses is recommended. This clas is not supposed to be instantiated, if you need a database object, use QSqlDatabase::database("qt_sql_default_connection");

DbInfo |
DebugWidget |
Entry_deprecated | The Entry class is the base class for database entries. It can be seen as a row in a table within the database
FirstRunDialog |
Flight |
HomeWidget |
LogbookWidget |
NewFlightDialog |
NewPilotDialog |
NewTailDialog | The NewTail class is a dialog for adding a new tail to the database or editing an existing one
Pilot |
PilotsWidget |
SettingsWidget |
TotalsWidget |