VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
textIf.h
Go to the documentation of this file.
1 /******************************************************************************
2  * Copyright (c) 2022 MAK Technologies, Inc.
3  * All rights reserved.
4  ******************************************************************************/
5 
6 #pragma once
7 
8 #include <vlutil/vlUtil.h>
9 #include <vlpi/entityIdentifier.h>
11 
12 #include <string>
13 #include <map>
14 #include <list>
15 
16 #include <boost/bind.hpp>
17 #include <boost/function.hpp>
18 
21 
22 class DtExerciseConn;
23 
24 namespace vrvControlToolkit
25 {
26  struct DtVrvControl_v1;
27 }
28 
29 class DtTextInterface
30 {
31 public:
32 
33  typedef std::list<std::string> TokenList;
34  typedef TokenList::const_iterator TokenIter;
35  typedef std::map<std::string, boost::function<void (const TokenList& )> > CommandMap;
36 
37  DtTextInterface(DtExerciseConn* controller);
38  virtual ~DtTextInterface();
39 
41  void readStdin();
42 
44  virtual void setTimeToQuit(bool yesNo);
45  virtual bool timeToQuit() const;
46 
47  void helpCmd(const TokenList& tokens);
48  void quitCmd(const TokenList& tokens);
49 
51  void resetViewCmd(const TokenList& tokens);
52  void absViewCmd(const TokenList& tokens);
53  void followViewCmd(const TokenList& tokens);
54  void mimicViewCmd(const TokenList& tokens);
55  void tetherViewCmd(const TokenList& tokens);
56  void trackViewCmd(const TokenList& tokens);
57  void mimicTrackViewCmd(const TokenList& tokens);
58  void tetherTrackViewCmd(const TokenList& tokens);
59  void mimicLocationTrackViewCmd(const TokenList& tokens);
60  void tetherLocationTrackViewCmd(const TokenList& tokens);
61  void spaceFollowViewCmd(const TokenList& tokens);
63 
64  void groundClampingCmd(const TokenList& tokens);
65  void modelSetCmd(const TokenList& tokens);
66  void tacticalGraphicsCmd(const TokenList& tokens);
67  void tacticalGraphicsLabelsCmd(const TokenList& tokens);
68  void tacticalGraphicsShowActiveCmd(const TokenList& tokens);
69  void radioCommsCmd( const TokenList& tokens );
70  void commLinesCmd( const TokenList& tokens );
71  void squawkIndicatorsCmd( const TokenList& tokens );
72  void entityLabelsCmd(const TokenList& tokens);
73  void entitySmoothingCmd(const TokenList& tokens);
74  void fireDetonateLinesCmd(const TokenList& tokens);
75  void fogCmd(const TokenList& tokens);
76  void elevationalFogCmd(const TokenList& tokens);
77  void hazeCmd(const TokenList& tokens);
78  void precipitationCmd(const TokenList& tokens);
79  void dateTimeCmd(const TokenList& tokens);
80  void timeScaleCmd(const TokenList& tokens);
81  void shadowCmd(const TokenList& tokens);
82  void shadowSettingsCmd(const TokenList& tokens);
83  void performanceStatsCmd(const TokenList& tokens);
84  void hudsCmd(const TokenList& tokens);
85  void remoteGraphicsSetCmd(const TokenList& tokens);
86  void wireframeCmd(const TokenList& tokens);
87  void observerModeCmd(const TokenList& tokens);
88  void zoomCmd(const TokenList& tokens);
89  void viewMagnificationCmd(const TokenList& tokens);
90  void sensorModeCmd(const TokenList& tokens);
91  void sensorBoolParameterCmd(const TokenList& tokens);
92  void sensorFloatParameterCmd(const TokenList& tokens);
93  void sensorStringParameterCmd(const TokenList& tokens);
94  void sensorIntParameterCmd(const TokenList& tokens);
95  void streamingVideoCmd(const TokenList& tokens);
96  void observerSpeedLinearCmd(const TokenList& tokens);
97  void observerSpeedRotationalCmd(const TokenList& tokens);
98  void observerSpeedOrbitalCmd(const TokenList& tokens);
99  void modelScaleTypeCmd(const TokenList& tokens);
100  void modelScaleFactorCmd(const TokenList& tokens);
101  void projectionCmd(const TokenList& tokens);
102  void audioCmd(const TokenList& tokens);
103  void audioVolumeCmd(const TokenList& tokens);
104  void terrainScalingCmd(const TokenList& tokens);
105  void terrainScaleFactorCmd(const TokenList& tokens);
106  void trackHistoryRibbonLengthCmd(const TokenList& tokens);
107  void trackHistoryRibbonSpacingCmd(const TokenList& tokens);
108  void trackHistoryRibbonTimeoutCmd(const TokenList& tokens);
109  void observerModeRestoreCmd(const TokenList& tokens);
110  void savedViewCmd(const TokenList& tokens);
111  void advancedLightingCmd(const TokenList& tokens);
112  void planarReflectionsCmd(const TokenList& tokens);
113  void lensFlareCmd(const TokenList& tokens);
114  void crepuscularRaysCmd(const TokenList& tokens);
115  void rainSplashCmd(const TokenList& tokens);
116  void waveSplashCmd(const TokenList& tokens);
117  void oceanSprayCmd(const TokenList& tokens);
118  void depthOfFieldCmd(const TokenList& tokens);
119  void hbaoCmd(const TokenList& tokens);
120  void entityHatCmd(const TokenList& tokens);
121  void tacticalGraphicsHatCmd(const TokenList& tokens);
122  void emitterVolumesCmd(const TokenList& tokens);
123  void senderIdCmd(const TokenList& tokens);
124  void receiverIdCmd(const TokenList& tokens);
125  void wakesCmd(const TokenList& tokens);
126  void laserDesignatorsCmd(const TokenList& tokens);
127  void wavesSprayEffectCmd(const TokenList& tokens);
128  void rotorWashDecalCmd(const TokenList& tokens);
129  void seaStateCmd(const TokenList& tokens); // sea state and optional direction (forces manual driven)
130  void seaStateCtrlCmd(const TokenList& tokens); // wind driven or manual
131  void swellStateCmd(const TokenList& tokens); // swell state and optional direction
132  void depthOfFieldAutoFocusCmd(const TokenList& tokens);
133  void depthOfFieldFocusDistanceCmd(const TokenList& tokens);
134  void depthOfFieldDepthCmd(const TokenList& tokens);
135 
136  void hbaoRadiusCmd(const TokenList& tokens);
137  void hbaoBiasCmd(const TokenList& tokens);
138  void hbaoExponentCmd(const TokenList& tokens);
139  void hbaoSmallScalarCmd(const TokenList& tokens);
140  void hbaoLargeScalarCmd(const TokenList& tokens);
141  void hbaoDepthClampModeCmd(const TokenList& tokens);
142 
143  void windDirectionCmd(const TokenList& tokens);
144  void elevationalWindDirectionCmd(const TokenList& tokens);
145  void windSpeedCmd(const TokenList& tokens);
146  void elevationalWindSpeedCmd(const TokenList& tokens);
147  void visibilityCmd(const TokenList& tokens);
148  void elevationalVisibilityCmd(const TokenList& tokens);
149  void globalEnvironmentCmd(const TokenList& tokens);
150  void snowGroundAccumulationCmd(const TokenList& tokens);
151  void snowRoadAccumulationCmd(const TokenList& tokens);
152  void snowMinimumElevationCmd(const TokenList& tokens);
153  void snowElevationTransitionCmd(const TokenList& tokens);
154  void rainGroundAccumulationCmd(const TokenList& tokens);
155  void observerCameraShakeCmd(const TokenList& tokens);
156  void observerCameraShakeIntensityCmd(const TokenList& tokens);
158  void pauseSimTimeCmd();
159  void resumeSimTimeCmd();
160 
161  void lightPointGroupColorCmd(const TokenList& tokens);
162 
163  void useGlobalTimeZoneCmd(const TokenList& tokens);
164  void detachViewCmd(const TokenList& tokens);
165  void hideModelOnAttachCmd(const TokenList& tokens);
166 
167  // Test for example
168  void diffuseLightScaleCmd(const TokenList& tokens);
169  void ambientLightScaleCmd(const TokenList& tokens);
170 
171  void occupantsVisibleCmd(const TokenList& tokens);
172  void occupantsVisibleOnEntityCmd(const TokenList& tokens);
173 
174  void openTerrainCmd(const TokenList& tokens);
175 
176  void wheelRotationCmd(const TokenList& tokens);
177  void adaptiveTickRateCmd(const TokenList& tokens);
178  void defaultRunwayLightGroupColorCmd(const TokenList& tokens);
179 
181  void createSensorViewCmd(const TokenList& tokens);
182 
184  void paperMapEnableCmd(const TokenList& tokens);
185  void paperMapGroupCmd(const TokenList& tokens);
186  void paperMapLayerTimeoutCmd(const TokenList& tokens);
187  void paperMapIntersectionOverrideCmd(const TokenList& tokens);
188 
190  void tidalStreamWakesCmd(const TokenList& tokens);
192  void tidalCurrentDirection(const TokenList& tokens);
194  void tidalCurrentSpeed(const TokenList& tokens);
195 
196  // public for using the command line interface
197  void processCmd(const std::string& buff);
198 
199 
200 protected:
201 
202  void prompt();
203  TokenList tokenize(const std::string& str, const std::string& delim);
205 
206  bool myTimeToQuit;
207  DtExerciseConn* myExconn;
209  DtEntityIdentifier mySenderId;
210  DtEntityIdentifier myReceiverId;
211 
212 };
void fogCmd(const TokenList &tokens)
void wakesCmd(const TokenList &tokens)
DtExerciseConn * myExconn
Definition: textIf.h:207
void seaStateCtrlCmd(const TokenList &tokens)
void paperMapEnableCmd(const TokenList &tokens)
Paper map (aka 2D Active Layer) commands.
void sensorStringParameterCmd(const TokenList &tokens)
void entityLabelsCmd(const TokenList &tokens)
void snowGroundAccumulationCmd(const TokenList &tokens)
void audioVolumeCmd(const TokenList &tokens)
void terrainMagnificationHighLodAngleCmd(const TokenList &tokens)
void tacticalGraphicsShowActiveCmd(const TokenList &tokens)
void rainGroundAccumulationCmd(const TokenList &tokens)
DtTextInterface(makVrf::DtVrlinkVrfRemoteController *controller)
void lightPointGroupColorCmd(const TokenList &tokens)
void createSensorViewCmd(const TokenList &tokens)
command for creating a sensor view for an entity
void advancedLightingCmd(const TokenList &tokens)
void hbaoExponentCmd(const TokenList &tokens)
void wavesSprayEffectCmd(const TokenList &tokens)
void viewMagnificationCmd(const TokenList &tokens)
void observerCameraShakeCmd(const TokenList &tokens)
void trackHistoryRibbonLengthCmd(const TokenList &tokens)
void tetherViewCmd(const TokenList &tokens)
void tetherLocationTrackViewCmd(const TokenList &tokens)
void modelScaleTypeCmd(const TokenList &tokens)
void depthOfFieldCmd(const TokenList &tokens)
void swellStateCmd(const TokenList &tokens)
void occupantsVisibleCmd(const TokenList &tokens)
Definition: textIf.h:65
void tidalCurrentDirection(const TokenList &tokens)
command set tidal current direction
void wheelRotationCmd(const TokenList &tokens)
void occupantsVisibleOnEntityCmd(const TokenList &tokens)
void spaceFollowViewCmd(const TokenList &tokens)
DtVrvControlTypeEnum
Enumeration of VR-Vantage Control Types.
Definition: vrvControlToolkitDataTypes.h:58
void elevationalWindDirectionCmd(const TokenList &tokens)
void radioCommsCmd(const TokenList &tokens)
void oceanSprayCmd(const TokenList &tokens)
void audioCmd(const TokenList &tokens)
void hudsCmd(const TokenList &tokens)
void sensorIntParameterCmd(const TokenList &tokens)
void observerCameraShakeIntensityCmd(const TokenList &tokens)
void processCmd(char *buff)
void seaStateCmd(const TokenList &tokens)
void fireDetonateLinesCmd(const TokenList &tokens)
void windDirectionCmd(const TokenList &tokens)
void groundClampingCmd(const TokenList &tokens)
void depthOfFieldDepthCmd(const TokenList &tokens)
void snowRoadAccumulationCmd(const TokenList &tokens)
void terrainScaleFactorCmd(const TokenList &tokens)
void trackHistoryRibbonTimeoutCmd(const TokenList &tokens)
void visibilityCmd(const TokenList &tokens)
void observerSpeedLinearCmd(const TokenList &tokens)
void paperMapLayerTimeoutCmd(const TokenList &tokens)
void useGlobalTimeZoneCmd(const TokenList &tokens)
void hbaoSmallScalarCmd(const TokenList &tokens)
void paperMapGroupCmd(const TokenList &tokens)
bool myTimeToQuit
Definition: textIf.h:271
void trackHistoryRibbonSpacingCmd(const TokenList &tokens)
void laserDesignatorsCmd(const TokenList &tokens)
void hbaoLargeScalarCmd(const TokenList &tokens)
void hbaoCmd(const TokenList &tokens)
void tacticalGraphicsLabelsCmd(const TokenList &tokens)
void detachViewCmd(const TokenList &tokens)
void hazeCmd(const TokenList &tokens)
void wireframeCmd(const TokenList &tokens)
void precipitationCmd(const TokenList &tokens)
void shadowSettingsCmd(const TokenList &tokens)
void tidalStreamWakesCmd(const TokenList &tokens)
command to enable/disable tidal stream wakes
void defaultRunwayLightGroupColorCmd(const TokenList &tokens)
void senderIdCmd(const TokenList &tokens)
void followViewCmd(const TokenList &tokens)
void shadowCmd(const TokenList &tokens)
void snowElevationTransitionCmd(const TokenList &tokens)
void crepuscularRaysCmd(const TokenList &tokens)
std::list< std::string > TokenList
Definition: textIf.h:33
void hbaoRadiusCmd(const TokenList &tokens)
static void quitCmd(char *s, DtTextInterface *a)
void snowMinimumElevationCmd(const TokenList &tokens)
void elevationalVisibilityCmd(const TokenList &tokens)
DtEntityIdentifier mySenderId
Definition: textIf.h:209
TokenList::const_iterator TokenIter
Definition: textIf.h:34
void packageAndSend(vrvControlToolkit::DtVrvControl_v1 *cmd)
void mimicLocationTrackViewCmd(const TokenList &tokens)
void savedViewCmd(const TokenList &tokens)
void hbaoBiasCmd(const TokenList &tokens)
void resumeSimTimeCmd()
void modelScaleFactorCmd(const TokenList &tokens)
void planarReflectionsCmd(const TokenList &tokens)
void sensorFloatParameterCmd(const TokenList &tokens)
void windSpeedCmd(const TokenList &tokens)
void lensFlareCmd(const TokenList &tokens)
void commLinesCmd(const TokenList &tokens)
DtEntityIdentifier myReceiverId
Definition: textIf.h:210
void depthOfFieldAutoFocusCmd(const TokenList &tokens)
void dateTimeCmd(const TokenList &tokens)
void absViewCmd(const TokenList &tokens)
void observerModeCmd(const TokenList &tokens)
void observerModeRestoreCmd(const TokenList &tokens)
void hbaoDepthClampModeCmd(const TokenList &tokens)
void globalEnvironmentCmd(const TokenList &tokens)
void tetherTrackViewCmd(const TokenList &tokens)
void waveSplashCmd(const TokenList &tokens)
void streamingVideoCmd(const TokenList &tokens)
void observerSpeedRotationalCmd(const TokenList &tokens)
void elevationalFogCmd(const TokenList &tokens)
Base structure for all controls.
Definition: vrvControlToolkitDataTypes.h:277
TokenList tokenize(const std::string &str, const std::string &delim)
void trackViewCmd(const TokenList &tokens)
void sensorBoolParameterCmd(const TokenList &tokens)
void openTerrainCmd(const TokenList &tokens)
void entitySmoothingCmd(const TokenList &tokens)
void resetViewCmd(const TokenList &tokens)
Functions for parsing command strings and sending the right commands.
Contains vrvControlToolkit control structures and defines.
void mimicViewCmd(const TokenList &tokens)
void observerSpeedOrbitalCmd(const TokenList &tokens)
void timeScaleCmd(const TokenList &tokens)
void entityHatCmd(const TokenList &tokens)
virtual ~DtTextInterface()
void rotorWashDecalCmd(const TokenList &tokens)
void tidalCurrentSpeed(const TokenList &tokens)
command set tidal current speed
void adaptiveTickRateCmd(const TokenList &tokens)
void receiverIdCmd(const TokenList &tokens)
void remoteGraphicsSetCmd(const TokenList &tokens)
void ambientLightScaleCmd(const TokenList &tokens)
void terrainScalingCmd(const TokenList &tokens)
void paperMapIntersectionOverrideCmd(const TokenList &tokens)
void performanceStatsCmd(const TokenList &tokens)
void tacticalGraphicsHatCmd(const TokenList &tokens)
void projectionCmd(const TokenList &tokens)
void pauseSimTimeCmd()
void zoomCmd(const TokenList &tokens)
void elevationalWindSpeedCmd(const TokenList &tokens)
void sensorModeCmd(const TokenList &tokens)
virtual makVrf::DtVrlinkVrfRemoteController * controller() const
std::map< std::string, boost::function< void(const TokenList &)> > CommandMap
Definition: textIf.h:35
virtual bool timeToQuit() const
void mimicTrackViewCmd(const TokenList &tokens)
void squawkIndicatorsCmd(const TokenList &tokens)
void modelSetCmd(const TokenList &tokens)
static void helpCmd(char *s, DtTextInterface *a)
void diffuseLightScaleCmd(const TokenList &tokens)
void rainSplashCmd(const TokenList &tokens)
void hideModelOnAttachCmd(const TokenList &tokens)
void emitterVolumesCmd(const TokenList &tokens)
void depthOfFieldFocusDistanceCmd(const TokenList &tokens)
CommandMap myCommands
Definition: textIf.h:208
virtual void setTimeToQuit(bool yesNo)
void observerSettingCmd(vrvControlToolkit::DtVrvControlTypeEnum settingType, const TokenList &tokens)
void tacticalGraphicsCmd(const TokenList &tokens)

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)