#ifndef EEDA2366_7E77_49AC_8716_526A3A63113F #define EEDA2366_7E77_49AC_8716_526A3A63113F /* ******************************************************************************* * INCLUDE ******************************************************************************* */ #include #include "../core/Component.h" #include namespace Video { namespace MPP5 { /* ******************************************************************************* * CLASS DECLARE ******************************************************************************* */ class MPPChannel { public: MPPChannel(uint32_t moduleID, uint32_t deviceID, uint32_t channelID); public: bool operator<(const MPPChannel& other) const; uint32_t moduleID() const; uint32_t deviceID() const; uint32_t channelID() const; std::string toString() const; virtual void bind(const MPPChannel& next); virtual void unbind(const MPPChannel& next); void doLink(Core::Component::Ptr pPrevious); void doUnlink(Core::Component::Ptr pPrevious); hi_mpp_chn raw(); private: uint32_t _moduleID; uint32_t _deviceID; uint32_t _channelID; }; inline bool MPPChannel::operator<(const MPPChannel& other) const { return moduleID() < other.moduleID() || deviceID() < other.deviceID() || channelID() < other.channelID(); } inline uint32_t MPPChannel::moduleID() const { return _moduleID; } inline uint32_t MPPChannel::deviceID() const { return _deviceID; } inline uint32_t MPPChannel::channelID() const { return _channelID; } } } #endif