MAK RTIspy API Documentation for HLA 1.3
latencyTestDialog.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 2008 MaK Technologies, Inc.
00003 ** All rights reserved.
00004 *********************************************************************/
00005 /*********************************************************************
00006 ** $RCSfile: latencyTestDialog.h,v $ $Revision: 1.3 $ $State: Exp $
00007 *********************************************************************/
00008 
00011 
00012 #ifndef latencyTestDialog_H_
00013 #define latencyTestDialog_H_
00014 
00015 #include "ui_latencyTestDialogUI.h"
00016 #include <assistantConnectionInfo.h>
00017 #include <rtiMsConfig.h>
00018 #include <RIDparams.h>
00019 #include <qdialog.h>
00020 
00021 class DtLatencyTestConfigWidget;
00022 class DtRtiConnectionInfo;
00023 
00027 class DT_DLL_ASSISTANTAPP DtLatencyTestDialog : public QDialog
00028 {
00029    Q_OBJECT
00030 
00031 public:
00032 
00034    DtLatencyTestDialog( QWidget* parent = 0, Qt::WindowFlags f = 0 );
00035 
00037    virtual ~DtLatencyTestDialog();
00038 
00040    virtual void clearResults();
00041 
00043    virtual void addResult( 
00044       const QString& recipName,
00045       unsigned int recipHandle,
00046       DtRIDParameters::DtAsynchronousIOModeEnum initProcModel, 
00047       DtRIDParameters::DtAsynchronousIOModeEnum recipProcModel,      
00048       unsigned int initTickTime,
00049       unsigned int recipTickTime, 
00050       unsigned int bestEffortRoundTripTime, 
00051       unsigned int reliableRoundTripTime, 
00052       int initBestEffortQTime, 
00053       int recipBestEffortQTime,
00054       int initReliableQTime, 
00055       int recipReliableQTime );
00056 
00058    virtual void addTimeoutResult( const QString& recipName, unsigned int recipHandle );
00059 
00061    virtual void setName( const QString &name );
00062 
00064    virtual void updateStatus( bool enabled,  bool capable, bool continuous,
00065       bool inProgress );
00066 
00068    virtual void indicateFederateResigned();
00069 
00071    virtual void indicateRtiexecShutdown();
00072 
00074    virtual bool isTestInProgress();
00075 
00078    virtual void closeWithoutPrompt();
00079 
00080 public slots:
00081 
00083    virtual void processRun();
00084 
00086    virtual void processContinuous();
00087 
00089    virtual void processStop();
00090 
00092    virtual void processSave();
00093 
00095    virtual void processSelectionChange();
00096 
00098    virtual void setTestConfig( unsigned int interactionPeriod, 
00099       unsigned int numInteractions, unsigned int payloadBytes );
00100 
00102    virtual void changeContinuousButtonIcon( bool isDepressed );
00103 
00104 signals:
00105 
00107    void run();
00108 
00110    void runContinuous();
00111 
00113    void stopRunning();
00114 
00116    void dismiss();
00117 
00119    void updateTestConfig( unsigned int interactionPeriod, 
00120       unsigned int numInteractions, unsigned int payloadBytes );
00121 
00123    void observing();
00124 
00125 protected:
00126 
00128    struct DtDetailedInfo
00129    {
00130       QString timestamp;
00131       QString recipName;
00132       QString initProcModel;
00133       QString recipProcModel;
00134       QString initTickTime;
00135       QString recipTickTime;
00136       QString initQTime;
00137       QString recipQTime;
00138    };
00139 
00142    virtual void getWidgetsToUpdate( unsigned int recipHandle,
00143                                     QTableWidgetItem*& recipItem,
00144                                     QTableWidgetItem*& timeWaitingItem,
00145                                     QTableWidgetItem*& transitTimeItem,
00146                                     QTableWidgetItem*& totalTimeItem,
00147                                     DtDetailedInfo*& details );
00148 
00150    virtual QString federateNameToDisplay( unsigned int handle, 
00151       const QString& name = QString::null );
00152 
00154    virtual unsigned int handleFromDisplayName( const QString& name );
00155 
00157    virtual QString procModelString( DtRIDParameters::DtAsynchronousIOModeEnum procModel );
00158 
00160    virtual void clearDetailsDisplay();
00161 
00163    virtual void setTitle();
00164 
00166    virtual void closeEvent(QCloseEvent *event);
00167 
00169 
00170    virtual void convertToMsString( unsigned int usec, QString& result,
00171       const QString& notAvailableString = theLongNAString,
00172       bool zeroIsNotAvailable = true );
00173    virtual void convertToMsString( int usec, QString& result,
00174       const QString& notAvailableString = theLongNAString,
00175       bool zeroIsNotAvailable = true );
00177 
00179    virtual void showEvent( QShowEvent* event );
00180 
00182    enum DtResultsTableCol
00183    {
00184       RecipientCol,
00185       TransitTimeCol,
00186       TimeWaitingCol,
00187       TotalTimeCol
00188    };
00189 
00191    typedef std::map< int, DtDetailedInfo* > DtHandleToDetailedInfoMap;   
00192 
00193    Ui::LatencyTestDialog myUiImpl;
00194 
00196    QString myName;
00197 
00199    QString myStatusText;
00200 
00202    DtHandleToDetailedInfoMap myDetailedInfo;
00203 
00205    DtLatencyTestConfigWidget* myConfigWidget;
00206 
00208    bool myTestingEnabled;
00209 
00211    bool myTestCapable;
00212 
00214    bool myTestInProgress;
00215 
00217    bool myContinuous;
00218 
00220    QIcon myContinuousIcon;
00221 
00223    QIcon myContinuousDepressedIcon;
00224 
00226    QString mySavedFile;
00227 
00229    bool myCloseWithoutPrompt;
00230 
00232 
00233    static const QString theInitiatorToolTip;
00234    static const QString theRecipientToolTip;
00235    static const QString theTimeWaitingToolTip;
00236    static const QString theTransitTimeToolTip;
00237    static const QString theTotalTimeToolTip;
00238    static const QString theTimestampToolTip;
00239    static const QString theProcModelToolTip;
00240    static const QString theTickTimeToolTip;
00241    static const QString theQTimeToolTip;
00243 
00245 
00246    static const QString theRunButtonToolTip;
00247    static const QString theStopButtonToolTip;
00248    static const QString theContinuousButtonToolTip;
00249    static const QString theConfigureButtonToolTip;
00250    static const QString theSaveButtonToolTip;
00252 
00254    static const QString theShortNAString;
00255 
00257    static const QString theLongNAString;
00258 };
00259 
00260 #endif

Document ID: Generated on Thu Jun 14 14:15:04 EDT 2012 from SVN revision 116116
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)