RDK Documentation (Open Sourced RDK Components)
videoOutputPortConfig.hpp
1 /*
2  * If not stated otherwise in this file or this component's Licenses.txt file the
3  * following copyright and licenses apply:
4  *
5  * Copyright 2016 RDK Management
6  *
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  *
11  * http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18 */
19 
20 
21 
22 
23 /**
24 * @defgroup devicesettings
25 * @{
26 * @defgroup ds
27 * @{
28 **/
29 
30 
31 #ifndef VIDEOOUTPUTPORTCONFIG_HPP_
32 #define VIDEOOUTPUTPORTCONFIG_HPP_
33 
34 #include "videoOutputPortType.hpp"
35 #include "videoResolution.hpp"
36 
37 
38 
39 
40 #include <vector>
41 #include <string>
42 
43 namespace device {
44 
46 
47 
48 
49  std::vector<PixelResolution> _vPixelResolutions;
50  std::vector<AspectRatio> _vAspectRatios;
51  std::vector<StereoScopicMode> _vStereoScopieModes;
52  std::vector<VideoResolution> _supportedResolutions;
53  std::vector<FrameRate> _vFrameRates;
54  std::vector<VideoOutputPortType> _vPortTypes;
55  std::vector<VideoOutputPort> _vPorts;
56 
57 
60 
61 public:
62  static VideoOutputPortConfig & getInstance();
63 
64  const PixelResolution &getPixelResolution(int id) const;
65  const AspectRatio &getAspectRatio(int id) const;
66  const StereoScopicMode &getSSMode(int id) const;
67  const VideoResolution &getVideoResolution (int id) const;
68  const FrameRate &getFrameRate(int id) const;
69  VideoOutputPortType &getPortType(int id);
70  VideoOutputPort &getPort(int id);
71  VideoOutputPort &getPort(const std::string &name);
72  List<VideoOutputPort> getPorts();
73 
74  List<VideoOutputPortType> getSupportedTypes();
75  List<VideoResolution> getSupportedResolutions(bool isIgnoreEdid=false);
76 
77  void load();
78  void release();
79 
80 };
81 
82 }
83 
84 #endif /* VIDEOOUTPUTPORTCONFIG_HPP_ */
85 
86 
87 /** @} */
88 /** @} */
device::StereoScopicMode
This class extentds DSConstant to implement StereoScopicMode. It manages the stereoscopic mode of the...
Definition: stereoScopicMode.hpp:50
device::List
This class is implemented using templates and it is used to maintain a container with the list of sup...
Definition: list.hpp:51
device::VideoOutputPortConfig
Definition: videoOutputPortConfig.hpp:45
device::VideoResolution
Class extending DSConstant to implement the videoResolution interface.
Definition: videoResolution.hpp:57
device::PixelResolution
This class extends DSConstant to manages the pixel resolution of the video.
Definition: pixelResolution.hpp:51
device::FrameRate
This class extends DSConstant to handle the video frame rate.
Definition: frameRate.hpp:49
device::VideoOutputPort
Class extending enumerable to implement the videoooutputport interface.
Definition: videoOutputPort.hpp:59
videoOutputPortType.hpp
It contains structures and class referenced by the videoOutputportTypes.cpp file.
videoResolution.hpp
It contains class and structure refrenced by the videoResolution.cpp file.
device::AspectRatio
This class extends DSConstant to implement AspectRatio. It manages the aspect ratios of the videos.
Definition: aspectRatio.hpp:50
device::VideoOutputPortType
Class extending DSConstant to implement the VideoOutputporttype interface.
Definition: videoOutputPortType.hpp:59