libmoldeo (Moldeo 1.0 Core)  1.0
libmoldeo es el conjunto de objetos y funciones, que permiten ejecutar las operaciones básicas de la plataforma Moldeo, y que compone su núcleo.
 Todo Clases Namespaces Archivos Funciones Variables 'typedefs' Enumeraciones Valores de enumeraciones Amigas 'defines' Grupos Páginas
Referencia de la Clase moTextureAnimated

una textura asociada a una animación de cuadros Más...

#include <moTexture.h>

Diagrama de herencias de moTextureAnimated
moTexture moAbstract moCircularVideoBuffer moMovie moTextureMultiple moVideoBuffer moLuaCircularVideoBuffer moLuaVideoBuffer

Tipos públicos

enum  moPlayMode { MO_PLAYMODE_TIMEBASE, MO_PLAYMODE_FRAMEBASE }
 

Métodos públicos

 moTextureAnimated ()
 
virtual ~moTextureAnimated ()
 
virtual MOboolean Init (moText p_name, MOuint p_moid, moResourceManager *p_res, moTexParam p_param=MODefTex2DParams)
 
virtual MOboolean Finish ()
 
virtual void Play ()
 
virtual void Stop ()
 
virtual bool IsPlaying ()
 
virtual MOint GetGLId (moTempo *tempo)
 
virtual MOint GetGLId (MOuint p_i)
 
virtual MOint GetGLId (MOfloat p_cycle)
 
virtual MOuint GetFrameCount ()
 
virtual void SetFrameCount (MOuint p_nframes)
 
virtual MOfloat GetFramesPerSecond ()
 
virtual void SetFramesPerSecond (MOfloat p_fps)
 
virtual void SetPlayMode (moPlayMode playmode)
 
virtual moPlayMode GetPlayMode ()
 
virtual void GetFrame (MOuint p_i)
 
virtual MOuint GetActualFrame ()
 
virtual void SetInterpolation (MOuint p_FrameJump, MOuint p_InterpolationTime)
 
virtual MOboolean IsInterpolating ()
 
virtual MOboolean IsInterpolationActive ()
 
virtual MOboolean ActivateInterpolation (MOboolean activate=true)
 
- Métodos públicos heredados desde moTexture
 moTexture ()
 
virtual ~moTexture ()
 
MOboolean BuildEmpty (MOuint p_width, MOuint p_height)
 
MOboolean BuildFromBuffer (MOuint p_width, MOuint p_height, const GLvoid *p_buffer, GLenum p_format=GL_RGBA, GLenum p_type=GL_UNSIGNED_BYTE)
 
MOboolean BuildFromFile (moText p_filename)
 
MOboolean SupportedFile (moText p_filename)
 
MOboolean Load (moParam *p_param)
 
MOboolean Load (moValue *p_value)
 
MOboolean SetBuffer (const GLvoid *p_buffer, GLenum p_format=GL_RGBA, GLenum p_type=GL_UNSIGNED_BYTE)
 
MOboolean SetBuffer (MOuint p_width, MOuint p_height, const GLvoid *p_buffer, GLenum p_format=GL_RGBA, GLenum p_type=GL_UNSIGNED_BYTE)
 
MOboolean GetBuffer (GLvoid *p_buffer, GLenum p_format=GL_RGBA, GLenum p_type=GL_UNSIGNED_BYTE)
 
void SetGLMan (moGLManager *p_gl)
 
void SetDataMan (moDataManager *p_dataman)
 
void SetFileMan (moFileManager *p_fileman)
 
void SetFBO (moFBO *p_fbo)
 
MOuint SetFBOandAttachPoint (moFBO *p_fbo)
 
void SetFBOAttachPoint (MOuint p_fbo_attach_point)
 
moFBOGetFBO () const
 
MOuint GetFBOAttachPoint () const
 
moTextureType GetType () const
 
MOuint GetGLId () const
 
MOuint GetGLId (moMoldeoObject *p_src_mob)
 TODO: check this! obsolete? Más...
 
MOuint GetMOId () const
 
void SetMOId (MOuint p_moid)
 
moText GetName () const
 
void SetName (moText p_name)
 
MOuint GetWidth () const
 
MOuint GetHeight () const
 
MOuint GetDataWidth () const
 
MOuint GetDataHeight () const
 
MOuint GetComponents () const
 
MOlong GetTexelCount () const
 
MOlong GetDataTexelCount () const
 
MOfloat GetMaxCoordS () const
 
MOfloat GetMaxCoordT () const
 
moTexParam GetTexParam () const
 
GLenum GetTexTarget () const
 
GLenum GetTexInternalFormat () const
 
GLint GetMinFilter () const
 
GLint GetMagFilter () const
 
GLint GetWrapS () const
 
GLint GetWrapT () const
 
void FlipBufferVert (MOubyte *pBuffer, MOint p_depth)
 
void CopyFromTex (moTexture *p_src_tex, MOboolean p_copy_glid, MOboolean p_copy_moid, MOboolean p_copy_type, MOboolean p_copy_name)
 
moTextureoperator= (const moTexture &p_src_tex)
 
MOboolean IsBuildedFromFile () const
 
moText CreateThumbnail (moText p_bufferformat, int w, int h, moText newfilename=moText(""))
 
bool CalculateLuminanceAndConstrast (int x0=0, int y0=0, int x1=0, int y1=0)
 
int GetLuminance () const
 
int GetContrast () const
 
MOboolean Refresh ()
 
- Métodos públicos heredados desde moAbstract
 moAbstract ()
 
virtual ~moAbstract ()
 
virtual MOboolean Init ()
 Inicializa el objeto. Más...
 
MOboolean Initialized ()
 Pregunta si está inicializado. Más...
 

Métodos protegidos

virtual MOboolean NeedsInterpolation ()
 
virtual MOint Interpolate ()
 
- Métodos protegidos heredados desde moTexture
void SetParam ()
 
void CalculateSize (MOuint p_width, MOuint p_height)
 
MOboolean Build ()
 
bool ResetBufferData (bool force_creation=false, int bytes_per_pixel=0)
 

Atributos protegidos

moPlayMode m_PlayMode
 
MOboolean m_bIsPlaying
 
MOboolean m_bIsPaused
 
MOuint m_nFrames
 
MOfloat m_fFramesPerSecond
 
MOuint m_FrameNext
 
MOuint m_FramePrevious
 
MOuint m_Time
 
MOuint m_ActualFrame
 
MOboolean m_bInterpolation
 
MOboolean m_bInterpolating
 
moTextureFilterm_pCopyStart
 
moTextureFilterm_pCopyEnd
 
moTextureFilterm_pInterpolator
 
moTextureArray m_srcstart
 
moTextureArray m_dststart
 
moTextureArray m_srcend
 
moTextureArray m_dstend
 
moTextureArray m_srcinterpol
 
moTextureArray m_dstinterpol
 
moShaderm_pShaderCopy
 
moShaderm_pShaderInterpolate
 
MOuint m_FrameJump
 
MOuint m_InterpolationTime
 
MOuint m_StartTime
 
MOuint m_FrameStart
 
MOuint m_FrameEnd
 
MOfloat m_InterpolationPosition
 
- Atributos protegidos heredados desde moTexture
MOboolean m_bBuildedFromFile
 
moFilem_pFile
 
moDataManagerm_pDataMan
 
moFileManagerm_pFileMan
 
moGLManagerm_gl
 
moResourceManagerm_pResourceManager
 
moFBOm_fbo
 
MOuint m_fbo_attach_point
 
moTextureType m_type
 
MOint m_moid
 
MOuint m_glid
 
moText m_name
 
moTexParam m_param
 
MOuint m_width
 
MOuint m_height
 
MOuint m_bytespp
 
MOint m_components
 
MOfloat m_max_coord_s
 
MOfloat m_max_coord_t
 
int Luminance
 
int Contrast
 
moDWord Histogram [256]
 
MOubytem_pBufferData
 
MOuint m_buffer_width
 
MOuint m_buffer_height
 
MOuint m_buffer_bytespp
 

Otros miembros heredados

- Métodos públicos estáticos heredados desde moTexture
static MOuint NextPowerOf2 (MOuint p_seed)
 
- Atributos públicos heredados desde moAbstract
MOboolean m_bInitialized
 Valor de inicialización. Más...
 
- Atributos públicos estáticos heredados desde moAbstract
static moDebugMODebug2 = new moDebug()
 Clase de impresión de errores para depuración. Más...
 
static moTextHeapMODebug = new moTextHeap()
 Lista de textos. Más...
 

Descripción detallada

una textura asociada a una animación de cuadros

Clase de la que derivan las texturas animadas, y todas las que supongan tratar con una sucesión de imágenes.

Ver también
moMovie
moTextureMultiple

Definición en la línea 549 del archivo moTexture.h.

Documentación de las enumeraciones miembro de la clase

Valores de enumeraciones
MO_PLAYMODE_TIMEBASE 
MO_PLAYMODE_FRAMEBASE 

time base relative

frame base relative

Definición en la línea 635 del archivo moTexture.h.

Documentación del constructor y destructor

moTextureAnimated::moTextureAnimated ( )

Constructor por defecto.

Definición en la línea 1375 del archivo moTexture.cpp.

moTextureAnimated::~moTextureAnimated ( )
virtual

Destructor por defecto.

Definición en la línea 1395 del archivo moTexture.cpp.

Documentación de las funciones miembro

MOboolean moTextureAnimated::ActivateInterpolation ( MOboolean  activate = true)
virtual

Fija el estado del modo de interpolación.

Parámetros
activateel nuevo estado.
Devuelve
el estado del modo de interpolación. Aunque se intente activar la interplación, puede ocurrir que los shaders requeridos para la operación de interpolación no estén disponibles, en cuyo caso se devuelve false.

Definición en la línea 1562 del archivo moTexture.cpp.

MOboolean moTextureAnimated::Finish ( )
virtual

Destruye la textura openGL.

Devuelve
true si la operación fue exitosa, false en caso contrario.

if (m_pInterpolator) { delete m_pInterpolator; m_pInterpolator = NULL; } if (m_pCopyStart) { delete m_pCopyStart; m_pCopyStart = NULL; } if (m_pCopyEnd) { delete m_pCopyEnd; m_pCopyEnd = NULL; }

Reimplementado de moTexture.

Reimplementado en moMovie, moTextureMultiple, moCircularVideoBuffer y moVideoBuffer.

Definición en la línea 1421 del archivo moTexture.cpp.

MOuint moTextureAnimated::GetActualFrame ( )
virtual

Definición en la línea 1743 del archivo moTexture.cpp.

void moTextureAnimated::GetFrame ( MOuint  p_i)
virtual

Calcula el cuadro i-ésimo de la animación.

Parámetros
p_iíndice del cuadro a cualcular.

always needs implementation??? must be pure virtual.

Reimplementado en moMovie, moTextureMultiple, moCircularVideoBuffer y moVideoBuffer.

Definición en la línea 1735 del archivo moTexture.cpp.

virtual MOuint moTextureAnimated::GetFrameCount ( )
inlinevirtual

Devuelve el número de cuadros de la animación.

Devuelve
número de cuadros.

Definición en la línea 615 del archivo moTexture.h.

virtual MOfloat moTextureAnimated::GetFramesPerSecond ( )
inlinevirtual

Devuelve los cuadros por segundo de la animación.

Devuelve
cuadros por segundo.

Definición en la línea 626 del archivo moTexture.h.

MOint moTextureAnimated::GetGLId ( moTempo tempo)
virtual

Devuelve el OpenGL ID de textura que corresponde al tempo pasado como parámetro.

Parámetros
tempopuntero al objeto de tempo.
Devuelve
OpenGL ID.

Definición en la línea 1648 del archivo moTexture.cpp.

MOint moTextureAnimated::GetGLId ( MOuint  p_i)
virtual

Devuelve el OpenGL ID de la sub-textura i-ésima.

Parámetros
p_iíndice del cuadro.
Devuelve
OpenGL ID.

Definición en la línea 1690 del archivo moTexture.cpp.

MOint moTextureAnimated::GetGLId ( MOfloat  p_cycle)
virtual

Devuelve el OpenGL ID de la textura, pasando como parámetro una fracción de ciclo 0 = cuadro 0, 1.0 = último cuadro.

Parámetros
p_cyclefracción de ciclo entre 0.0 y 1.0.
Devuelve
OpenGL ID.

Definición en la línea 1717 del archivo moTexture.cpp.

moTextureAnimated::moPlayMode moTextureAnimated::GetPlayMode ( )
virtual

Devuelve el modo de reproducción :

Ver también
moPlayMode MO_PLAYMODE_TIMEBASE : reproducción segun timer interno de GStreamer MO_PLAYMODE_FRAMEBASE : reproducción arbitraria por manejo de frame
Devuelve
moPlayMode modo de reproducción de este video

Definición en la línea 1753 del archivo moTexture.cpp.

MOboolean moTextureAnimated::Init ( moText  p_name,
MOuint  p_moid,
moResourceManager p_res,
moTexParam  p_param = MODefTex2DParams 
)
virtual

Inicializa propiedades básicas de la textura tales como el nombre, id, administradores y parámetros.

Parámetros
p_namenombre de la textura.
p_moidMoldeo ID de la textura.
p_respuntero al administrador de recursos, del cual son extraidos todos los administradores que la textura necesita (GL, Data, File, etc).
p_paramparámetros de textura.

Reimplementado de moTexture.

Reimplementado en moMovie y moTextureMultiple.

Definición en la línea 1400 del archivo moTexture.cpp.

MOint moTextureAnimated::Interpolate ( )
protectedvirtual

Definición en la línea 1622 del archivo moTexture.cpp.

MOboolean moTextureAnimated::IsInterpolating ( )
virtual

Devuelve si el cuadro de la animación está en el rango de interpolación.

Devuelve
true o falsed dependiendo del cuadro actual.

Definición en la línea 1552 del archivo moTexture.cpp.

MOboolean moTextureAnimated::IsInterpolationActive ( )
virtual

Devuelve si el modo de interpolación está activo.

Devuelve
true o false dependiendo del estado del modo de interpolación.

Definición en la línea 1557 del archivo moTexture.cpp.

bool moTextureAnimated::IsPlaying ( )
virtual

Pregunta si esta corriendo

Reimplementado en moMovie.

Definición en la línea 1451 del archivo moTexture.cpp.

MOboolean moTextureAnimated::NeedsInterpolation ( )
protectedvirtual

Definición en la línea 1583 del archivo moTexture.cpp.

void moTextureAnimated::Play ( )
virtual

Play de la animación, corre la animación según su velocidad propia

Reimplementado en moMovie.

Definición en la línea 1441 del archivo moTexture.cpp.

virtual void moTextureAnimated::SetFrameCount ( MOuint  p_nframes)
inlinevirtual

Fija el número de cuadros de la animación

Parámetros
p_nframesNuevo número de cuadros.

Definición en la línea 620 del archivo moTexture.h.

virtual void moTextureAnimated::SetFramesPerSecond ( MOfloat  p_fps)
inlinevirtual

Fija el número de cuadros por segundo de la animación.

Parámetros
p_fpsNuevo número de cuadros por segundo de la animación.

Definición en la línea 632 del archivo moTexture.h.

void moTextureAnimated::SetInterpolation ( MOuint  p_FrameJump,
MOuint  p_InterpolationTime 
)
virtual

Configura el modo de interpolación de la textura. Este modo genera texturas intermedias que entre dos cuadros de la animación.

Parámetros
p_FrameJumpcuadro que define el "salto" de la interpolación: las texturas interpoladas son generadas entre el cuadro p_FrameJump y p_FrameJump + 1.
p_InterpolationTimeel tiempo que dura la interpolación.

int m_idx; moFBO* m_pFBO; moTexture* m_pTex;

moTextureManager* TM = m_pResourceManager->GetTextureMan(); moFBManager* FM = m_pResourceManager->GetFBMan();

m_idx = FM->CreateFBO(); m_pFBO = FM->GetFBO(m_idx);

m_pShaderCopy = SM->GetShader(SM->GetShaderIndex(moText("shaders/Copy.cfg"),true) ); m_pShaderInterpolate = SM->GetShader(SM->GetShaderIndex(moText("shaders/TexInterpolator.cfg"),true) );

MOint idxstart = TM->AddTexture( moText(this->m_name)+moText("copyStart"), m_width, m_height); MOint idxend = TM->AddTexture(moText(this->m_name)+moText("copyEnd"), m_width, m_height);

copia del frame A m_srcstart.Empty(); m_srcstart.Add((moTexture*)this);

m_pTex = TM->GetTexture(idxstart); m_dststart.Empty(); m_dststart.Add(m_pTex); m_pTex->SetFBOandAttachPoint(m_pFBO);

copia del frame B m_srcend.Empty(); m_srcend.Add((moTexture*)this);

m_pTex = TM->GetTexture(idxend); m_dstend.Empty(); m_dstend.Add(m_pTex); m_pTex->SetFBOandAttachPoint(m_pFBO);

interpolacion con fuente A y B m_srcinterpol.Empty(); m_srcinterpol.Add( TM->GetTexture(idxstart)); m_srcinterpol.Add( TM->GetTexture(idxend));

m_pTex = (moTexture*)this; m_dstinterpol.Empty(); m_dstinterpol.Add(m_pTex); m_pTex->SetFBOandAttachPoint(m_pFBO); if (!(m_pCopyStart && m_pCopyEnd && m_pInterpolator)) { if (!m_pInterpolator) m_pInterpolator = new moTextureFilter(); if (!m_pCopyStart) m_pCopyStart = new moTextureFilter(); if (!m_pCopyEnd) m_pCopyEnd = new moTextureFilter(); } if (m_pCopyStart && m_pCopyEnd && m_pInterpolator) { m_pCopyStart->Init( m_pResourceManager->GetGLMan(), m_pResourceManager->GetRenderMan(), m_srcstart, m_dststart, m_pShaderCopy ); m_pCopyEnd->Init( m_pResourceManager->GetGLMan(), m_pResourceManager->GetRenderMan(), m_srcend, m_dstend, m_pShaderCopy ); m_pInterpolator->Init( m_pResourceManager->GetGLMan(), m_pResourceManager->GetRenderMan(), m_srcinterpol, m_dstinterpol, m_pShaderInterpolate ); }

Definición en la línea 1457 del archivo moTexture.cpp.

void moTextureAnimated::SetPlayMode ( moTextureAnimated::moPlayMode  playmode)
virtual

Fija el modo de reproducción :

Ver también
moPlayMode MO_PLAYMODE_TIMEBASE : reproducción segun timer interno de GStreamer MO_PLAYMODE_FRAMEBASE : reproducción arbitraria por manejo de frame
Parámetros
p_iíndice de textura a validar.

Definición en la línea 1749 del archivo moTexture.cpp.

void moTextureAnimated::Stop ( )
virtual

Para la animación, mostrando el cuadro del principio

Reimplementado en moMovie.

Definición en la línea 1446 del archivo moTexture.cpp.

Documentación de los datos miembro

MOuint moTextureAnimated::m_ActualFrame
protected

Definición en la línea 707 del archivo moTexture.h.

MOboolean moTextureAnimated::m_bInterpolating
protected

Definición en la línea 711 del archivo moTexture.h.

MOboolean moTextureAnimated::m_bInterpolation
protected

Definición en la línea 710 del archivo moTexture.h.

MOboolean moTextureAnimated::m_bIsPaused
protected

Definición en la línea 699 del archivo moTexture.h.

MOboolean moTextureAnimated::m_bIsPlaying
protected

Definición en la línea 698 del archivo moTexture.h.

moTextureArray moTextureAnimated::m_dstend
protected

Definición en la línea 720 del archivo moTexture.h.

moTextureArray moTextureAnimated::m_dstinterpol
protected

Definición en la línea 721 del archivo moTexture.h.

moTextureArray moTextureAnimated::m_dststart
protected

Definición en la línea 719 del archivo moTexture.h.

MOfloat moTextureAnimated::m_fFramesPerSecond
protected

Definición en la línea 702 del archivo moTexture.h.

MOuint moTextureAnimated::m_FrameEnd
protected

Definición en la línea 734 del archivo moTexture.h.

MOuint moTextureAnimated::m_FrameJump
protected

Definición en la línea 728 del archivo moTexture.h.

MOuint moTextureAnimated::m_FrameNext
protected

Definición en la línea 704 del archivo moTexture.h.

MOuint moTextureAnimated::m_FramePrevious
protected

Definición en la línea 705 del archivo moTexture.h.

MOuint moTextureAnimated::m_FrameStart
protected

Definición en la línea 733 del archivo moTexture.h.

MOfloat moTextureAnimated::m_InterpolationPosition
protected

Definición en la línea 735 del archivo moTexture.h.

MOuint moTextureAnimated::m_InterpolationTime
protected

Definición en la línea 729 del archivo moTexture.h.

MOuint moTextureAnimated::m_nFrames
protected

Definición en la línea 701 del archivo moTexture.h.

moTextureFilter* moTextureAnimated::m_pCopyEnd
protected

Definición en la línea 715 del archivo moTexture.h.

moTextureFilter* moTextureAnimated::m_pCopyStart
protected

Definición en la línea 714 del archivo moTexture.h.

moTextureFilter* moTextureAnimated::m_pInterpolator
protected

Definición en la línea 716 del archivo moTexture.h.

moPlayMode moTextureAnimated::m_PlayMode
protected

Definición en la línea 697 del archivo moTexture.h.

moShader* moTextureAnimated::m_pShaderCopy
protected

Definición en la línea 724 del archivo moTexture.h.

moShader* moTextureAnimated::m_pShaderInterpolate
protected

Definición en la línea 725 del archivo moTexture.h.

moTextureArray moTextureAnimated::m_srcend
protected

Definición en la línea 720 del archivo moTexture.h.

moTextureArray moTextureAnimated::m_srcinterpol
protected

Definición en la línea 721 del archivo moTexture.h.

moTextureArray moTextureAnimated::m_srcstart
protected

Definición en la línea 719 del archivo moTexture.h.

MOuint moTextureAnimated::m_StartTime
protected

Definición en la línea 732 del archivo moTexture.h.

MOuint moTextureAnimated::m_Time
protected

Definición en la línea 706 del archivo moTexture.h.


La documentación para esta clase fue generada a partir de los siguientes ficheros: