Free Electron
RecordPlayer.h
Go to the documentation of this file.
1 /* Copyright (C) 2003-2021 Free Electron Organization
2  Any use of this software requires a license. If a valid license
3  was not distributed with this file, visit freeelectron.org. */
4 
5 /** @file */
6 
7 #ifndef __datatool_RecordPlayer_h__
8 #define __datatool_RecordPlayer_h__
9 
10 namespace fe
11 {
12 namespace ext
13 {
14 
15 /**************************************************************************//**
16  @brief Reloads Record's op:input for every handle call that time is stopped
17 
18  @ingroup datatool
19 
20  Requires the Record to provide a RecordRecorder in op:recorder
21  or it will stay dormant. The RecordRecorder associates filenames
22  with the desired time stamps.
23 *//***************************************************************************/
24 class FE_DL_EXPORT RecordPlayer: virtual public HandlerI
25 {
26  public:
27  RecordPlayer(void):
28  m_lastTime(-1.0f) {}
29 
30  //* as HandlerI
31 virtual void handle(Record &record);
32 
33  private:
34  sp<RecorderI> m_spRecorderI;
35  F32 m_lastTime;
36 
37  AsOperator m_asOperator;
38  AsTemporal m_asTemporal;
39  Accessor< sp<Component> > m_aRecorder;
40 };
41 
42 } /* namespace ext */
43 } /* namespace fe */
44 
45 #endif /* __datatool_RecordPlayer_h__ */
kernel
Definition: namespace.dox:3
The main data access class for the data system.
Definition: Accessor.h:128
Group Operator.
Definition: datatoolAS.h:57
Reloads Record&#39;s op:input for every handle call that time is stopped.
Definition: RecordPlayer.h:24
Interface to handle signals from an SignalerI.
Definition: HandlerI.h:22
Time-based Operator.
Definition: datatoolAS.h:73
Reference to an instance of a Layout.
Definition: RecordSB.h:35
Intrusive Smart Pointer.
Definition: src/core/ptr.h:53