Ocean
DSLiveMedium.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_DS_LIVE_MEDIUM_H
9 #define META_OCEAN_MEDIA_DS_LIVE_MEDIUM_H
10 
14 
15 #include "ocean/media/LiveMedium.h"
16 
17 #include "ocean/base/Scheduler.h"
18 
19 namespace Ocean
20 {
21 
22 namespace Media
23 {
24 
25 namespace DirectShow
26 {
27 
28 /**
29  * This class is the base class for all DirectShow live mediums.
30  * @ingroup mediads
31  */
32 class OCEAN_MEDIA_DS_EXPORT DSLiveMedium :
33  public virtual DSConfigMedium,
34  public virtual DSMedium,
35  public virtual LiveMedium
36 {
37  protected:
38 
39  /**
40  * Creates a new DSLiveMedium object by a given url.
41  * @param url Url of the medium
42  */
43  explicit DSLiveMedium(const std::string& url);
44 
45  /**
46  * Destructs a DSLiveMedium object.
47  */
48  ~DSLiveMedium() override;
49 
50  /**
51  * Event function for the scheduler.
52  */
53  virtual void onScheduler();
54 };
55 
56 }
57 
58 }
59 
60 }
61 
62 #endif // META_OCEAN_MEDIA_DS_LIVE_MEDIUM_H
This class is the base class for all DirectShow mediums with advanced configuration possibilities.
Definition: DSConfigMedium.h:32
This class is the base class for all DirectShow live mediums.
Definition: DSLiveMedium.h:36
virtual void onScheduler()
Event function for the scheduler.
DSLiveMedium(const std::string &url)
Creates a new DSLiveMedium object by a given url.
~DSLiveMedium() override
Destructs a DSLiveMedium object.
This is the base class for all direct show mediums.
Definition: DSMedium.h:36
This class it the base class for all live mediums.
Definition: LiveMedium.h:38
The namespace covering the entire Ocean framework.
Definition: Accessor.h:15