CbmRoot
Loading...
Searching...
No Matches
CbmTsEveAnimationControl Class Reference

GUI elements to add animation and screenshot controls to CbmTimesliceManagerEditor. Cannot be used alone! More...

#include <CbmTsEveAnimationControl.h>

Inheritance diagram for CbmTsEveAnimationControl:
[legend]
Collaboration diagram for CbmTsEveAnimationControl:
[legend]

Public Types

enum  eAnimationType { kEventsInTs = 0 , kTimeSlices = 1 }
 
enum  eScreenshotType {
  kAll = 0 , k3D = 1 , kZX = 2 , kZY = 3 ,
  kXY = 4 , kZ = 5
}
 

Public Member Functions

 CbmTsEveAnimationControl (TGedFrame *frame, TGCompositeFrame *tab, TString functionName, TString name="", Int_t width=170)
 PAL 01/06/2023: heavily based on FairEveAnimationControl from FairRoot v18.6.7, for usage with CbmTimesliceManager.
 
virtual ~CbmTsEveAnimationControl ()
 
void SetDisplayMcbm (bool bEna)
 Tune list of allowed screenshot types depending on available CBM/mCBM views.
 
void SetFunctionName (TString name)
 
void SetEvtNb (uint32_t uNbEvt)
 
void SetTsNb (uint32_t uTsNb)
 
void Init ()
 
eAnimationType GetAnimationType () const
 
Double_t GetAnimFrameSec ()
 
Bool_t GetScreenshotEna ()
 
eScreenshotType GetScreenshotType () const
 
Int_t GetEventMin ()
 
Int_t GetEventMax ()
 
Int_t GetEventStep ()
 
Int_t GetTsMin ()
 
Int_t GetTsMax ()
 
Int_t GetTsStep ()
 
Bool_t GetRunContinuous ()
 
Bool_t GetClearBuffer ()
 
void UpdateEnaScreenshots ()
 Update GUI elements to enforce options/limits. RESERVED FOR GUI CALLS!
 
void UpdateEnaDisButtons ()
 Update GUI elements to enforce options/limits. RESERVED FOR GUI CALLS!
 
void UpdateEventLimits ()
 Update GUI elements to enforce options/limits. RESERVED FOR GUI CALLS!
 
void UpdateTsLimits ()
 Update GUI elements to enforce options/limits. RESERVED FOR GUI CALLS!
 

Private Attributes

const Int_t fWidth
 
uint32_t fNbEvt = 0
 
uint32_t fNbTs = 0
 
TGedFrame * fParent = nullptr
 
TString fFunctionName = ""
 
bool fbMcbmViewersEna = false
 
bool fbInitDone = false
 
TGCompositeFrame * fTab = nullptr
 
TGTextButton * fStartButton = nullptr
 
TGComboBox * fTypeOpt = nullptr
 
TGNumberEntry * fAnimFrameSec = nullptr
 
TGCheckButton * fBtnScreenshotEna = nullptr
 
TGComboBox * fSceneOpt = nullptr
 
TGNumberEntry * fEvtMin = nullptr
 
TGNumberEntry * fEvtMax = nullptr
 
TGNumberEntry * fEvtStep = nullptr
 
TGNumberEntry * fTsMin = nullptr
 
TGNumberEntry * fTsMax = nullptr
 
TGNumberEntry * fTsStep = nullptr
 
TGCheckButton * fBtnRunContinuous = nullptr
 
TGCheckButton * fBtnClearBuffer = nullptr
 

Detailed Description

GUI elements to add animation and screenshot controls to CbmTimesliceManagerEditor. Cannot be used alone!

Author
Pierre-Alain Loizeau p.-a..nosp@m.loiz.nosp@m.eau@g.nosp@m.si.d.nosp@m.e

PAL 31/05/2023: Heavily based on FairEveAnimationControl (for FairEventManagerEditor) from FairRoot v18.6.7

Definition at line 36 of file CbmTsEveAnimationControl.h.

Member Enumeration Documentation

◆ eAnimationType

Enumerator
kEventsInTs 
kTimeSlices 

Definition at line 38 of file CbmTsEveAnimationControl.h.

◆ eScreenshotType

Enumerator
kAll 
k3D 
kZX 
kZY 
kXY 
kZ 

Definition at line 43 of file CbmTsEveAnimationControl.h.

Constructor & Destructor Documentation

◆ CbmTsEveAnimationControl()

CbmTsEveAnimationControl::CbmTsEveAnimationControl ( TGedFrame * frame,
TGCompositeFrame * tab,
TString functionName,
TString name = "",
Int_t width = 170 )

PAL 01/06/2023: heavily based on FairEveAnimationControl from FairRoot v18.6.7, for usage with CbmTimesliceManager.

Definition at line 16 of file CbmTsEveAnimationControl.cxx.

◆ ~CbmTsEveAnimationControl()

CbmTsEveAnimationControl::~CbmTsEveAnimationControl ( )
virtual

Definition at line 26 of file CbmTsEveAnimationControl.cxx.

Member Function Documentation

◆ GetAnimationType()

CbmTsEveAnimationControl::eAnimationType CbmTsEveAnimationControl::GetAnimationType ( ) const

◆ GetAnimFrameSec()

Double_t CbmTsEveAnimationControl::GetAnimFrameSec ( )

Definition at line 183 of file CbmTsEveAnimationControl.cxx.

References fAnimFrameSec.

Referenced by CbmTimesliceManagerEditor::StartAnimation().

◆ GetClearBuffer()

Bool_t CbmTsEveAnimationControl::GetClearBuffer ( )

Definition at line 206 of file CbmTsEveAnimationControl.cxx.

References fBtnClearBuffer.

Referenced by CbmTimesliceManagerEditor::StartAnimation().

◆ GetEventMax()

Int_t CbmTsEveAnimationControl::GetEventMax ( )

Definition at line 194 of file CbmTsEveAnimationControl.cxx.

References fEvtMax.

Referenced by CbmTimesliceManagerEditor::StartAnimation().

◆ GetEventMin()

Int_t CbmTsEveAnimationControl::GetEventMin ( )

Definition at line 192 of file CbmTsEveAnimationControl.cxx.

References fEvtMin.

Referenced by CbmTimesliceManagerEditor::StartAnimation().

◆ GetEventStep()

Int_t CbmTsEveAnimationControl::GetEventStep ( )

Definition at line 196 of file CbmTsEveAnimationControl.cxx.

References fEvtStep.

Referenced by CbmTimesliceManagerEditor::StartAnimation().

◆ GetRunContinuous()

Bool_t CbmTsEveAnimationControl::GetRunContinuous ( )

◆ GetScreenshotEna()

Bool_t CbmTsEveAnimationControl::GetScreenshotEna ( )

◆ GetScreenshotType()

CbmTsEveAnimationControl::eScreenshotType CbmTsEveAnimationControl::GetScreenshotType ( ) const

Definition at line 187 of file CbmTsEveAnimationControl.cxx.

References fSceneOpt.

Referenced by CbmTimesliceManagerEditor::StartAnimation().

◆ GetTsMax()

Int_t CbmTsEveAnimationControl::GetTsMax ( )

Definition at line 200 of file CbmTsEveAnimationControl.cxx.

References fTsMax.

Referenced by CbmTimesliceManagerEditor::StartAnimation().

◆ GetTsMin()

Int_t CbmTsEveAnimationControl::GetTsMin ( )

Definition at line 198 of file CbmTsEveAnimationControl.cxx.

References fTsMin.

Referenced by CbmTimesliceManagerEditor::StartAnimation().

◆ GetTsStep()

Int_t CbmTsEveAnimationControl::GetTsStep ( )

Definition at line 202 of file CbmTsEveAnimationControl.cxx.

References fTsStep.

Referenced by CbmTimesliceManagerEditor::StartAnimation().

◆ Init()

void CbmTsEveAnimationControl::Init ( )

In Timeslice mode, scan anyway on all events in each TS, in event mode wait for loading of first TS Not SetEnabled for TGNumberEntry, guessing equivalent is SetState

Definition at line 28 of file CbmTsEveAnimationControl.cxx.

References fAnimFrameSec, fbInitDone, fbMcbmViewersEna, fBtnClearBuffer, fBtnRunContinuous, fBtnScreenshotEna, fEvtMax, fEvtMin, fEvtStep, fFunctionName, fNbEvt, fNbTs, fParent, fSceneOpt, fStartButton, fTab, fTsMax, fTsMin, fTsStep, fTypeOpt, fWidth, k3D, kAll, kEventsInTs, kTimeSlices, kXY, kZ, kZX, kZY, and UpdateTsLimits().

Referenced by CbmTimesliceManagerEditor::Init().

◆ SetDisplayMcbm()

void CbmTsEveAnimationControl::SetDisplayMcbm ( bool bEna)
inline

Tune list of allowed screenshot types depending on available CBM/mCBM views.

Definition at line 60 of file CbmTsEveAnimationControl.h.

References fbMcbmViewersEna.

Referenced by CbmTimesliceManagerEditor::Init().

◆ SetEvtNb()

void CbmTsEveAnimationControl::SetEvtNb ( uint32_t uNbEvt)
inline

◆ SetFunctionName()

void CbmTsEveAnimationControl::SetFunctionName ( TString name)
inline

set name of function called when button is pressed

Parameters
name

Definition at line 66 of file CbmTsEveAnimationControl.h.

References fFunctionName.

◆ SetTsNb()

void CbmTsEveAnimationControl::SetTsNb ( uint32_t uTsNb)
inline

Definition at line 77 of file CbmTsEveAnimationControl.h.

References fbInitDone, fNbTs, and UpdateTsLimits().

Referenced by CbmTimesliceManagerEditor::Init().

◆ UpdateEnaDisButtons()

void CbmTsEveAnimationControl::UpdateEnaDisButtons ( )

Update GUI elements to enforce options/limits. RESERVED FOR GUI CALLS!

Prevent invalid accesses

In Timeslice mode, scan anyway on all events in each TS in range

In Event mode, scan only on events within selected TS

Definition at line 210 of file CbmTsEveAnimationControl.cxx.

References fEvtMax, fEvtMin, fEvtStep, fNbTs, fStartButton, fTsMax, fTsMin, fTsStep, GetAnimationType(), and kTimeSlices.

Referenced by UpdateEventLimits(), and UpdateTsLimits().

◆ UpdateEnaScreenshots()

void CbmTsEveAnimationControl::UpdateEnaScreenshots ( )

Update GUI elements to enforce options/limits. RESERVED FOR GUI CALLS!

Definition at line 208 of file CbmTsEveAnimationControl.cxx.

References fBtnScreenshotEna, and fSceneOpt.

◆ UpdateEventLimits()

void CbmTsEveAnimationControl::UpdateEventLimits ( )

Update GUI elements to enforce options/limits. RESERVED FOR GUI CALLS!

Definition at line 240 of file CbmTsEveAnimationControl.cxx.

References fEvtMax, fEvtMin, fEvtStep, fNbEvt, and UpdateEnaDisButtons().

Referenced by SetEvtNb().

◆ UpdateTsLimits()

void CbmTsEveAnimationControl::UpdateTsLimits ( )

Update GUI elements to enforce options/limits. RESERVED FOR GUI CALLS!

Definition at line 253 of file CbmTsEveAnimationControl.cxx.

References fNbTs, fTsMax, fTsMin, fTsStep, and UpdateEnaDisButtons().

Referenced by Init(), and SetTsNb().

Member Data Documentation

◆ fAnimFrameSec

TGNumberEntry* CbmTsEveAnimationControl::fAnimFrameSec = nullptr
private

Definition at line 132 of file CbmTsEveAnimationControl.h.

Referenced by GetAnimFrameSec(), and Init().

◆ fbInitDone

bool CbmTsEveAnimationControl::fbInitDone = false
private

Definition at line 127 of file CbmTsEveAnimationControl.h.

Referenced by Init(), SetEvtNb(), and SetTsNb().

◆ fbMcbmViewersEna

bool CbmTsEveAnimationControl::fbMcbmViewersEna = false
private

Definition at line 126 of file CbmTsEveAnimationControl.h.

Referenced by Init(), and SetDisplayMcbm().

◆ fBtnClearBuffer

TGCheckButton* CbmTsEveAnimationControl::fBtnClearBuffer = nullptr
private

Definition at line 142 of file CbmTsEveAnimationControl.h.

Referenced by GetClearBuffer(), and Init().

◆ fBtnRunContinuous

TGCheckButton* CbmTsEveAnimationControl::fBtnRunContinuous = nullptr
private

Definition at line 141 of file CbmTsEveAnimationControl.h.

Referenced by GetRunContinuous(), and Init().

◆ fBtnScreenshotEna

TGCheckButton* CbmTsEveAnimationControl::fBtnScreenshotEna = nullptr
private

Definition at line 133 of file CbmTsEveAnimationControl.h.

Referenced by GetScreenshotEna(), Init(), and UpdateEnaScreenshots().

◆ fEvtMax

TGNumberEntry* CbmTsEveAnimationControl::fEvtMax = nullptr
private

◆ fEvtMin

TGNumberEntry* CbmTsEveAnimationControl::fEvtMin = nullptr
private

◆ fEvtStep

TGNumberEntry* CbmTsEveAnimationControl::fEvtStep = nullptr
private

◆ fFunctionName

TString CbmTsEveAnimationControl::fFunctionName = ""
private

Definition at line 124 of file CbmTsEveAnimationControl.h.

Referenced by Init(), and SetFunctionName().

◆ fNbEvt

uint32_t CbmTsEveAnimationControl::fNbEvt = 0
private

Definition at line 120 of file CbmTsEveAnimationControl.h.

Referenced by Init(), SetEvtNb(), and UpdateEventLimits().

◆ fNbTs

uint32_t CbmTsEveAnimationControl::fNbTs = 0
private

Definition at line 121 of file CbmTsEveAnimationControl.h.

Referenced by Init(), SetTsNb(), UpdateEnaDisButtons(), and UpdateTsLimits().

◆ fParent

TGedFrame* CbmTsEveAnimationControl::fParent = nullptr
private

Definition at line 123 of file CbmTsEveAnimationControl.h.

Referenced by Init().

◆ fSceneOpt

TGComboBox* CbmTsEveAnimationControl::fSceneOpt = nullptr
private

Definition at line 134 of file CbmTsEveAnimationControl.h.

Referenced by GetScreenshotType(), Init(), and UpdateEnaScreenshots().

◆ fStartButton

TGTextButton* CbmTsEveAnimationControl::fStartButton = nullptr
private

Definition at line 130 of file CbmTsEveAnimationControl.h.

Referenced by Init(), and UpdateEnaDisButtons().

◆ fTab

TGCompositeFrame* CbmTsEveAnimationControl::fTab = nullptr
private

Definition at line 129 of file CbmTsEveAnimationControl.h.

Referenced by Init().

◆ fTsMax

TGNumberEntry* CbmTsEveAnimationControl::fTsMax = nullptr
private

Definition at line 139 of file CbmTsEveAnimationControl.h.

Referenced by GetTsMax(), Init(), UpdateEnaDisButtons(), and UpdateTsLimits().

◆ fTsMin

TGNumberEntry* CbmTsEveAnimationControl::fTsMin = nullptr
private

Definition at line 138 of file CbmTsEveAnimationControl.h.

Referenced by GetTsMin(), Init(), UpdateEnaDisButtons(), and UpdateTsLimits().

◆ fTsStep

TGNumberEntry* CbmTsEveAnimationControl::fTsStep = nullptr
private

Definition at line 140 of file CbmTsEveAnimationControl.h.

Referenced by GetTsStep(), Init(), UpdateEnaDisButtons(), and UpdateTsLimits().

◆ fTypeOpt

TGComboBox* CbmTsEveAnimationControl::fTypeOpt = nullptr
private

Definition at line 131 of file CbmTsEveAnimationControl.h.

Referenced by GetAnimationType(), and Init().

◆ fWidth

const Int_t CbmTsEveAnimationControl::fWidth
private

Definition at line 119 of file CbmTsEveAnimationControl.h.

Referenced by Init().


The documentation for this class was generated from the following files: