![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 * Copyright (c) 2011 MAK Technologies, Inc. 00003 * All rights reserved. 00004 *****************************************************************************/ 00005 /****************************************************************************** 00006 * $RCSfile: DtHla1516eConnectionWidget.h,v $ $Revision: 1.11 $ $State: Exp $ 00007 *****************************************************************************/ 00008 00012 00013 #pragma once 00014 00015 #include <vrvHla1516eQt/vrvHla1516eQt.h> 00016 00017 #include <vrvHla1516eQt/DtHla1516eConnectionInterface.h> 00018 00019 #include <vrvHla1516eQt/DtHlaConnectionConfigurationLayout.hpp> 00020 00021 #include <QtGui/QWidget> 00022 00023 class QPushButton; 00024 class QGridLayout; 00025 class QCheckBox; 00026 class QComboBox; 00027 class QGroupBox; 00028 class QLineEdit; 00029 class QLabel; 00030 00031 namespace makVrv 00032 { 00033 00034 class DtHla1516eConnectionLogic; 00035 00038 class DT_DLL_VRVHLA1516EQT DtHla1516eConnectionWidget : public QWidget, 00039 public DtHla1516eConnectionInterface 00040 { Q_OBJECT; 00041 public: 00042 00044 DtHla1516eConnectionWidget( DtDe& de, QWidget* parent ); 00045 00047 virtual ~DtHla1516eConnectionWidget(); 00048 00050 virtual void setExerciseName( const std::string& exerciseName ); 00051 00053 virtual void setFederateType( const std::string& federateType ); 00054 00056 virtual void setFederateName( const std::string& federateName ); 00057 00059 virtual void setFedFileName( const std::string& fedFileName ); 00060 00062 virtual void setRPRFomVersion( double rprFomVersion, int rprFomRevision = 1 ); 00063 00065 virtual void setFomMapperFileName( const std::string& fomMapperFileName ); 00066 00068 virtual void setFomMapperInitString( const std::string& fomMapperInitString ); 00069 00071 virtual void setDdmEnabled( bool enabled ); 00072 00074 virtual void setUseAdvisories( bool enabled ); 00075 00077 virtual void setPublishObserver( bool isPublished ); 00078 00080 virtual void setViewControl( bool isEnabled ); 00081 00083 virtual void setConnectionStatus( DtHla1516eConnectionInterface::ConnectionStatus status ); 00084 00086 virtual void setAutoConnectEnabled( bool enabled ); 00087 00089 virtual void setAppNumber(int appNumber); 00090 00092 virtual void setSiteId(int siteId); 00093 00095 virtual void addFomModule(const std::string&); 00096 00098 virtual void removeFomModule(const std::string&); 00099 00101 virtual void clearFomModules(); 00102 00103 protected: 00104 00107 void setupGui(); 00108 00111 QVBoxLayout* createButtonLayout(); 00112 00115 void connectToWidgetSignals(); 00116 00127 virtual bool parseFomVerRev( const QString& verRevStr, 00128 double& version, int& revision ); 00129 00130 protected slots: 00131 00132 void onFederationNameString_textChanged( QString ); 00133 void onFedFileNameString_textChanged( QString ); 00134 void onFedFileBrowseButton_released(); 00135 void onFederateTypeString_textChanged( QString ); 00136 void onFederateNameString_textChanged( QString ); 00137 void onIgnoreAdvisoriesCheckBox_stateChanged( int ); 00138 void onImplicitGeographicDdmCheckBox_stateChanged( int ); 00139 void onRprFomRadioButton_toggled( bool ); 00140 void onRprFomVersionComboBox_activated( QString ); 00141 void onCustomFomRadioButton_toggled( bool ); 00142 void onFomMapperLibraryName_textChanged( QString ); 00143 void onFomMapperInitString_textChanged( QString ); 00144 void onPublishObserversCheckBox_stateChanged( int ); 00145 void onListenForViewControlsCheckBox_stateChanged( int ); 00146 void onAdvancedButton_checkChanged(bool checked); 00147 void onSiteId_changed(int val); 00148 void onAppNumber_changed(int val); 00149 void onAddFomModuleButton_released(); 00150 void onRemoveFomModuleButtonClicked(); 00151 virtual void onFomItemSelectionChanged(); 00152 00153 void onConnectButton_clicked(); 00154 void onMakeAutoButton_clicked(); 00155 00156 protected: 00157 00158 Ui::HlaConnectionConfigurationLayout myHlaConfigurationLayout; 00159 00160 DtHla1516eConnectionInterface::ConnectionStatus myStatus; 00161 00162 DtHla1516eConnectionLogic* myLogic; 00163 00164 DtDe& myDe; 00165 00166 QVBoxLayout* myDataLayout; 00167 QPushButton* myConnectButton; 00168 QPushButton* myMakeAutoButton; 00169 00170 }; 00171 00172 }