1.1.0版本
This commit is contained in:
103
UniTAP/dev/ports/hdtx.py
Normal file
103
UniTAP/dev/ports/hdtx.py
Normal file
@@ -0,0 +1,103 @@
|
||||
from .tx import *
|
||||
from .modules.edid.edid import EdidSource
|
||||
from .modules.link.hdmi.link import HdmiLinkTx
|
||||
from .modules.vtg.pg import HdmiPatternGenerator
|
||||
from .modules.hdcp import HdcpSource
|
||||
from .modules.capturer.event.event_capturer import EventCapturer, EventFilterHdTx
|
||||
from .modules.cec.cec_tx import CecTx
|
||||
from UniTAP.libs.lib_tsi.tsi_types import TSI_HDTX_HDCP_CAPS_R, TSI_HDTX_HDCP_STATUS_R
|
||||
from UniTAP.libs.lib_tsi.tsi_types import TSI_HDTX_LOG_CONTROL
|
||||
|
||||
|
||||
class HDTX(TX):
|
||||
|
||||
"""
|
||||
|
||||
Main class of `HDTX` object.
|
||||
Inherited from class `TX`.
|
||||
Class describes capabilities of 300th (3XX) series of HDMI devices in Source (TX - transmitter) role.
|
||||
|
||||
Attributes:
|
||||
__link (HdmiLinkTx): object of `HdmiLinkTx`.
|
||||
__edid (EdidSource): object of `EdidSource`.
|
||||
__hdcp (HdcpSource): object of `HdcpSource`.
|
||||
__pg (HdmiPatternGenerator): object of `HdmiPatternGenerator`.
|
||||
__event_capturer (EventCapturer): object of `EventCapturer`.
|
||||
__cec (CecTx): object of `CecTx`.
|
||||
"""
|
||||
|
||||
def __init__(self, port_io: PortIO, memory_manager: MemoryManager, capturer: Capturer):
|
||||
super().__init__(port_io, memory_manager, capturer)
|
||||
|
||||
self.__link = HdmiLinkTx(port_io)
|
||||
self.__edid = EdidSource(port_io, 1)
|
||||
self.__pg = HdmiPatternGenerator(port_io, memory_manager)
|
||||
self.__hdcp = HdcpSource(port_io, TSI_HDTX_HDCP_CAPS_R, TSI_HDTX_HDCP_STATUS_R)
|
||||
self.__event_capturer = EventCapturer(capturer, port_io.index(), [EventFilterHdTx(0)])
|
||||
self.__cec = CecTx(port_io)
|
||||
|
||||
@property
|
||||
def link(self) -> HdmiLinkTx:
|
||||
"""
|
||||
|
||||
Should be used to control link settings on Source (TX - transmitter) side.
|
||||
|
||||
Returns:
|
||||
object of `HdmiLinkTx` type.
|
||||
"""
|
||||
return self.__link
|
||||
|
||||
@property
|
||||
def pg(self) -> HdmiPatternGenerator:
|
||||
"""
|
||||
|
||||
Should be used to control Pattern generator functionality on Source (TX - transmitter) side.
|
||||
|
||||
Returns:
|
||||
object of `HdmiPatternGenerator` type.
|
||||
"""
|
||||
return self.__pg
|
||||
|
||||
@property
|
||||
def edid(self):
|
||||
"""
|
||||
|
||||
Should be used to work with EDID on Source (TX - transmitter) side.
|
||||
|
||||
Returns:
|
||||
object of `EdidSource` type.
|
||||
"""
|
||||
return self.__edid
|
||||
|
||||
@property
|
||||
def hdcp(self) -> HdcpSource:
|
||||
"""
|
||||
|
||||
Should be used to work with HDCP on Source (TX - transmitter) side.
|
||||
|
||||
Returns:
|
||||
object of `HdcpSource`.
|
||||
"""
|
||||
return self.__hdcp
|
||||
|
||||
@property
|
||||
def event_capturer(self) -> EventCapturer:
|
||||
"""
|
||||
|
||||
Should be used to control `EventCapturer` on Source (TX - transmitter) role.
|
||||
|
||||
Returns:
|
||||
object of `EventCapturer` type.
|
||||
"""
|
||||
return self.__event_capturer
|
||||
|
||||
@property
|
||||
def cec(self) -> CecTx:
|
||||
"""
|
||||
|
||||
Should be used to control `CecTx` on Source (TX - transmitter) role.
|
||||
|
||||
Returns:
|
||||
object of `CecTx` type.
|
||||
"""
|
||||
return self.__cec
|
||||
Reference in New Issue
Block a user