Ocean
Loading...
Searching...
No Matches
ImplicitRecorder.h
Go to the documentation of this file.
1/*
2 * Copyright (c) Meta Platforms, Inc. and affiliates.
3 *
4 * This source code is licensed under the MIT license found in the
5 * LICENSE file in the root directory of this source tree.
6 */
7
8#ifndef META_OCEAN_MEDIA_IMPLICIT_RECORDER_H
9#define META_OCEAN_MEDIA_IMPLICIT_RECORDER_H
10
11#include "ocean/media/Media.h"
13
15
16namespace Ocean
17{
18
19namespace Media
20{
21
22// Forward declaration.
23class ImplicitRecorder;
24
25/**
26 * Definition of a object reference holding an explicit recorder.
27 * @see SmartObjectRef, ExplicitRecorder.
28 * @ingroup media
29 */
31
32/**
33 * This class is the base class for all implicit media recorder.
34 * An implicit recorder may be started indirect by an external request.<br>
35 * Instead, an explicit recorder has to be started explicitly to start the recording process.<br>
36 * @see ExplicitRecorder.
37 * @ingroup media
38 */
39class OCEAN_MEDIA_EXPORT ImplicitRecorder : virtual public Recorder
40{
41 public:
42
43 /**
44 * Returns whether this recorder is currently enabled.
45 * @return True, if so
46 */
47 virtual bool isEnabled() const = 0;
48
49 /**
50 * Enables the streaming recorder.
51 * @return True, if succeeded
52 */
53 virtual bool enable() = 0;
54
55 /**
56 * Disables the streaming recorder.
57 * @return True, if succeeded
58 */
59 virtual bool disable() = 0;
60
61 protected:
62
63 /**
64 * Creates a new implicit recorder.
65 */
67
68 /**
69 * Destructs a implicit recorder.
70 */
72};
73
74}
75
76}
77
78#endif // META_OCEAN_MEDIA_IMPLICIT_RECORDER_H
This class is the base class for all implicit media recorder.
Definition ImplicitRecorder.h:40
virtual bool disable()=0
Disables the streaming recorder.
virtual bool isEnabled() const =0
Returns whether this recorder is currently enabled.
ImplicitRecorder()
Creates a new implicit recorder.
virtual bool enable()=0
Enables the streaming recorder.
~ImplicitRecorder() override
Destructs a implicit recorder.
This class is the base class for all recorder.
Definition Recorder.h:37
This template class implements a smart object reference which is a specialization of an ObjectRef obj...
Definition SmartObjectRef.h:90
Ocean::SmartObjectRef< ImplicitRecorder, Recorder > ImplicitRecorderRef
Definition of a object reference holding an explicit recorder.
Definition ImplicitRecorder.h:30
The namespace covering the entire Ocean framework.
Definition Accessor.h:15