API Documentation
Loading...
Searching...
No Matches
ExternalApplicationManager.h
Go to the documentation of this file.
1#pragma once
2#include "DLLInfo.h"
3#include <NDEVR/QTModelManager.h>
4#include <NDEVR/Button.h>
5#include <NDEVR/ApplicationLauncherButtonManager.h>
6#include <NDEVR/FileFormat.h>
7namespace NDEVR
8{
9 class FactoryOptions;
10 /**--------------------------------------------------------------------------------------------------
11 \brief Manages an external application. This application may be run as a child process of the NDEVR
12 API. For example a CAD session or a program to setup a GPS device.
13 Programs often interact via a shared file which is handled through the IOFactory interface.
14 **/
16 {
17 public:
20 void setLauncher(const File& f);
23 void setWriteCameras(bool write_cameras);
24 void setAdditionalArgs(const String& args);
27 virtual FactoryOptions options(bool is_read, const FactoryParameters& params) const;
28 private:
29 File m_launcher;
30 File m_active_file;
31 File m_temp_folder;
32 Time m_file_last_modified_time;
33 ApplicationLauncherButtonManager* m_button_manager;
34 QTModelManager* m_manager;
35 bool m_write_cameras = false;
36 FileFormat m_format;
37 String m_additional_args;
38 };
39}
#define NDEVR_API
Definition DLLInfo.h:50
Creates a button for launching a 3rd party application. While the application is running the button i...
Definition ApplicationLauncherButton.h:15
A core widget that allows the user to click one of many button types.
Definition Button.h:66
Manages an external application. This application may be run as a child process of the NDEVR API....
Definition ExternalApplicationManager.h:16
void setAdditionalArgs(const String &args)
ExternalApplicationManager(const FileFormat &format, QTModelManager *manager)
ApplicationLauncherButtonManager * createAppLauncher()
virtual FactoryOptions options(bool is_read, const FactoryParameters &params) const
void setWriteCameras(bool write_cameras)
void setLauncher(const File &f)
virtual ~ExternalApplicationManager()
Definition ExternalApplicationManager.h:19
User-defined options that define preferences for importing and exporting using IOFactory objects.
Definition FactoryOptions.h:49
Data that describes a particular file format and how to use the format with the program....
Definition FileFormat.h:43
Logic for reading or writing to a file as well as navigating filesystems.
Definition File.h:48
A wrapper around DesignObjectLookup that provides signal and slot functionality and adds rendering ca...
Definition QTModelManager.h:105
The core String class for the NDEVR API.
Definition String.h:69
Represents a timestamp with utilities for manipulation and conversion.
Definition Time.h:54
Definition ACIColor.h:37
A container of input information that is to be filled with output information by an IOFactory.
Definition IOFactory.h:61