Add several actions for ARC (Audio Return Channel)
ARC channel is established by both TV and AV Reciever.
From TV, it sends <Request ARC Initiation> and AVR
responds with <Initiate ARC>.
From AVR, it can be initiated by sending <Initiate ARC> directly
to TV.
Once TV receives <Initiate ARC> it sets up ARC internally
and replies <Report ARC Initiated> to AVR.
Termination steps are almost same except for message name
(use Terminate instread of Initiation).
In order to implement the above steps, this change introduces
following classes.
RequestArcInitiation(Termination)Action:
handles <Request ARC Initiation> (<Request ARC Termination>)
RequestArcAction handles common logic of them.
SetArcTransmissionStateAction:
handles ARC set up, enabling/disabling ARC and
reports results to AVR.
<Initiate ARC> and <Terminate ARC> handles directly in
HdmiControlService
Along with this, this change has implmentation for
add&removeAction. To avoid synchronization issue
they are isolated to main thread.
Change-Id: I3c5cf7c777e6c1de50d63ce4643b191dfe15fe1f
8 files changed