libmoldeo (Moldeo 1.0 Core)  1.0
libmoldeo is the group of objects and functions that executes the basic operations of Moldeo 1.0 Platform.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
moBucket Class Reference

Espacio en memoria para compartir datos entre objetos. More...

#include <moBuckets.h>

Public Member Functions

 moBucket ()
 
virtual ~moBucket ()
 
bool Lock ()
 Paraliza el acceso al buffer interno. More...
 
bool Unlock ()
 Libera el acceso al buffer interno. More...
 
MOubyteGetBuffer ()
 Devuelve el puntero al buffer de datos. More...
 
MOlong GetSize ()
 Devuelve el tamaño en bytes asignado por el buffer. More...
 
void SetBuffer (MOlong size, MOubyte *pbuf)
 Crea un espacio de memoria y asigna los valores desde un puntero a otro espacio de memoria. More...
 
void Copy (MOlong size, MOubyte *pbuf)
 Copia al espacio de memoria los valores de otro espacio de memoria. More...
 
void AttachBucket (moBucket *pbucket)
 Enlaza un moBucket. More...
 
moBucketGetAttachedBucket ()
 Devuelve el moBucket enlazado a este. More...
 
void EmptyBucket ()
 Libera el espacio de memoria. More...
 
void BuildBucket (MOlong size, int setvalue)
 Habilita el buffer en memoria con el valor prefijado. More...
 

Protected Attributes

MOlong m_lBufferSize
 tamaño del espacio en memoria (buffer) More...
 
bool m_bAlligned
 alineación de la memoria, siempre debe estar alineada More...
 
bool m_bEmpty
 indicador si el buffer está vacío o lleno (con datos) More...
 
moLock m_Lock
 semáforo para el acceso asincrónico More...
 
MOubytem_pBuffer
 puntero al espacio en memoria More...
 
moBucketm_pAttachedBucket
 moBucket enlazado More...
 
moBucketm_pAttachedBucketUp
 moBucket enlazado para upstreaming More...
 
moBucketm_pAttachedBucketDown
 moBucket enlazado para downstreaming More...
 

Detailed Description

Espacio en memoria para compartir datos entre objetos.

Memoria o "balde" que permite el acceso asincrónico a objetos como son cuadros reproducidos de video u otro tipo de datos. Es a su vez un nodo de una lista enlazada.

See also
moBucketsPool
moLock

Definition at line 53 of file moBuckets.h.

Constructor & Destructor Documentation

moBucket::moBucket ( )

Definition at line 33 of file moBuckets.cpp.

moBucket::~moBucket ( )
virtual

Definition at line 40 of file moBuckets.cpp.

Member Function Documentation

void moBucket::AttachBucket ( moBucket pbucket)

Enlaza un moBucket.

Parameters
pbucketpuntero al moBucket a enlazar

Definition at line 107 of file moBuckets.cpp.

void moBucket::BuildBucket ( MOlong  size,
int  setvalue 
)

Habilita el buffer en memoria con el valor prefijado.

Parameters
sizetamaño del buffer de memoria, en bytes
setvaluevalor con el que fijar el buffer recien creado

Definition at line 77 of file moBuckets.cpp.

void moBucket::Copy ( MOlong  size,
MOubyte pbuf 
)

Copia al espacio de memoria los valores de otro espacio de memoria.

Parameters
sizetamaño del buffer de memoria a copiar, en bytes
pbufpuntero de dónde copiar los datos al nuevo espacio de memoria

Definition at line 97 of file moBuckets.cpp.

void moBucket::EmptyBucket ( )

Libera el espacio de memoria.

No liberará memoria si no fue alojada anteriormente.

Definition at line 66 of file moBuckets.cpp.

moBucket * moBucket::GetAttachedBucket ( )

Devuelve el moBucket enlazado a este.

Returns
puntero al moBucket enlazado

Definition at line 114 of file moBuckets.cpp.

MOubyte * moBucket::GetBuffer ( )

Devuelve el puntero al buffer de datos.

Returns
puntero al buffer

Definition at line 58 of file moBuckets.cpp.

MOlong moBucket::GetSize ( )

Devuelve el tamaño en bytes asignado por el buffer.

Returns
tamaño en bytes del buffer

Definition at line 53 of file moBuckets.cpp.

bool moBucket::Lock ( )

Paraliza el acceso al buffer interno.

Utiliza un moLock para proteger los datos para el acceso asincrónico

See also
moLock
Returns
verdadero si fue exitoso o falso si no

Definition at line 45 of file moBuckets.cpp.

void moBucket::SetBuffer ( MOlong  size,
MOubyte pbuf 
)

Crea un espacio de memoria y asigna los valores desde un puntero a otro espacio de memoria.

Parameters
sizetamaño del buffer de memoria, en bytes
pbufpuntero de dónde copiar los datos al nuevo espacio de memoria
setvaluevalor con el que fijar el buffer recien creado

Definition at line 87 of file moBuckets.cpp.

bool moBucket::Unlock ( )

Libera el acceso al buffer interno.

Utiliza un moLock para proteger los datos para el acceso asincrónico.

See also
moLock
Returns
verdadero si fue exitoso o falso si noLibera el acceso al buffer interno

Definition at line 49 of file moBuckets.cpp.

Member Data Documentation

bool moBucket::m_bAlligned
protected

alineación de la memoria, siempre debe estar alineada

Definition at line 131 of file moBuckets.h.

bool moBucket::m_bEmpty
protected

indicador si el buffer está vacío o lleno (con datos)

Definition at line 132 of file moBuckets.h.

MOlong moBucket::m_lBufferSize
protected

tamaño del espacio en memoria (buffer)

Definition at line 129 of file moBuckets.h.

moLock moBucket::m_Lock
protected

semáforo para el acceso asincrónico

Definition at line 134 of file moBuckets.h.

moBucket* moBucket::m_pAttachedBucket
protected

moBucket enlazado

Definition at line 136 of file moBuckets.h.

moBucket* moBucket::m_pAttachedBucketDown
protected

moBucket enlazado para downstreaming

Definition at line 139 of file moBuckets.h.

moBucket* moBucket::m_pAttachedBucketUp
protected

moBucket enlazado para upstreaming

Definition at line 138 of file moBuckets.h.

MOubyte* moBucket::m_pBuffer
protected

puntero al espacio en memoria

Definition at line 135 of file moBuckets.h.


The documentation for this class was generated from the following files: