Any custom datamixer must derive from BaseImplDataMixer,.
For custom lib implementation, user need to implement the following virtual functions: startImpl(...), // user also need setCaps(port) in startImpl stopImpl(), // stop all resources for datamixer prepollImpl(data), // prepoll on 1st coming data renderImpl(data, dataConsumedCb), // rendering data. Once data is done, invoke dataConsumedCb(datamap) callback to notify application flushImpl(), // flush data in process
Definition at line 38 of file sources/includes/ds3d/common/impl/impl_datamixer.h.


Public Types | |
| using | OnGuardDataCBImpl = std::function< void(ErrCode, GuardDataMap)> |
| using | OnGuardDataCBImpl = std::function< void(ErrCode, GuardDataMap)> |
| using | OnGuardBridgeDataCBImpl = std::function< void(ErrCode, const struct VideoBridge2dInput *)> |
| using | OnGuardBridgeDataCBImpl = std::function< void(ErrCode, const struct VideoBridge2dInput *)> |
| using | ImplMutex = std::recursive_mutex |
| using | ImplMutex = std::recursive_mutex |
Public Member Functions | |
| BaseImplDataMixer () | |
| ~BaseImplDataMixer () override=default | |
| ErrCode | process_i (const int portId, const abiRefDataMap *inputData, const abiOnDataCB *inputDataConsumedCb) final |
| ErrCode | setOutputCb_i (const abiOnDataCB *outputDataCb) final |
| ErrCode | updateInput_i (int portId, MixerUpdate updateType) |
| BaseImplDataMixer () | |
| ~BaseImplDataMixer () override=default | |
| ErrCode | process_i (const int portId, const abiRefDataMap *inputData, const abiOnDataCB *inputDataConsumedCb) final |
| ErrCode | setOutputCb_i (const abiOnDataCB *outputDataCb) final |
| ErrCode | updateInput_i (int portId, MixerUpdate updateType) |
| void | setUserData_i (const abiRefAny *userdata) final |
| void | setUserData_i (const abiRefAny *userdata) final |
| const abiRefAny * | getUserData_i () const final |
| const abiRefAny * | getUserData_i () const final |
| virtual const abiRefAny * | getUserData_i () const =0 |
| void | setErrorCallback_i (const abiErrorCB &cb) final |
| void | setErrorCallback_i (const abiErrorCB &cb) final |
| ErrCode | start_i (const char *configStr, uint32_t strLen, const char *path) override |
| ErrCode | start_i (const char *configStr, uint32_t strLen, const char *path) override |
| const char * | getCaps_i (CapsPort p) const final |
| const char * | getCaps_i (CapsPort p) const final |
| ErrCode | flush_i () override |
| ErrCode | flush_i () override |
| ErrCode | stop_i () override |
| ErrCode | stop_i () override |
| State | state_i () const final |
| State | state_i () const final |
| virtual State | state_i () const =0 |
Protected Member Functions | |
| virtual ErrCode | processImpl (const int portId, GuardDataMap datamap, OnGuardDataCBImpl inputConsumedCb)=0 |
| virtual ErrCode | setOutputCbImpl (OnGuardDataCBImpl outputDataCb)=0 |
| virtual ErrCode | updateInputImpl (int portId, MixerUpdate updateType)=0 |
| virtual ErrCode | processImpl (const int portId, GuardDataMap datamap, OnGuardDataCBImpl inputConsumedCb)=0 |
| virtual ErrCode | setOutputCbImpl (OnGuardDataCBImpl outputDataCb)=0 |
| virtual ErrCode | updateInputImpl (int portId, MixerUpdate updateType)=0 |
| virtual ErrCode | startImpl (const std::string &content, const std::string &path)=0 |
| virtual ErrCode | startImpl (const std::string &content, const std::string &path)=0 |
| virtual ErrCode | stopImpl ()=0 |
| virtual ErrCode | stopImpl ()=0 |
| virtual ErrCode | flushImpl ()=0 |
| virtual ErrCode | flushImpl ()=0 |
| void | setOutputCaps (const std::string &caps) |
| void | setOutputCaps (const std::string &caps) |
| void | setInputCaps (const std::string &caps) |
| void | setInputCaps (const std::string &caps) |
| void | emitError (ErrCode code, const std::string &msg) |
| void | emitError (ErrCode code, const std::string &msg) |
| State | getStateSafe () const |
| State | getStateSafe () const |
| void | setStateSafe (State flag) |
| void | setStateSafe (State flag) |
| ImplMutex & | mutex () const |
| ImplMutex & | mutex () const |
|
inherited |
Definition at line 35 of file sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
inherited |
Definition at line 35 of file 9.1/sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
inherited |
Definition at line 34 of file 9.1/sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
inherited |
Definition at line 34 of file sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
inherited |
Definition at line 33 of file sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
inherited |
Definition at line 33 of file 9.1/sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
inline |
Definition at line 40 of file sources/includes/ds3d/common/impl/impl_datamixer.h.
|
overridedefault |
|
inline |
Definition at line 40 of file 9.1/sources/includes/ds3d/common/impl/impl_datamixer.h.
|
overridedefault |
|
inlineprotectedinherited |
Definition at line 109 of file sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
inlineprotectedinherited |
Definition at line 109 of file 9.1/sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
inlineoverridevirtualinherited |
Implements ds3d::abiProcess.
Definition at line 76 of file sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
inlineoverridevirtualinherited |
Implements ds3d::abiProcess.
Definition at line 76 of file 9.1/sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
protectedpure virtualinherited |
|
protectedpure virtualinherited |
|
inlinefinalvirtualinherited |
Implements ds3d::abiProcess.
Definition at line 66 of file 9.1/sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
inlinefinalvirtualinherited |
Implements ds3d::abiProcess.
Definition at line 66 of file sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
inlineprotectedinherited |
Definition at line 116 of file sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
inlineprotectedinherited |
Definition at line 116 of file 9.1/sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
pure virtualinherited |
|
inlinefinalinherited |
Definition at line 52 of file 9.1/sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
inlinefinalinherited |
Definition at line 52 of file sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
inlineprotectedinherited |
Definition at line 129 of file sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
inlineprotectedinherited |
Definition at line 129 of file 9.1/sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
inlinefinalvirtual |
Implements ds3d::abiDataMixer.
Definition at line 43 of file sources/includes/ds3d/common/impl/impl_datamixer.h.
References DS3D_FAILED_RETURN, DS_ASSERT, ds3d::impl::BaseImplDataProcessor< abiDataMixer >::getStateSafe(), ds3d::kRunning, ds3d::kState, and processImpl().
|
inlinefinalvirtual |
Implements ds3d::abiDataMixer.
Definition at line 43 of file 9.1/sources/includes/ds3d/common/impl/impl_datamixer.h.
References DS3D_FAILED_RETURN, DS_ASSERT, ds3d::impl::BaseImplDataProcessor< abiDataMixer >::getStateSafe(), ds3d::kRunning, ds3d::kState, and processImpl().
|
protectedpure virtual |
Referenced by process_i().
|
protectedpure virtual |
|
inlinefinalvirtualinherited |
Implements ds3d::abiProcess.
Definition at line 53 of file sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
inlinefinalvirtualinherited |
Implements ds3d::abiProcess.
Definition at line 53 of file 9.1/sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
inlineprotectedinherited |
Definition at line 107 of file sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
inlineprotectedinherited |
Definition at line 107 of file 9.1/sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
inlineprotectedinherited |
Definition at line 105 of file sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
inlineprotectedinherited |
Definition at line 105 of file 9.1/sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
inlinefinalvirtual |
Implements ds3d::abiDataMixer.
Definition at line 62 of file 9.1/sources/includes/ds3d/common/impl/impl_datamixer.h.
References DS3D_FAILED_RETURN, DS_ASSERT, ds3d::impl::BaseImplDataProcessor< abiDataMixer >::getStateSafe(), ds3d::kRunning, ds3d::kState, and setOutputCbImpl().
|
inlinefinalvirtual |
Implements ds3d::abiDataMixer.
Definition at line 62 of file sources/includes/ds3d/common/impl/impl_datamixer.h.
References DS3D_FAILED_RETURN, DS_ASSERT, ds3d::impl::BaseImplDataProcessor< abiDataMixer >::getStateSafe(), ds3d::kRunning, ds3d::kState, and setOutputCbImpl().
|
protectedpure virtual |
Referenced by setOutputCb_i().
|
protectedpure virtual |
|
inlineprotectedinherited |
Definition at line 122 of file sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
inlineprotectedinherited |
Definition at line 122 of file 9.1/sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
inlinefinalvirtualinherited |
Implements ds3d::abiProcess.
Definition at line 44 of file sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
inlinefinalvirtualinherited |
Implements ds3d::abiProcess.
Definition at line 44 of file 9.1/sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
inlineoverridevirtualinherited |
Implements ds3d::abiProcess.
Definition at line 54 of file 9.1/sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
inlineoverridevirtualinherited |
Implements ds3d::abiProcess.
Definition at line 54 of file sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
protectedpure virtualinherited |
|
protectedpure virtualinherited |
|
pure virtualinherited |
|
inlinefinalinherited |
Definition at line 96 of file sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
inlinefinalinherited |
Definition at line 96 of file 9.1/sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
inlineoverridevirtualinherited |
Implements ds3d::abiProcess.
Definition at line 84 of file 9.1/sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
inlineoverridevirtualinherited |
Implements ds3d::abiProcess.
Definition at line 84 of file sources/includes/ds3d/common/impl/impl_dataprocess.h.
|
protectedpure virtualinherited |
|
protectedpure virtualinherited |
|
inlinevirtual |
Implements ds3d::abiDataMixer.
Definition at line 78 of file 9.1/sources/includes/ds3d/common/impl/impl_datamixer.h.
References updateInputImpl().
|
inlinevirtual |
Implements ds3d::abiDataMixer.
Definition at line 78 of file sources/includes/ds3d/common/impl/impl_datamixer.h.
References updateInputImpl().
|
protectedpure virtual |
|
protectedpure virtual |
Referenced by updateInput_i().