pqVCRController.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Kitware Inc.
2 // SPDX-FileCopyrightText: Copyright (c) Sandia Corporation
3 // SPDX-License-Identifier: BSD-3-Clause
4 
5 #ifndef pqVCRController_h
6 #define pqVCRController_h
7 
8 #include "pqComponentsModule.h"
9 #include <QObject>
10 #include <QPointer>
11 
12 class pqPipelineSource;
13 class pqAnimationScene;
14 class vtkObject;
15 
22 class PQCOMPONENTS_EXPORT pqVCRController : public QObject
23 {
24  Q_OBJECT
25 public:
26  pqVCRController(QObject* parent = nullptr);
27  ~pqVCRController() override;
28 
32  pqAnimationScene* getAnimationScene() const;
33 
34 Q_SIGNALS:
38  void timestepChanged();
39 
46  void playing(bool, bool);
47 
54  void enabled(bool);
55 
59  void loop(bool);
60 
64  void timeRanges(double, double);
65 
66 public Q_SLOTS:
71  virtual void setAnimationScene(pqAnimationScene*);
72 
76  virtual void onTimeRangesChanged();
77 
79 
82  virtual void onFirstFrame();
83  virtual void onPreviousFrame();
84  virtual void onNextFrame();
85  virtual void onLastFrame();
86  virtual void onPlay();
87  virtual void onReverse();
88  virtual void onPause();
89  virtual void onLoop(bool checked);
91 
92 protected Q_SLOTS:
93  void onTick();
94  void onLoopPropertyChanged();
95  void onBeginPlay(vtkObject* caller, unsigned long, void*, void* reversed);
96  void onEndPlay(vtkObject* caller, unsigned long, void*, void* reversed);
97 
98 private:
99  Q_DISABLE_COPY(pqVCRController)
100 
101  QPointer<pqAnimationScene> Scene;
102 };
103 
104 #endif
#define PQCOMPONENTS_EXPORT
Scene
loop
pqVCRController is the QObject that encapsulates the VCR control functionality.
enabled
PQ representation for a vtkSMProxy that can be involved in a pipeline.
pqAnimationScene is a representation for a vtkSMAnimationScene proxy.