53 lines
1.5 KiB
C++
53 lines
1.5 KiB
C++
#ifndef AB83CB54_F14E_4C1B_B2AE_6AF47090444C
|
|
#define AB83CB54_F14E_4C1B_B2AE_6AF47090444C
|
|
/*
|
|
*******************************************************************************
|
|
* INCLUDE
|
|
*******************************************************************************
|
|
*/
|
|
#include "../../core/VideoOutput.h"
|
|
#include "MPPChannel.h"
|
|
#include <hi_mpi_hdmi.h>
|
|
#include <hi_mpi_vo.h>
|
|
|
|
namespace Video
|
|
{
|
|
namespace MPP5
|
|
{
|
|
/*
|
|
*******************************************************************************
|
|
* CLASS DECLARE
|
|
*******************************************************************************
|
|
*/
|
|
class HDMIVideoOutput: public Core::VideoOutput, MPPChannel
|
|
{
|
|
public:
|
|
HDMIVideoOutput(const std::string& name);
|
|
~HDMIVideoOutput();
|
|
|
|
protected:
|
|
void start() override;
|
|
void stop() override;
|
|
void onConfigChanged(ParameterNames& names) override;
|
|
void onLink(Core::Component::Ptr pPrevious) override;
|
|
void onUnlink(Core::Component::Ptr pPrevious) override;
|
|
|
|
void onHotPlug();
|
|
void onNoPlug();
|
|
void onEDIDFail();
|
|
|
|
void startOutput();
|
|
void stopOutput();
|
|
|
|
hi_bool getUsingHDMIMode();
|
|
hi_vo_csc_matrix getCSCMatrix();
|
|
hi_rotation getRotationValue();
|
|
|
|
PROPERTY_DECLARE(Pluged, bool, false, protected, protected)
|
|
PROPERTY_DECLARE(HDMIStarted, bool, false, protected, protected)
|
|
|
|
static void eventCallback(hi_hdmi_event_type event, td_void* p);
|
|
};
|
|
}
|
|
}
|
|
#endif
|