28.11.2012 Views

Procesamiento digital de video en tiempo real y - Maestría en ...

Procesamiento digital de video en tiempo real y - Maestría en ...

Procesamiento digital de video en tiempo real y - Maestría en ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Procesami<strong>en</strong>to</strong> <strong>digital</strong> <strong>de</strong> vi<strong>de</strong>o <strong>en</strong> <strong>tiempo</strong> <strong>real</strong> y “vi<strong>de</strong>o wall” con la PC 106<br />

// ReadFromStream<br />

//<br />

// Imposibilitado para restaurar nuestro estado <strong>de</strong>s<strong>de</strong> un stream<br />

//<br />

HRESULT CEZrgb24::ReadFromStream(IStream *pStream)<br />

{<br />

HRESULT hr;<br />

READIN(m_effect);<br />

READIN(m_effectStartTime);<br />

READIN(m_effectTime);<br />

return NOERROR;<br />

} // ReadFromStream<br />

//<br />

// GetPages<br />

//<br />

// Retorna el clsid <strong>de</strong> la pagina propietaria que nosotros soportamos<br />

//<br />

STDMETHODIMP CEZrgb24::GetPages(CAUUID *pPages)<br />

{<br />

pPages->cElems = 1;<br />

pPages->pElems = (GUID *) CoTaskMemAlloc(sizeof(GUID));<br />

if (pPages->pElems == NULL) {<br />

return E_OUTOFMEMORY;<br />

}<br />

*(pPages->pElems) = CLSID_EZrgb24PropertyPage;<br />

return NOERROR;<br />

} // GetPages<br />

//<br />

// get_IPEffect<br />

//<br />

// Retorna el efecto actual seleccionado<br />

//<br />

STDMETHODIMP CEZrgb24::get_IPEffect(int *IPEffect,REFTIME *start,REFTIME *l<strong>en</strong>gth)<br />

{<br />

CAutoLock cAutolock(&m_EZrgb24Lock);<br />

CheckPointer(IPEffect,E_POINTER);<br />

CheckPointer(start,E_POINTER);<br />

CheckPointer(l<strong>en</strong>gth,E_POINTER);<br />

*IPEffect = m_effect;<br />

*start = COARefTime(m_effectStartTime);<br />

*l<strong>en</strong>gth = COARefTime(m_effectTime);<br />

return NOERROR;<br />

} // get_IPEffect<br />

//<br />

// put_IPEffect<br />

//<br />

// Selecciona el efecto <strong>de</strong> vi<strong>de</strong>o requerido<br />

//<br />

STDMETHODIMP CEZrgb24::put_IPEffect(int IPEffect,REFTIME start,REFTIME l<strong>en</strong>gth)<br />

{<br />

CAutoLock cAutolock(&m_EZrgb24Lock);<br />

m_effect = IPEffect;<br />

m_effectStartTime = COARefTime(start);<br />

m_effectTime = COARefTime(l<strong>en</strong>gth);<br />

SetDirty(TRUE);<br />

return NOERROR;<br />

} // put_IPEffect

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!