TRecorderReplaying Class Reference

#include <TRecorder.h>

Inheritance diagram for TRecorderReplaying:

TRecorderState TRecorderState List of all members.

Public Member Functions

virtual TRecorder::ERecorderState GetState () const
virtual void Pause (TRecorder *r)
virtual void Continue ()
virtual void ReplayStop (TRecorder *r)
void RegisterWindow (Window_t w)
void ReplayRealtime ()
virtual TRecorder::ERecorderState GetState () const
virtual void Pause (TRecorder *r)
virtual void Continue ()
virtual void ReplayStop (TRecorder *r)
void RegisterWindow (Window_t w)
void ReplayRealtime ()

Protected Member Functions

 TRecorderReplaying (const char *filename)
Bool_t Initialize (TRecorder *r, Bool_t showMouseCursor, TRecorder::EReplayModes mode)
 TRecorderReplaying (const char *filename)
Bool_t Initialize (TRecorder *r, Bool_t showMouseCursor, TRecorder::EReplayModes mode)

Private Member Functions

virtual ~TRecorderReplaying ()
Bool_t PrepareNextEvent ()
Bool_t RemapWindowReferences ()
Bool_t CanOverlap ()
Bool_t FilterEvent (TRecGuiEvent *e)
virtual ~TRecorderReplaying ()
Bool_t PrepareNextEvent ()
Bool_t RemapWindowReferences ()
Bool_t CanOverlap ()
Bool_t FilterEvent (TRecGuiEvent *e)

Private Attributes

TRecorder * fRecorder
TFile * fFile
TCanvas * fCanv
TTimer * fTimer
TTree * fWinTree
TTree * fGuiTree
TTree * fCmdTree
TTree * fExtraTree
ULong64_t fWin
TRecGuiEvent * fGuiEvent
TRecCmdEvent * fCmdEvent
TRecExtraEvent * fExtraEvent
Int_t fRegWinCounter
Int_t fGuiTreeCounter
Int_t fCmdTreeCounter
Int_t fExtraTreeCounter
Int_t fWinTreeEntries
TMutex * fMutex
TList * fWindowList
TRecEvent * fNextEvent
TTime fPreviousEventTime
Bool_t fWaitingForWindow
Bool_t fEventReplayed
Bool_t fShowMouseCursor
Bool_t fFilterStatusBar
TRecorder * fRecorder
TFile * fFile
TCanvas * fCanv
TTimer * fTimer
TTree * fWinTree
TTree * fGuiTree
TTree * fCmdTree
TTree * fExtraTree
TRecGuiEvent * fGuiEvent
TRecCmdEvent * fCmdEvent
TRecExtraEvent * fExtraEvent
TMutex * fMutex
TList * fWindowList
TRecEvent * fNextEvent

Friends

class TRecorderInactive
class TRecorderPaused

Detailed Description

Definition at line 565 of file TRecorder.h.


Constructor & Destructor Documentation

TRecorderReplaying::~TRecorderReplaying (  )  [private, virtual]

Definition at line 398 of file TRecorder.cxx.

References TFile::Close(), TQObject::Disconnect(), fCmdEvent, fExtraEvent, fFile, fGuiEvent, fMutex, fTimer, fWindowList, gClient, gCursorWin, and TTimer::TurnOff().

TRecorderReplaying::TRecorderReplaying ( const char *  filename  )  [protected]

virtual TRecorderReplaying::~TRecorderReplaying (  )  [private, virtual]

TRecorderReplaying::TRecorderReplaying ( const char *  filename  )  [protected]


Member Function Documentation

Bool_t TRecorderReplaying::PrepareNextEvent (  )  [private]

Definition at line 698 of file TRecorder.cxx.

References fCmdEvent, fCmdTree, fCmdTreeCounter, fExtraEvent, fExtraTree, fExtraTreeCounter, fGuiEvent, fGuiTree, fGuiTreeCounter, FilterEvent(), fNextEvent, TTree::GetEntries(), TTree::GetEntry(), TRecEvent::GetTime(), kFALSE, kTRUE, and RemapWindowReferences().

Referenced by Initialize(), and ReplayRealtime().

Bool_t TRecorderReplaying::RemapWindowReferences (  )  [private]

Definition at line 598 of file TRecorder.cxx.

References fGuiEvent, TRecGuiEvent::fMasked, fMutex, TRecGuiEvent::fUser, TRecGuiEvent::fWindow, fWindowList, gVirtualX, i, kFALSE, kTRUE, TMutex::Lock(), and TListIter::Next().

Referenced by PrepareNextEvent().

Bool_t TRecorderReplaying::CanOverlap (  )  [private]

Definition at line 816 of file TRecorder.cxx.

References TRecorderInactive::DumpRootEvent(), Error, fGuiEvent, fNextEvent, TRecGuiEvent::fType, gDebug, TRecEvent::GetType(), kButtonPress, kButtonRelease, kFALSE, TRecEvent::kGuiEvent, kMotionNotify, kRecEventNames, and kTRUE.

Referenced by ReplayRealtime().

Bool_t TRecorderReplaying::FilterEvent ( TRecGuiEvent *  e  )  [private]

Definition at line 660 of file TRecorder.cxx.

References TRecGuiEvent::fFormat, TRecGuiEvent::fHandle, TRecGuiEvent::fType, TRecGuiEvent::fUser, kClientMessage, TRecGuiEvent::kCNFilter, kConfigureNotify, kFALSE, kGKeyPress, kOtherEvent, TRecGuiEvent::kROOT_MESSAGE, kTRUE, and TRecGuiEvent::kWM_DELETE_WINDOW.

Referenced by PrepareNextEvent().

Bool_t TRecorderReplaying::Initialize ( TRecorder *  r,
Bool_t  showMouseCursor,
TRecorder::EReplayModes  mode 
) [protected]

Definition at line 426 of file TRecorder.cxx.

References canvas, TQObject::Connect(), TCanvas::Draw(), Error, fCanv, fCmdEvent, fCmdTree, fCmdTreeCounter, fEventReplayed, fExtraEvent, fExtraTree, fExtraTreeCounter, fFile, fFilterStatusBar, fGuiEvent, fGuiTree, fGuiTreeCounter, fRecorder, fRegWinCounter, fShowMouseCursor, fTimer, fWaitingForWindow, fWin, fWinTree, fWinTreeEntries, gClient, TDirectoryFile::Get(), TTree::GetEntries(), TROOT::GetListOfCanvases(), TNamed::GetName(), TCanvas::GetWindowHeight(), TCanvas::GetWindowWidth(), gPad, gROOT, Info, TFile::IsOpen(), TObject::IsZombie(), kBranchName, kCmdEventTree, kExtraEventTree, kFALSE, kGuiEventTree, kTRUE, kWindowsTree, TFile::Open(), PrepareNextEvent(), TTree::SetBranchAddress(), TCanvas::SetWindowSize(), and TTimer::Start().

Referenced by TRecorderInactive::Replay().

virtual TRecorder::ERecorderState TRecorderReplaying::GetState (  )  const [inline, virtual]

Implements TRecorderState.

Definition at line 636 of file TRecorder.h.

References TRecorder::kReplaying.

void TRecorderReplaying::Pause ( TRecorder *  r  )  [virtual]

Reimplemented from TRecorderState.

Definition at line 940 of file TRecorder.cxx.

References fTimer, Info, kFALSE, TTimer::Stop(), and TRecorderPaused.

void TRecorderReplaying::Continue (  )  [virtual]

Definition at line 959 of file TRecorder.cxx.

References fNextEvent, fPreviousEventTime, fTimer, TRecEvent::GetTime(), and TTimer::Start().

Referenced by TRecorderPaused::Resume().

void TRecorderReplaying::ReplayStop ( TRecorder *  r  )  [virtual]

Reimplemented from TRecorderState.

Definition at line 950 of file TRecorder.cxx.

References Info, and TRecorderInactive.

void TRecorderReplaying::RegisterWindow ( Window_t  w  ) 

Definition at line 528 of file TRecorder.cxx.

References TList::Add(), Error, fFilterStatusBar, fGuiEvent, fMutex, fNextEvent, fRegWinCounter, fTimer, fWaitingForWindow, fWin, TRecGuiEvent::fWindow, fWindowList, fWinTree, fWinTreeEntries, gClient, gDebug, TTree::GetEntry(), TGWindow::GetParent(), TGClient::GetWindowById(), TObject::InheritsFrom(), kFALSE, TMutex::Lock(), TTimer::Start(), and TMutex::UnLock().

void TRecorderReplaying::ReplayRealtime (  ) 

Definition at line 851 of file TRecorder.cxx.

References CanOverlap(), TRecorder::ChangeState(), fEventReplayed, fNextEvent, fPreviousEventTime, fRecorder, fShowMouseCursor, fTimer, TROOT::GetEditorMode(), TRecEvent::GetTime(), TRecEvent::GetType(), gROOT, gSystem, gVirtualX, Info, kGKeyPress, TRecEvent::kGuiEvent, kKey_S, kKeyControlMask, kPaveLabel, kText, PrepareNextEvent(), TSystem::ProcessEvents(), TRecEvent::ReplayEvent(), TROOT::SetEditorMode(), TTimer::Start(), str, TRecorderInactive, and x20.

Bool_t TRecorderReplaying::PrepareNextEvent (  )  [private]

Bool_t TRecorderReplaying::RemapWindowReferences (  )  [private]

Bool_t TRecorderReplaying::CanOverlap (  )  [private]

Bool_t TRecorderReplaying::FilterEvent ( TRecGuiEvent *  e  )  [private]

Bool_t TRecorderReplaying::Initialize ( TRecorder *  r,
Bool_t  showMouseCursor,
TRecorder::EReplayModes  mode 
) [protected]

virtual TRecorder::ERecorderState TRecorderReplaying::GetState (  )  const [inline, virtual]

Implements TRecorderState.

Definition at line 636 of file TRecorder.h.

References TRecorder::kReplaying.

virtual void TRecorderReplaying::Pause ( TRecorder *  r  )  [virtual]

Reimplemented from TRecorderState.

virtual void TRecorderReplaying::Continue (  )  [virtual]

virtual void TRecorderReplaying::ReplayStop ( TRecorder *  r  )  [virtual]

Reimplemented from TRecorderState.

void TRecorderReplaying::RegisterWindow ( Window_t  w  ) 

void TRecorderReplaying::ReplayRealtime (  ) 


Friends And Related Function Documentation

TRecorderInactive [friend]

Definition at line 629 of file TRecorder.h.

Referenced by ReplayRealtime(), and ReplayStop().

TRecorderPaused [friend]

Definition at line 630 of file TRecorder.h.

Referenced by Pause().


Member Data Documentation

TRecorder* TRecorderReplaying::fRecorder [private]

Definition at line 575 of file TRecorder.h.

Referenced by Initialize(), and ReplayRealtime().

TFile* TRecorderReplaying::fFile [private]

Definition at line 578 of file TRecorder.h.

Referenced by Initialize(), and ~TRecorderReplaying().

TCanvas* TRecorderReplaying::fCanv [private]

Definition at line 581 of file TRecorder.h.

Referenced by Initialize().

TTimer* TRecorderReplaying::fTimer [private]

Definition at line 584 of file TRecorder.h.

Referenced by Continue(), Initialize(), Pause(), RegisterWindow(), ReplayRealtime(), and ~TRecorderReplaying().

TTree* TRecorderReplaying::fWinTree [private]

Definition at line 586 of file TRecorder.h.

Referenced by Initialize(), and RegisterWindow().

TTree* TRecorderReplaying::fGuiTree [private]

Definition at line 587 of file TRecorder.h.

Referenced by Initialize(), and PrepareNextEvent().

TTree* TRecorderReplaying::fCmdTree [private]

Definition at line 588 of file TRecorder.h.

Referenced by Initialize(), and PrepareNextEvent().

TTree* TRecorderReplaying::fExtraTree [private]

Definition at line 589 of file TRecorder.h.

Referenced by Initialize(), and PrepareNextEvent().

ULong64_t TRecorderReplaying::fWin [private]

Definition at line 591 of file TRecorder.h.

Referenced by Initialize(), and RegisterWindow().

TRecGuiEvent* TRecorderReplaying::fGuiEvent [private]

Definition at line 592 of file TRecorder.h.

Referenced by CanOverlap(), Initialize(), PrepareNextEvent(), RegisterWindow(), RemapWindowReferences(), and ~TRecorderReplaying().

TRecCmdEvent* TRecorderReplaying::fCmdEvent [private]

Definition at line 593 of file TRecorder.h.

Referenced by Initialize(), PrepareNextEvent(), and ~TRecorderReplaying().

TRecExtraEvent* TRecorderReplaying::fExtraEvent [private]

Definition at line 594 of file TRecorder.h.

Referenced by Initialize(), PrepareNextEvent(), and ~TRecorderReplaying().

Int_t TRecorderReplaying::fRegWinCounter [private]

Definition at line 596 of file TRecorder.h.

Referenced by Initialize(), and RegisterWindow().

Int_t TRecorderReplaying::fGuiTreeCounter [private]

Definition at line 597 of file TRecorder.h.

Referenced by Initialize(), and PrepareNextEvent().

Int_t TRecorderReplaying::fCmdTreeCounter [private]

Definition at line 598 of file TRecorder.h.

Referenced by Initialize(), and PrepareNextEvent().

Int_t TRecorderReplaying::fExtraTreeCounter [private]

Definition at line 599 of file TRecorder.h.

Referenced by Initialize(), and PrepareNextEvent().

Int_t TRecorderReplaying::fWinTreeEntries [private]

Definition at line 601 of file TRecorder.h.

Referenced by Initialize(), and RegisterWindow().

TMutex* TRecorderReplaying::fMutex [private]

Definition at line 603 of file TRecorder.h.

Referenced by RegisterWindow(), RemapWindowReferences(), and ~TRecorderReplaying().

TList* TRecorderReplaying::fWindowList [private]

Definition at line 605 of file TRecorder.h.

Referenced by RegisterWindow(), RemapWindowReferences(), and ~TRecorderReplaying().

TRecEvent* TRecorderReplaying::fNextEvent [private]

Definition at line 607 of file TRecorder.h.

Referenced by CanOverlap(), Continue(), PrepareNextEvent(), RegisterWindow(), and ReplayRealtime().

TTime TRecorderReplaying::fPreviousEventTime [private]

Definition at line 609 of file TRecorder.h.

Referenced by Continue(), and ReplayRealtime().

Bool_t TRecorderReplaying::fWaitingForWindow [private]

Definition at line 612 of file TRecorder.h.

Referenced by Initialize(), and RegisterWindow().

Bool_t TRecorderReplaying::fEventReplayed [private]

Definition at line 618 of file TRecorder.h.

Referenced by Initialize(), and ReplayRealtime().

Bool_t TRecorderReplaying::fShowMouseCursor [private]

Definition at line 624 of file TRecorder.h.

Referenced by Initialize(), and ReplayRealtime().

Bool_t TRecorderReplaying::fFilterStatusBar [private]

Definition at line 626 of file TRecorder.h.

Referenced by Initialize(), and RegisterWindow().

TRecorder* TRecorderReplaying::fRecorder [private]

Definition at line 575 of file TRecorder.h.

TFile* TRecorderReplaying::fFile [private]

Definition at line 578 of file TRecorder.h.

TCanvas* TRecorderReplaying::fCanv [private]

Definition at line 581 of file TRecorder.h.

TTimer* TRecorderReplaying::fTimer [private]

Definition at line 584 of file TRecorder.h.

TTree* TRecorderReplaying::fWinTree [private]

Definition at line 586 of file TRecorder.h.

TTree* TRecorderReplaying::fGuiTree [private]

Definition at line 587 of file TRecorder.h.

TTree* TRecorderReplaying::fCmdTree [private]

Definition at line 588 of file TRecorder.h.

TTree* TRecorderReplaying::fExtraTree [private]

Definition at line 589 of file TRecorder.h.

TRecGuiEvent* TRecorderReplaying::fGuiEvent [private]

Definition at line 592 of file TRecorder.h.

TRecCmdEvent* TRecorderReplaying::fCmdEvent [private]

Definition at line 593 of file TRecorder.h.

TRecExtraEvent* TRecorderReplaying::fExtraEvent [private]

Definition at line 594 of file TRecorder.h.

TMutex* TRecorderReplaying::fMutex [private]

Definition at line 603 of file TRecorder.h.

TList* TRecorderReplaying::fWindowList [private]

Definition at line 605 of file TRecorder.h.

TRecEvent* TRecorderReplaying::fNextEvent [private]

Definition at line 607 of file TRecorder.h.


The documentation for this class was generated from the following files:
Generated on Tue Jul 5 16:46:07 2011 for ROOT_528-00b_version by  doxygen 1.5.1