# openPilotLog: experimental Namespace Reference

experimental Namespace Reference

Temporary namespace for experimental features. Will be removed in later versions. More...

## Classes

struct | AAircraftEntry
class | ADatabase
| The DB class encapsulates the SQL database by providing fast access to hot database data. More...
class | ADatabaseError
| Custom Database Error derived from QSqlError. Extends text() adding "Database Error: " before the text. More...
class | AEntry
| The Entry class encapsulates table metadata(table name, row id) and data for new and existing entries in the database to operate on. More...
class | AFlightEntry
struct | APilotEntry
struct | ATailEntry
struct | DataPosition
class | 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. More...

## Typedefs

using | ColName = QString
| An alias for QString. More...
using | ColData = QVariant
using | TableName = QString
using | RowId = int
using | TableNames = QStringList
using | TableData = QMap< ColName, ColData >
using | ColumnData = QPair< ColName, ColData >
using | ColumnNames = QStringList
using | TableColumns = QMap< TableName, ColumnNames >
using | EntryData = QMap< QString, QString >

## Enumerations

enum | ADatabaseTarget { airport_identifier_icao, airport_identifier_iata, airport_identifier_all, airport_names, pilots, registrations, aircraft, companies, tails }
| The DBTarget enum provides the items for which QCompleter completion lists are provided from the database.

## Functions

ADatabase * | aDB ()
| Convinience function that returns instance of DataBase. Instead of this: DataBase::getInstance().commit(...) Write this: aDB()->commit(...)
UserInput | newPilotInput (EntryData ed)
UserInput | newFlightInput (EntryData ed)
UserInput | newAircraftInput (EntryData ed)

## Variables

auto const | DEFAULT_PILOT_POSITION = DataPosition("pilots", 0)
auto const | DEFAULT_TAIL_POSITION = DataPosition("tails", 0)
auto const | DEFAULT_AIRCRAFT_POSITION = DataPosition("aircraft", 0)
auto const | DEFAULT_FLIGHT_POSITION = DataPosition("flights", 0)

## Detailed Description

Temporary namespace for experimental features. Will be removed in later versions.

Todo:
  Remove this namespace (and learn about some nice \something of doxygen) Decide documentation style. https://www.doxygen.nl/manual/docblocks.html#specialblock

## Typedef Documentation

## ColName

using experimental::ColName = typedef QString

An alias for QString.

Very long description with markdown?

# Header