本文整理汇总了C++中PortVideo::getDirection方法的典型用法代码示例。如果您正苦于以下问题:C++ PortVideo::getDirection方法的具体用法?C++ PortVideo::getDirection怎么用?C++ PortVideo::getDirection使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PortVideo
的用法示例。
在下文中一共展示了PortVideo::getDirection方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: deInstantiate
/**
@brief Configure the processing component by sending all relevant info
*/
WRAPPER_OPENMAX_API OMX_ERRORTYPE OpenMax_Proxy::deInstantiate()
//*************************************************************************************************************
{
IN0("\n");
OMX_ERRORTYPE OmxError=OMX_ErrorNone;
t_nmf_error nmf_err = NMF_OK;
OMX_HANDLETYPE handle = mENSComponent.getOMXHandle();
nmf_err = m_pNmfProcWrp->unbindFromUser("sendcommand");
if (nmf_err != NMF_OK)
{
MSG1("Error: Imageproc unbindfromUser sendcommand 0x%x\n", nmf_err);
OmxError=OMX_ErrorHardware;
}
nmf_err = m_pNmfProcWrp->unbindFromUser("fsminit");
if (nmf_err != NMF_OK)
{
MSG1("Error: Imageproc unbindfromUser fsminit 0x%x\n", nmf_err);
OmxError=OMX_ErrorHardware;
}
#if (SYNCHRONOUS ==0)
nmf_err |= m_pNmfProcWrp->unbindFromUser("Config");
if (nmf_err != NMF_OK)
{
MSG1("Error: Imageproc unbindfromUser Config 0x%x\n", nmf_err);
OmxError=OMX_ErrorHardware;
}
nmf_err = m_pNmfProcWrp->unbindFromUser("Param");
if (nmf_err != NMF_OK)
{
MSG1("Error: Imageproc unbindfromUser Param 0x%x\n", nmf_err);
OmxError=OMX_ErrorHardware;
}
#endif
nmf_err |= EnsWrapper_unbindToUser(handle, m_pNmfProcWrp, "proxy");
if (nmf_err != NMF_OK)
{
MSG1("Error: m_pNmfProcWrp unbindToUser proxy 0x%x\n", nmf_err);
OmxError=OMX_ErrorHardware;
}
nmf_err |= EnsWrapper_unbindToUser(handle, m_pNmfProcWrp, /* "get_config" */ "ToOMXComponent");
if (nmf_err != NMF_OK)
{
MSG1("Error: m_pNmfProcWrp unbindToUser ToOMXComponent 0x%x\n", nmf_err);
OmxError=OMX_ErrorHardware;
}
char name[20]; //reserve some char for formatting callback name
PortVideo* pPort;
for (unsigned int Index=0; Index< mENSComponent.getPortCount(); ++Index)
{
pPort = (PortVideo*)mENSComponent.getPort(Index);
switch(pPort->getDirection())
{
case OMX_DirInput: //bind emptythisbuffer, emptybufferdone for each input port
sprintf(name, "emptythisbuffer[%u]", Index);
nmf_err |= m_pNmfProcWrp->unbindFromUser(name);
sprintf(name, "emptybufferdone[%u]", Index);
nmf_err |= EnsWrapper_unbindToUser(handle, m_pNmfProcWrp, name);
break;
case OMX_DirOutput: //bind emptythisbuffer, emptybufferdone for each input port
sprintf(name, "fillthisbuffer[%u]", Index);
nmf_err |= m_pNmfProcWrp->unbindFromUser(name);
sprintf(name, "fillbufferdone[%u]", Index);
nmf_err |= EnsWrapper_unbindToUser(handle, m_pNmfProcWrp, name);
break;
default:
WARNING(0);
break;
}
}
if (nmf_err != NMF_OK)
{
OmxError=OMX_ErrorHardware;
}
m_pNmfProcWrp->destroy();
openmax_processor_wrpDestroy(m_pNmfProcWrp);
m_pProcessor=NULL; // for releasing the 'processor'
OUTR(" ", (OmxError));
return OmxError;
}
示例2: instantiate
/**
brief Instantiate the nmf component and bind interfaces
Called during Loaded to Idle transition
*/
WRAPPER_OPENMAX_API OMX_ERRORTYPE OpenMax_Proxy::instantiate()
//*************************************************************************************************************
{ //binding all interfaces
OMX_ERRORTYPE omx_error=OMX_ErrorNone;
IN0("\n");
// Init Components
// Bind of arm nmf components
MSG1("OpenMax_Proxy(%s) Instantiating arm nmf component\n", GetComponentName());
openmax_processor *pProcessor=NULL;
if (m_pProcessor != NULL)
pProcessor = m_pProcessor;
else if (m_fnCreateNmfComponent !=NULL)
{
m_pProcessor= m_fnCreateNmfComponent();
pProcessor = m_pProcessor;
}
m_pNmfProcWrp = openmax_processor_wrpCreate(pProcessor);
m_pNmfProcWrp->priority = m_nmfPriority;
if (m_pNmfProcWrp->construct() != NMF_OK)
NMF_PANIC("PANIC - Construct Error\n") ;
t_nmf_error error ;
// bindFromUser --> Asynchronous
// getInterface --> Synchronous
error = m_pNmfProcWrp->bindFromUser("sendcommand", 2, &mIsendCommand) ;
if (error != NMF_OK)
NMF_PANIC("PANIC - bindFromUser sendCommand\n") ;
#if (SYNCHRONOUS ==0)
error = m_pNmfProcWrp->bindFromUser("Param", 2*mENSComponent.getPortCount()+1, &m_IParam) ; // One setparam per port + 1
if (error != NMF_OK)
NMF_PANIC("PANIC - bindFromUser Param\n") ;
error = m_pNmfProcWrp->bindFromUser("Config", 2*mENSComponent.getPortCount()+1, &m_IConfig) ; // One setparam per port + 1
if (error != NMF_OK)
NMF_PANIC("PANIC - bindFromUser Config\n") ;
#else //Bind synchronous interfaces
//interfaces are binded in a synchronous way
error = m_pNmfProcWrp->getInterface("Param", &m_IParam);
if (error != NMF_OK)
NMF_PANIC("PANIC - getInterface Param\n") ;
error = m_pNmfProcWrp->getInterface("Config", &m_IConfig);
if (error != NMF_OK)
NMF_PANIC("PANIC - getInterface Config\n") ;
#endif
error = m_pNmfProcWrp->bindFromUser("fsminit", 1 , &mIfsmInit);
if (error != NMF_OK)
NMF_PANIC("Error: unable to bind fsminit!...\n");
error = EnsWrapper_bindToUser(mENSComponent.getOMXHandle(), m_pNmfProcWrp, "proxy", getEventHandlerCB(), 8);
if (error != NMF_OK)
NMF_PANIC("Error: unable to bind proxy!...\n");
error = EnsWrapper_bindToUser(mENSComponent.getOMXHandle(), m_pNmfProcWrp, "ToOMXComponent", mConfigCB, 1);
if (error != NMF_OK)
NMF_PANIC("Error: unable to bind ToOMXComponent!...\n");
char name[20]; //reserve some char for formatting callback name
size_t iNbInput =0;
size_t iNbOutput=0;
PortVideo* pPort;
for (unsigned int Index=0; Index< mENSComponent.getPortCount(); ++Index)
{
pPort = (PortVideo*)mENSComponent.getPort(Index);
MSG3("\n %s Port %d : direction =%d\n", GetComponentName(), Index, pPort->getDirection());
//reset port info at this point
//NO it's too late!
#if 0
if (pPort->getBufferSupplier() !=OMX_BufferSupplyUnspecified)
{
printf("wwwwwwwwwwwwwwwwwwwwwwwwwwww %s.port[%d] reset state(%d) to OMX_BufferSupplyUnspecified\n", GetComponentName(), Index, pPort->getBufferSupplier());
pPort->setBufferSupplier(OMX_BufferSupplyUnspecified);
}
#endif
switch(pPort->getDirection())
{
case OMX_DirInput: //bind emptythisbuffer, emptybufferdone for each input port
if (iNbInput < MAX_PORTS_COUNT)
{
sprintf(name, "emptythisbuffer[%d]", Index);
error = m_pNmfProcWrp->bindFromUser(name, pPort->getBufferCountActual(), &mIemptyThisBuffer[Index]);
if (error != NMF_OK)
NMF_PANIC("PANIC %s->bindFromUser %s\n", GetComponentName(), name) ;
sprintf(name, "emptybufferdone[%d]", Index);
error = EnsWrapper_bindToUser(mENSComponent.getOMXHandle(),
m_pNmfProcWrp,
name ,
this->getEmptyBufferDoneCB(),
pPort->getBufferCountActual());
if (error != NMF_OK)
//.........这里部分代码省略.........