X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=src%2Fvogleditor%2Fvogleditor.h;h=c4be73cee078480143cbd2bfe5976698a9bf261a;hb=HEAD;hp=ad007e2ba8b65c0f3382350f010cf88b473486e4;hpb=330dbd27c92a6c62125cdb7c14c16154383f4ccb;p=vogl diff --git a/src/vogleditor/vogleditor.h b/src/vogleditor/vogleditor.h index ad007e2..c4be73c 100644 --- a/src/vogleditor/vogleditor.h +++ b/src/vogleditor/vogleditor.h @@ -51,6 +51,7 @@ class vogleditor_QTextureExplorer; class QItemSelection; class QModelIndex; +class QProcess; class QSortFilterProxyModel; class QToolButton; class vogl_context_snapshot; @@ -67,6 +68,7 @@ class vogleditor_apiCallTimelineModel; class vogleditor_apiCallTreeItem; class vogleditor_gl_state_snapshot; class vogleditor_QApiCallTreeModel; +class vogleditor_QStateTreeModel; class VoglEditor : public QMainWindow { @@ -85,14 +87,14 @@ private slots: void on_actionE_xit_triggered(); void on_actionExport_API_Calls_triggered(); - void on_treeView_currentChanged(const QModelIndex & current, const QModelIndex & previous); + void slot_treeView_currentChanged(const QModelIndex & current, const QModelIndex & previous); void on_treeView_clicked(const QModelIndex& index); void playCurrentTraceFile(); - void pauseCurrentTraceFile(); void trimCurrentTraceFile(); - void stopCurrentTraceFile(); + + bool trim_trace_file(QString filename, uint maxFrameIndex, uint maxAllowedTrimLen); void on_stateTreeView_clicked(const QModelIndex &index); @@ -104,12 +106,17 @@ private slots: void on_prevDrawcallButton_clicked(); void on_nextDrawcallButton_clicked(); - void on_program_edited(vogl_program_state* pNewProgramState); + void slot_program_edited(vogl_program_state* pNewProgramState); void on_actionSave_Session_triggered(); void on_actionOpen_Session_triggered(); + void on_searchTextBox_returnPressed(); + + void slot_readReplayStandardOutput(); + void slot_readReplayStandardError(); + private: Ui::VoglEditor* ui; @@ -126,6 +133,9 @@ private: void reset_snapshot_ui(); void update_ui_for_snapshot(vogleditor_gl_state_snapshot *pStateSnapshot); + + void update_ui_for_context(vogl_context_snapshot* pContext, vogleditor_gl_state_snapshot *pStateSnapshot); + void displayMachineInfoHelper(QString prefix, const QString& sectionKeyStr, const vogl::json_value& value, QString& rMachineInfoStr); void displayMachineInfo(); void recursive_update_snapshot_flags(vogleditor_apiCallTreeItem* pItem, bool& bFoundEditedSnapshot); @@ -142,21 +152,25 @@ private: bool save_snapshot_to_disk(vogl_gl_state_snapshot* pSnapshot, dynamic_string filename, vogl_blob_manager *pBlob_manager); QString m_openFilename; - QLabel* m_statusLabel; - vogleditor_QFramebufferExplorer* m_framebufferExplorer; - vogleditor_QTextureExplorer* m_textureExplorer; - vogleditor_QTextureExplorer* m_renderbufferExplorer; - vogleditor_QProgramExplorer* m_programExplorer; - vogleditor_QShaderExplorer* m_shaderExplorer; + vogleditor_QFramebufferExplorer* m_pFramebufferExplorer; + vogleditor_QTextureExplorer* m_pTextureExplorer; + vogleditor_QTextureExplorer* m_pRenderbufferExplorer; + vogleditor_QProgramExplorer* m_pProgramExplorer; + vogleditor_QShaderExplorer* m_pShaderExplorer; vogleditor_QTimelineView* m_timeline; + QGridLayout* m_pFramebufferTab_layout; + QGridLayout* m_pTextureTab_layout; + QGridLayout* m_pRenderbufferTab_layout; + QGridLayout* m_pProgramTab_layout; + QGridLayout* m_pShaderTab_layout; + vogleditor_gl_state_snapshot* m_currentSnapshot; vogleditor_apiCallTreeItem* m_pCurrentCallTreeItem; + QProcess* m_pVoglReplayProcess; QToolButton* m_pPlayButton; - QToolButton* m_pPauseButton; QToolButton* m_pTrimButton; - QToolButton* m_pStopButton; vogleditor_traceReplayer m_traceReplayer; vogl_trace_file_reader* m_pTraceReader; @@ -164,10 +178,10 @@ private: vogl::hash_map m_backtraceToJsonMap; vogleditor_apiCallTimelineModel* m_pTimelineModel; + vogleditor_QApiCallTreeModel* m_pApiCallTreeModel; + vogleditor_QStateTreeModel* m_pStateTreeModel; - vogleditor_QApiCallTreeModel* m_pApicallTreeModel; - - QModelIndexList m_searchApicallResults; + QColor m_searchTextboxBackgroundColor; }; #endif // VOGLEDITOR_H