VR-Forces Development_Version Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
include
simulationObjectEditorImpl
simulationObjectEditorApplication.h
Go to the documentation of this file.
1
/*******************************************************************************
2
** Copyright (c) 2014 MAK Technologies, Inc.
3
** All rights reserved.
4
*******************************************************************************/
5
8
9
#pragma once
10
11
#include "
simulationObjectEditorImpl/simulationObjectEditorImplDefines.h
"
12
#include "
vrfGuiCore/vrfGuiApplication.h
"
13
#include "
vrfGuiCore/entityMapperKey.h
"
14
#include <
vrvCore/DtDe.h
>
15
#include <
vrvCoreQt/DtQtMenuAssembler.h
>
16
17
#include "
vrfobjparam/componentDescriptorFactory.h
"
18
#include "
vrfobjparam/vrfObjectParameterFactory.h
"
19
#include "
vrfobjparam/vrfStateRepositoryUserExtensionFactory.h
"
20
21
#include <vlutil/vlString.h>
22
#include <matrix/vlVector.h>
23
24
class
DtSimulationModelSetLoader
;
25
class
DtBehaviorUi
;
26
class
DtBehaviorCanvas
;
27
class
DtUiElement
;
28
class
DtSimulationObjectEditorAppEventController
;
29
class
DtSimulationObjectEditorWindow
;
30
class
DtDisplayWidget
;
31
32
const
char
SETTINGS_DIRECTORY
[] =
"settingsDirectory"
;
33
const
char
SMS_FILE
[] =
"smsFile"
;
34
const
char
OPD_EDITOR_LOCATION
[] =
"opdEditorLocation"
;
35
const
char
VRF_LAUNCHER_LOCATION
[] =
"vrfLauncherLocation"
;
36
const
char
VISUAL_TERRAIN
[] =
"visualTerrain"
;
37
const
char
FILE_DIALOG_PRIORITY
[] =
"fileDialogPriority"
;
38
const
char
SNAP_TO_GRID
[] =
"snapToGrid"
;
39
const
char
APP_DATA_DIR
[] =
"appDataDir"
;
40
const
char
DATA_DIR
[] =
"dataDir"
;
41
const
char
VRF_LAYOUT_SETTINGS_FILE
[] =
"layoutSettingsFile"
;
42
43
namespace
makVrv
44
{
45
class
DtDeMainWindowProvider;
46
}
47
50
class
DT_DLL_simulationObjectEditorimpl
DtGuiOnlyMenuAssembler
:
public
makVrv::DtQtMenuAssembler
51
{
52
public
:
54
DtGuiOnlyMenuAssembler
(
makVrv::DtDe
&);
55
57
virtual
~
DtGuiOnlyMenuAssembler
();
58
59
protected
:
60
virtual
QMenuBar*
menuBar
();
61
virtual
QWidget
*
menuWindow
();
62
};
63
64
class
DT_DLL_simulationObjectEditorimpl
DtGuiOnlyMenuAssemblerCreator
:
public
makVrv::DtMenuAssemblerCreator
65
{
66
public
:
67
69
DtGuiOnlyMenuAssemblerCreator
()
70
{
71
}
72
74
virtual
~
DtGuiOnlyMenuAssemblerCreator
()
75
{
76
}
77
79
virtual
makVrv::DtMenuAssembler
*
create
(
makVrv::DtDe
& de);
80
81
};
82
87
class
DT_DLL_simulationObjectEditorimpl
DtGuiOnlyDe
:
public
makVrv::DtDe
88
{
89
public
:
91
DtGuiOnlyDe
();
92
94
virtual
~
DtGuiOnlyDe
();
95
96
protected
:
98
virtual
InitializationResult
initialize
() {
return
initialize
(
false
,
false
); };
99
virtual
InitializationResult
initialize
(
bool
abortOnFailure,
bool
useLicenseErrorDialog);
100
virtual
void
postInitialize
();
101
102
virtual
void
tick
(
double
);
103
};
104
107
class
DT_DLL_simulationObjectEditorimpl
DtParameterAlteringApplication
:
public
makVrf::DtVrfGuiApplication
108
{
109
public
:
110
112
DtParameterAlteringApplication
(
makVrv::DtVrvApplicationConfiguration
& config);
113
115
virtual
~
DtParameterAlteringApplication
();
116
120
virtual
void
initialize
(
int
argc,
char
** argv );
121
124
virtual
std::string startupValue(
const
std::string&)
const
;
125
127
virtual
void
setStartupValue(
const
std::string& key,
const
std::string& value);
128
130
static
DtParameterAlteringApplication
*
app
(
makVrv::DtDe
&);
131
132
virtual
void
run
();
133
135
virtual
void
setMainWindowCreatorFunction(
makVrv::DtDeMainWindowProvider
*);
136
137
public
:
141
146
virtual
void
addParameterType(
const
char
* controllerName,
const
char
* likeUi,
DtSimObjectParametersCreatorFcn
fcn = NULL) ;
147
virtual
void
addController(
const
char
* controllerName,
const
char
* descriptorName,
DtComponentDescriptorCreatorFcn
fcn = NULL) ;
148
virtual
void
addSensor(
const
char
* sensorName,
const
char
* descriptorName,
DtComponentDescriptorCreatorFcn
fcn = NULL) ;
149
virtual
void
addActuator(
const
char
* actuatorName,
const
char
* descriptorName,
DtComponentDescriptorCreatorFcn
fcn = NULL) ;
150
152
virtual
void
addUserExtentsion(
const
DtString
& type,
DtVrfSRUserExtensionCreatorFcn
fcn) ;
153
155
156
protected
:
158
virtual
void
setupMenu() = 0;
159
160
virtual
void
loadTranslationFiles(
const
std::string&);
161
162
virtual
void
assemble
();
163
164
virtual
void
dePostInitialize
();
165
167
virtual
void
loadPluginModulesExt
();
168
170
virtual
bool
updateCurrentGuiConfiguration
();
171
172
protected
:
173
std::map<std::string, std::string>
myStartupValues
;
174
std::map<DtString, DtVector>
myVisualPlacements
;
175
bool
myUpdateGuiConfiguration
;
176
};
177
179
class
DT_DLL_simulationObjectEditorimpl
DtSimulationObjectEditorApplication
:
public
DtParameterAlteringApplication
180
{
181
public
:
182
184
DtSimulationObjectEditorApplication
(
makVrv::DtVrvApplicationConfiguration
& config);
185
187
virtual
~
DtSimulationObjectEditorApplication
();
188
192
virtual
void
initialize
(
int
argc,
char
** argv );
193
195
static
DtSimulationObjectEditorApplication
*
app
(
makVrv::DtDe
&);
196
198
virtual
DtSimulationObjectEditorAppEventController
* appEventController();
199
201
virtual
DtSimulationObjectEditorWindow
* mainWindow();
202
204
virtual
void
addVisualTypeMapping(
const
DtString
&,
const
DtVector
&);
205
virtual
DtVector
visualPlacement(
const
DtString
&);
206
208
virtual
DtDisplayWidget
* editingWindow();
209
210
protected
:
212
virtual
void
setupMenu
();
213
214
public
:
216
boost::signal<void ()>
signal_preBehaviorUiCreate
;
217
219
boost::signal<void (DtBehaviorUi*)>
signal_postBehaviorUiCreate
;
220
222
boost::signal<void (DtBehaviorCanvas*, std::set<makVrf::DtEntityMapperKey>, std::string)> signal_preBehaviorCanvasCreate;
223
225
boost::signal<void (DtBehaviorCanvas*, QWidget*, std::set<makVrf::DtEntityMapperKey>, std::string)> signal_postBehaviorCanvasCreate;
226
228
boost::signal<void (DtUiElement*)>
signal_uiElementModified
;
229
230
protected
:
231
DtSimulationObjectEditorAppEventController
*
myAppEventController
;
232
};
Document ID: Generated on Tue Mar 8 22:13:38 EST 2016 from SVN revision 162938
Copyright © 2005-2015 VT MÄK. All Rights Reserved (
www.mak.com
)