Skip to content

Commit

Permalink
Merge pull request #252 from hpuhr/devel
Browse files Browse the repository at this point in the history
Devel
  • Loading branch information
hpuhr authored Feb 17, 2023
2 parents e0538ea + 46f5e11 commit dc6d542
Show file tree
Hide file tree
Showing 138 changed files with 9,826 additions and 1,088 deletions.
3 changes: 3 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ find_package(Qt5Widgets)
find_package(Qt5Core)
find_package(Qt5OpenGL)
find_package(Qt5Charts)
find_package(Qt5Test)

message("Qt Widgets version: ${Qt5Widgets_VERSION}")

Expand Down Expand Up @@ -119,6 +120,7 @@ include_directories (
${Qt5Widgets_INCLUDE_DIRS}
${Qt5OpenGL_INCLUDE_DIRS}
${Qt5Charts_INCLUDE_DIRS}
${Qt5Test_INCLUDE_DIRS}
${Boost_INCLUDE_DIRS}
${SQLITE3_INCLUDE_DIR}
${LOG4CPP_INCLUDE_DIR}
Expand All @@ -140,6 +142,7 @@ target_link_libraries ( compass
Qt5::Core
Qt5::OpenGL
Qt5::Charts
Qt5::Test
${jASTERIX_LIBRARIES}
${Boost_LIBRARIES}
${LOG4CPP_LIBRARIES}
Expand Down
Binary file modified doc/user_manual/filters/figures/ui_filters.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
79 changes: 77 additions & 2 deletions doc/user_manual/live/live.tex
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,19 @@ \section{OSG View}

When clicking the \includegraphics[width=0.5cm,frame]{../../data/icons/right.png} button, the displayed time window will again follow the most recent time. This can also be achieved by moving the scrollbar to the most right position.

\subsection{Online/Offline Display}

To indicite if the displayed data is the currently most recent or from a previous point in time, the OSGView can display colored text (by default "Online" or "Offline"). After creation of the OSView and closing the application, this feature can be enabled using the configuration options listed in \nameref{sec:live_online_offline}.

\begin{figure}[H]
\hspace*{-2.5cm}
\includegraphics[width=19cm,frame]{figures/osgview_offline_status.png}
\caption{OSG View Overload Message}
\end{figure}

The online state text is shown if the application is in Live:Running mode and the most recent data is displayed. In all other states (other application mode or previous time window displayed) the offline state text is displayed.


\section{Overload Detection}

The ASTERIX Import task as well as the OSGView can detect and handle overload situations. If the real-time processing is not possible with the used workstation, display latency builds up - resulting in ASTERIX data queuing up. \\
Expand All @@ -66,13 +79,19 @@ \section{Overload Detection}
\caption{OSG View Overload Message}
\end{figure}

If the latency exceeds 11 seconds, ASTERIX data is skipped - therefore not decoded, added to the database, or displayed.
If the latency exceeds 60 seconds, ASTERIX data is skipped - therefore not decoded, added to the database, or displayed.

\section{Auto-Resume From Live:Paused}

If the application is switched to the Live:Paused mode, an automatic resume function is activated to ensure that the application is not inadvertently kept in this mode for too long. In its default settings, every 60 minutes a dialog is opened which allows user interaction to stay in the Live:Paused mode. If no action is taken, after 1 minute an automatic resume in the Live:Running mode is performed. \\

This feature can be configured using the configuration options listed in \nameref{sec:live_paused_resume}.

\section{Long-Term Running}

The application is optimized for long-term runnning, and can be run continuously. During Live mode, data older than 1 hour is removed from the database. \\

In this use case, usage of a rotating log file (as described in \nameref{sec:appendix_logging_rotate}) is recommened.
In this use case, usage of a rotating log file (as described in \nameref{sec:appendix_logging_rotate}) is recommended.

\section{Configuration Options of Interest}

Expand All @@ -97,6 +116,26 @@ \subsection{Hide Evaluation and View Points}
...
\end{lstlisting}

\subsection{Disable Adding/Removing Views}

In the file 'compass.json' the following parameters can be set:

\begin{lstlisting}
...
"disable_add_remove_views": false,
...
\end{lstlisting}

\subsection{Disable Switching Live to Offline Mode}

In the file 'compass.json' the following parameters can be set:

\begin{lstlisting}
...
"disable_live_to_offline_switch": false,
...
\end{lstlisting}

\subsection{Change Cache or Database Time Duration}

Per default, the RAM cache is limited to 5 minutes, while the database content is limited to 60 minutes. To change these durations (if workstation performance allows for it), the following values can be set in the file 'db\_content.json' (values in minutes):
Expand All @@ -108,8 +147,44 @@ \subsection{Change Cache or Database Time Duration}
...
\end{lstlisting}

\subsection{OSGView Online/Offline Display}
\label{sec:live_online_offline}

In the 'views.json' configuration file, in the respective OSGView section, the following parameters can be set:

\begin{lstlisting}
...
"offline_text": "Offline",
"offline_text_color_str": "#FF0000",
"online_text": "Online",
"online_text_color_str": "#00FF00",
"status_message_font_size": 24,
"use_online_messages": false,
...
\end{lstlisting}

The display of the text can be enabled using the 'use\_online\_messages' flag, the other parameters configure text size, text captions and text coloring.

\subsection{OSGView Disable Rotate}

In the file 'compass.json' the following parameters can be set:

\begin{lstlisting}
...
"disable_osgview_rotate": false,
...
\end{lstlisting}

\subsection{Auto-Resume From Live:Paused}
\label{sec:live_paused_resume}

In the file 'compass.json' the following values can be adapted to change how often the auto-resume question is asked, and the dialog wait time until the auto-resume is performed:

\begin{lstlisting}
...
"auto_live_running_resume_ask_time": 60,
"auto_live_running_resume_ask_wait_time": 1,
...
\end{lstlisting}


Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified doc/user_manual/osg/figures/osgview_measure1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified doc/user_manual/osg/figures/osgview_measure2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
22 changes: 20 additions & 2 deletions doc/user_manual/osg/osg_labels_tab.tex
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ \subsection{Labels Tab}
In the 'Labels' tab, several elements exist:

\begin{itemize}
\item \includegraphics[width=0.5cm,frame]{../../data/icons/edit.png} button: Edit label contents
\item \includegraphics[width=0.5cm,frame]{../../data/icons/edit.png} button: Label menu
\item Auto Label Checkbox: Toggles auto-label feature
\item Level of Detail: What level of detail should be used for labels
\item Data Sources: Selects which data sources to label and label direction
Expand All @@ -20,9 +20,19 @@ \subsection{Labels Tab}

When the auto-label feature is active and one or more data sources are selected for labeling, automatic labels are generated in the OSG View according to the content and label filter settings. \\

\subsubsection{Label Menu}

This menu allows showing all nor no data source labels, or to edit label contents.

\begin{figure}[H]
\center
\includegraphics[width=3cm,frame]{figures/osgview_label_tab_menu.png}
\caption{OSG View Label Tab Menu}
\end{figure}

\subsubsection{Label Contents}

When clicking the 'Edit Label Contents' button \includegraphics[width=0.5cm,frame]{../../data/icons/edit.png}, the label content specific to a DBContent can be selected. \\
Using the 'Label menu' button \includegraphics[width=0.5cm,frame]{../../data/icons/edit.png}, the label content specific to a DBContent can be edited. \\

The label contents are organized in a 3x3 matrix, the contents if the first 2 rows and columns are fixed while row 3 and column 3 can be edited.

Expand Down Expand Up @@ -63,7 +73,15 @@ \subsubsection{Label Contents}
\item Row 3, column 3: Time of Day
\end{itemize}
\end{itemize}
\ \\

Please note that the Mode A and the Mode C code are automatically displayed using the respective garbled/valid flag information as suffixes:

\begin{itemize}
\item (I)nvalid
\item (G)arbled
\item (S)moothed
\end{itemize}

\subsubsection{Automatic Labeling}

Expand Down
Binary file modified doc/user_manual/ui_overview/figures/main_window.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified doc/user_manual/ui_overview/figures/ui_file_menu.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified doc/user_manual/ui_overview/figures/ui_filters.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion doc/user_manual/ui_overview/ui_filters.tex
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ \section{Filters}
\caption{Filters Overview}
\end{figure}

At the top, the 'Use Filters' checkbox defines whether filtering is active. \\
At the top in the tab header, the 'Use Filters' checkbox defines whether filtering is active. \\

Each filter consists of a checkbox, defining if a filter is active (contributes to the search query), a triangle-button (to show/hide the filter configuration elements), a unique name, and a manage button (activates a context menu). \\

Expand Down
1 change: 1 addition & 0 deletions doc/user_manual/ui_overview/ui_main_window.tex
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@ \subsection{Main Menubar}
\item \nameref{sec:ui_overview_import_menu}: Import ASTERIX, NMEA data
\item \nameref{sec:ui_overview_config_menu}: Configure data sources, sectors
\item \nameref{sec:ui_overview_process_menu}: Various processing tasks for imported data
\item \nameref{sec:ui_overview_ui_menu}: Reset Views
\end{itemize}
\ \\

Expand Down
9 changes: 8 additions & 1 deletion doc/user_manual/ui_overview/ui_overview.tex
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ \subsection{File Menu}
\item New: Create new database file
\item Open: Open existing database file
\item Open Recent: Open recent existing database file
\item Export: Create a backup copy of the database file
\item Close: Close current database
\item Save Config: Save current configuration
\item Quit Without Saving Config: Quit application without saving configuration
Expand Down Expand Up @@ -130,9 +131,15 @@ \subsection{Process Menu}
\end{itemize}
\ \\

\subsection{UI Menu}
\label{sec:ui_overview_ui_menu}

The UI can be reset to a "default" state (as existed at application startup) using the "Reset Views" function.

\subfile{ui_import_data}
\subfile{ui_configuration}
\subfile{ui_postprocess} %TODO_V7 TODO_V8 proofread this next
\subfile{ui_postprocess}
\subfile{ui_ui}
\subfile{ui_data_sources}
\subfile{ui_filters}
%\subfile{ui_use_cases}
Expand Down
16 changes: 16 additions & 0 deletions doc/user_manual/ui_overview/ui_ui.tex
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
\section{UI}

\subsection{Reset Views}
\label{sec:ui_reset_views}

Using this feature, unsaved configuration changes can be reverted in the existing views. It can be used to restore a "default" state as existing at application startup (for the most important UI functions). \\

This function performs the following functions:
\begin{itemize}
\item Enables all data sources
\item Disables all filters
\item Resets all Views to their startup configuration
\end{itemize}
\ \\

Please note that newly created Views are not deleted in this function, although deleted ones are restored.
2 changes: 1 addition & 1 deletion doc/user_manual/user_manual.tex
Original file line number Diff line number Diff line change
Expand Up @@ -225,7 +225,7 @@
\begin{center}
\normalsize\textsf{by Helmut Puhr}\par
\medskip
\normalsize\textsf{Version 0.7.1 \textit{Wacky Wombat}}\par\textsf{HotFix1 Release}\par
\normalsize\textsf{Version 0.7.1 \textit{Wacky Wombat}}\par\textsf{HotFix2 Release}\par
\end{center}
\vspace*{\fill}
\begin{center}
Expand Down
2 changes: 2 additions & 0 deletions src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ include("${CMAKE_CURRENT_LIST_DIR}/interface/CMakeLists.txt")
include("${CMAKE_CURRENT_LIST_DIR}/util/CMakeLists.txt")
include("${CMAKE_CURRENT_LIST_DIR}/latex/CMakeLists.txt")
include("${CMAKE_CURRENT_LIST_DIR}/gui/CMakeLists.txt")
include("${CMAKE_CURRENT_LIST_DIR}/net/CMakeLists.txt")
include("${CMAKE_CURRENT_LIST_DIR}/filter/CMakeLists.txt")
include("${CMAKE_CURRENT_LIST_DIR}/job/CMakeLists.txt")
include("${CMAKE_CURRENT_LIST_DIR}/json/CMakeLists.txt")
Expand All @@ -21,6 +22,7 @@ include("${CMAKE_CURRENT_LIST_DIR}/task/CMakeLists.txt")
include("${CMAKE_CURRENT_LIST_DIR}/view/CMakeLists.txt")
include("${CMAKE_CURRENT_LIST_DIR}/unit/CMakeLists.txt")
include("${CMAKE_CURRENT_LIST_DIR}/eval/CMakeLists.txt")
include("${CMAKE_CURRENT_LIST_DIR}/rtcommand/CMakeLists.txt")

include("${CMAKE_CURRENT_LIST_DIR}/test/CMakeLists.txt")

Expand Down
1 change: 0 additions & 1 deletion src/assoc/target.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@ using namespace boost::posix_time;

namespace Association
{
bool Target::in_appimage_ {getenv("APPDIR") != nullptr};
// double Target::max_time_diff_ {15.0};
// double Target::max_altitude_diff_ {300.0};

Expand Down
2 changes: 2 additions & 0 deletions src/client/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,12 @@ target_sources(compass
PUBLIC
"${CMAKE_CURRENT_LIST_DIR}/client.h"
"${CMAKE_CURRENT_LIST_DIR}/mainwindow.h"
"${CMAKE_CURRENT_LIST_DIR}/mainwindow_commands.h"
"${CMAKE_CURRENT_LIST_DIR}/appmode.h"
PRIVATE
"${CMAKE_CURRENT_LIST_DIR}/client.cpp"
"${CMAKE_CURRENT_LIST_DIR}/mainwindow.cpp"
"${CMAKE_CURRENT_LIST_DIR}/mainwindow_commands.cpp"
)

add_executable ( compass_client "${CMAKE_CURRENT_LIST_DIR}/main.cpp")
Expand Down
Loading

0 comments on commit dc6d542

Please sign in to comment.