# php_manual

id: Ds\Vector::first
type: function
doc:
<comment>Description:</comment>
  Returns the first value in the vector
  
  Returns the first value in the vector.

<comment>Return:</comment>
  <info>mixed</info>  The first value in the vector.


id: Ds\Vector::insert
type: function
doc:
<comment>Description:</comment>
  Inserts values at a given index
  
  Inserts values into the vector at a given index.

<comment>Param:</comment>
  <info>int</info>    <strong>$index</strong>   The index at which to insert. 0 \<= index \<= count
                  
                  You can insert at the index equal to the number of values.
  <info>mixed</info>  <strong>$values</strong>  The value or values to insert.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: Ds\Vector::isEmpty
type: function
doc:
<comment>Description:</comment>
  Returns whether the vector is empty
  
  Returns whether the vector is empty.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if the vector is empty, <info>false</info> otherwise.


id: Ds\Vector::join
type: function
doc:
<comment>Description:</comment>
  Joins all values together as a string
  
  Joins all values together as a string using an optional separator between each value.

<comment>Param:</comment>
  <info>string</info>  <strong>$glue</strong>  An optional string to separate each value.

<comment>Return:</comment>
  <info>string</info>  All values of the vector joined together as a string.


id: Ds\Vector::last
type: function
doc:
<comment>Description:</comment>
  Returns the last value
  
  Returns the last value in the vector.

<comment>Return:</comment>
  <info>mixed</info>  The last value in the vector.


id: Ds\Vector::map
type: function
doc:
<comment>Description:</comment>
  Returns the result of applying a callback to each value
  
  Returns the result of applying a <strong>$callback</strong> function to each value in the vector.

<comment>Param:</comment>
  <info>callable</info>  <strong>$callback</strong>  <info>mixed</info>callback<info>mixed</info><strong>$value</strong>
                       
                       A <info>callable</info> to apply to each value in the vector.
                       
                       The callable should return what the new value will be in the new vector.

<comment>Return:</comment>
  <info>Ds\Vector</info>  The result of applying a <strong>$callback</strong> to each value in the vector.
             
             The values of the current instance won't be affected.


id: Ds\Vector::merge
type: function
doc:
<comment>Description:</comment>
  Returns the result of adding all given values to the vector
  
  Returns the result of adding all given values to the vector.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$values</strong>  A <class>traversable</class> object or an <info>array</info>.

<comment>Return:</comment>
  <info>Ds\Vector</info>  The result of adding all given values to the vector, effectively the same as adding the
             values to a copy, then returning that copy.
             
             The current instance won't be affected.


id: Ds\Vector::push
type: function
doc:
<comment>Description:</comment>
  Adds values to the end of the vector
  
  Adds values to the end of the vector.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$values</strong>  The values to add.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: Ds\Vector::reduce
type: function
doc:
<comment>Description:</comment>
  Reduces the vector to a single value using a callback function
  
  Reduces the vector to a single value using a callback function.

<comment>Param:</comment>
  <info>callable</info>  <strong>$callback</strong>  The return value of the previous callback, or <strong>$initial</strong> if it's the first
                       iteration.
                       
                       The value of the current iteration.
  <info>mixed</info>     <strong>$carry</strong>     The return value of the previous callback, or <strong>$initial</strong> if it's the first
                       iteration.
  <info>mixed</info>     <strong>$value</strong>     The value of the current iteration.
  <info>mixed</info>     <strong>$initial</strong>   The initial value of the carry value. Can be <info>null</info>.

<comment>Return:</comment>
  <info>mixed</info>  The return value of the final callback.


id: Ds\Vector::reverse
type: function
doc:
<comment>Description:</comment>
  Reverses the vector in-place
    
  
  Reverses the vector in-place.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: Ds\Vector::reversed
type: function
doc:
<comment>Description:</comment>
  Returns a reversed copy
  
  Returns a reversed copy of the vector.

<comment>Return:</comment>
  <info>Ds\Vector</info>  A reversed copy of the vector.
               The current instance is not affected. 
             
             The current instance is not affected.


id: Ds\Vector::rotate
type: function
doc:
<comment>Description:</comment>
  Rotates the vector by a given number of rotations
  
  Rotates the vector by a given number of rotations, which is equivalent to successively calling
  $vector-&gt;push($vector-&gt;shift()) if the number of rotations is positive, or
  $vector-&gt;unshift($vector-&gt;pop()) if negative.

<comment>Param:</comment>
  <info>int</info>  <strong>$rotations</strong>  The number of times the vector should be rotated.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.. The vector of the current instance will be rotated.


id: Ds\Vector::slice
type: function
doc:
<comment>Description:</comment>
  Returns a sub-vector of a given range
    
  
  Creates a sub-vector of a given range.

<comment>Param:</comment>
  <info>int</info>  <strong>$index</strong>   The index at which the sub-vector starts.
                
                If positive, the vector will start at that index in the vector. If negative, the
                vector will start that far from the end.
  <info>int</info>  <strong>$length</strong>  If a length is given and is positive, the resulting vector will have up to that many
                values in it.
                 If the length results in an overflow, only values up to the end of the vector will
                be included.
                 If a length is given and is negative, the vector will stop that many values from
                the end.
                 If a length is not provided, the resulting vector will contain all values between
                the index and the end of the vector.

<comment>Return:</comment>
  <info>Ds\Vector</info>  A sub-vector of the given range.


id: Ds\Vector::sort
type: function
doc:
<comment>Description:</comment>
  Sorts the vector in-place
   
  
  Sorts the vector in-place, using an optional <strong>$comparator</strong> function.

<comment>Param:</comment>
  <info>callable</info>  <strong>$comparator</strong>  La función de comparación debe devolver un entero menor, igual o mayor que
                         cero si el primer argumento se considera que sea respectivamente menor,
                         igual o mayor que el segundo.
                         Observe que antes de PHP 7.0.0 este entero debía estar en el rango de
                         -2147483648 a 2147483647.
                         
                         Returning non-integer values from the comparison function, such as <info>float</info>,
                         will result in an internal cast to <info>int</info> of the callback's return value. So
                         values such as <return>0.99</return> and <return>0.1</return> will both be cast to an integer value of <return>0</return>,
                         which will compare such values as equal.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: Ds\Vector::sorted
type: function
doc:
<comment>Description:</comment>
  Returns a sorted copy
  
  Returns a sorted copy, using an optional <strong>$comparator</strong> function.

<comment>Param:</comment>
  <info>callable</info>  <strong>$comparator</strong>  La función de comparación debe devolver un entero menor, igual o mayor que
                         cero si el primer argumento se considera que sea respectivamente menor,
                         igual o mayor que el segundo.
                         Observe que antes de PHP 7.0.0 este entero debía estar en el rango de
                         -2147483648 a 2147483647.
                         
                         Returning non-integer values from the comparison function, such as <info>float</info>,
                         will result in an internal cast to <info>int</info> of the callback's return value. So
                         values such as <return>0.99</return> and <return>0.1</return> will both be cast to an integer value of <return>0</return>,
                         which will compare such values as equal.

<comment>Return:</comment>
  <info>Ds\Vector</info>  Returns a sorted copy of the vector.


id: Ds\Vector::sum
type: function
doc:
<comment>Description:</comment>
  Returns the sum of all values in the vector
  
  Returns the sum of all values in the vector.
  
  Arrays and objects are considered equal to zero when calculating the sum.

<comment>Return:</comment>
  <info>int|float</info>  The sum of all the values in the vector as either a <info>float</info> or <info>int</info> depending on the
             values in the vector.


id: Ds\Vector::toArray
type: function
doc:
<comment>Description:</comment>
  Converts the vector to an array
    
  
  Converts the vector to an <info>array</info>.
  
  Casting to an <info>array</info> is not supported yet.

<comment>Return:</comment>
  <info>array</info>  An <info>array</info> containing all the values in the same order as the vector.


id: Ds\Vector::unshift
type: function
doc:
<comment>Description:</comment>
  Adds values to the front of the vector
  
  Adds values to the front of the vector, moving all the current values forward to make room for the
  new values.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$values</strong>  The values to add to the front of the vector.  Multiple values will be added in
                  the same order that they are passed.
                  
                  Multiple values will be added in the same order that they are passed.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: EIO_DT_MPC
type: constant
doc:
<comment>Description:</comment>
  Tipo de nodo de dispositivo de caracteres multiplexado (v7+coherent)


id: EIO_DT_UNKNOWN
type: constant
doc:
<comment>Description:</comment>
  Tipo de nodo desconocido(muy común). Se necistan más estadísticas (<strong>stat()</strong>).


id: EIO_READDIR_DENTS
type: constant
doc:
<comment>Description:</comment>
  Bandera <strong>eio_readdir()</strong>. Si se especifica, el argumento resultante de la llamada de retorno se
  convierte en un array con las siguientes claves: <return>'names'</return> - array de nombres de directorios <return>'dents'</return>
  - array de <return>structura eio_dirent</return>-como los arrays pero teniendo las siguientes claves: <return>'name'</return> - el
  nombre del directorio; <return>'type'</return> - una de las constantes EIO_DT_*; <return>'inode'</return> - el número de inodo, si
  está disponible, de otro modo sin especificar;


id: EIO_READDIR_DIRS_FIRST
type: constant
doc:
<comment>Description:</comment>
  Cuando se especifica esta bandera, los nombres serán devueltos en un orden donde probablemente los
  directorios vallan primero, en un orden de estadísticas óptimo.


id: EIO_READDIR_STAT_ORDER
type: constant
doc:
<comment>Description:</comment>
  Cuando se especifica esta bandera, los nombres serán devueltos en un orden apropiado para realizar
  estadísticas (<return>stat</return>) con cada uno. Cuando se planea usar la función <strong>stat()</strong> para realizar
  estadísticas de todos los archivos del directorio dado, el orden devuelto probablemente sea más
  rápido.


id: EIO_SEEK_CUR
type: constant
doc:
<comment>Description:</comment>
  El índice es establecido a su ubicación actual más <strong>$offset</strong> bytes.


id: EIO_SEEK_END
type: constant
doc:
<comment>Description:</comment>
  El índice es establecido a el tamaño del fichero más <strong>$offset</strong> bytes.


id: EIO_SEEK_SET
type: constant
doc:
<comment>Description:</comment>
  El índice es establecido para espcificar el número de bytes (<strong>$offset</strong>).


id: ENCHANT_ISPELL
type: constant
doc:
<comment>Description:</comment>
  Tipo de diccionario para Ispell. Utilizada con <strong>enchant_broker_get_dict_path()</strong> y
  <strong>enchant_broker_set_dict_path()</strong>.


id: ENCHANT_MYSPELL
type: constant
doc:
<comment>Description:</comment>
  Tipo de diccionario para MySpell. Utilizada con <strong>enchant_broker_get_dict_path()</strong> y
  <strong>enchant_broker_set_dict_path()</strong>.


id: ENCQUOTEDPRINTABLE
type: constant
doc:
<comment>Description:</comment>
  Codificación del cuerpo: datos de 8 bit como 7 bit legible por humanos


id: EVALUATE_ADDMODULUS
type: constant
doc:
<comment>Description:</comment>
  Esta constante está disponible si Imagick ha sido compilado con ImageMagick en su versión  6.4.4 o
  superior.


id: EXP_EOF
type: constant
doc:
<comment>Description:</comment>
  Valor, devuelto por <strong>expect_expectl()</strong>, cada vez que se alcanza EOF (fin del fichero).


id: EXP_FULLBUFFER
type: constant
doc:
<comment>Description:</comment>
  Valor, devuelto por <strong>expect_expectl()</strong> si no coincidiera ningún patrón.


id: EXP_TIMEOUT
type: constant
doc:
<comment>Description:</comment>
  Valor, devuelto por <strong>expect_expectl()</strong> pasados unos determinados segundos, con el valor especificado
  en expect.timeout


id: E_USER_NOTICE
type: constant
doc:
<comment>Description:</comment>
  Mensaje de aviso generado por el usuario. Es como un <info>E_NOTICE</info>, excepto que es generado por código
  de PHP mediante el uso de la función de PHP <strong>trigger_error()</strong>.


id: EmptyIterator::current
type: function
doc:
<comment>Description:</comment>
  El método current()
  
  Esta función no debe ser llamada. Lanza una excepción en su acceso.
  
  Esta función
  no está documentada actualmente, solamente se encuentra disponible la lista de parámetros.

<comment>Return:</comment>
  <info>mixed</info>  No devuelve ningún valor.


id: EmptyIterator::key
type: function
doc:
<comment>Description:</comment>
  El método key()
  
  Esta función no debe ser llamada. Lanza una excepción en su acceso.
  
  Esta función
  no está documentada actualmente, solamente se encuentra disponible la lista de parámetros.

<comment>Return:</comment>
  <info>scalar</info>  No devuelve ningún valor.


id: EmptyIterator::next
type: function
doc:
<comment>Description:</comment>
  El método next()
  
  No opera, nada a hacer.
  
  Esta función
  no está documentada actualmente, solamente se encuentra disponible la lista de parámetros.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: EmptyIterator::rewind
type: function
doc:
<comment>Description:</comment>
  El método rewind()
  
  No opera, nada a hacer.
  
  Esta función
  no está documentada actualmente, solamente se encuentra disponible la lista de parámetros.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: EmptyIterator::valid
type: function
doc:
<comment>Description:</comment>
  El método valid()
  
  El método valid() de EmptyIterator.
  
  Esta función
  no está documentada actualmente, solamente se encuentra disponible la lista de parámetros.

<comment>Return:</comment>
  <info>bool</info>  <info>false</info>


id: Error
type: class
doc:
<comment>Description:</comment>
  The base class for <info>Error</info>s that occur during generation or use of randomness.


id: Error::__clone
type: function
doc:
<comment>Description:</comment>
  Clonar el error
  
  Un error no se pueden clonar, por lo que este método resulta en un error fatal.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: Error::__construct
type: function
doc:
<comment>Description:</comment>
  Construir el objeto error
  
  Construye el Error.

<comment>Param:</comment>
  <info>string</info>          <strong>$message</strong>   El mensaje de error.
  <info>int</info>             <strong>$code</strong>      El código de error.
  <info>Throwable|null</info>  <strong>$previous</strong>  El objeto Throwable anterior empleado para la cadena de excepciones.


id: Error::__toString
type: function
doc:
<comment>Description:</comment>
  Representación de string del error
  
  Devuelve la representación de <info>string</info> del error.

<comment>Return:</comment>
  <info>string</info>  Devuelve la representación de <info>string</info> del error.

<comment>See Also:</comment>
   * Throwable::__toString


id: Error::getCode
type: function
doc:
<comment>Description:</comment>
  Obtener el código de error
  
  Devuelve el código de error.

<comment>Return:</comment>
  <info>int</info>  Devuelve el código de error como un <info>int</info>

<comment>See Also:</comment>
   * Throwable::getCode


id: Error::getFile
type: function
doc:
<comment>Description:</comment>
  Obtener el fichero en el que ocurrío el error
  
  Obtiene el nombre del fichero donde ocurrió el error.

<comment>Return:</comment>
  <info>string</info>  Devuelve el nombre del fichero el en cual ocurrió el error.

<comment>See Also:</comment>
   * Throwable::getFile


id: Error::getLine
type: function
doc:
<comment>Description:</comment>
  Obtener la línea en la que ocurrió el error
  
  Obtiene el número de línea donde ocurrió el error.

<comment>Return:</comment>
  <info>int</info>  Devuelve el número de línea en la que ocurrió el error.

<comment>See Also:</comment>
   * Throwable::getLine


id: Error::getMessage
type: function
doc:
<comment>Description:</comment>
  Obtener el mensaje de error
  
  Devuelve el mensaje de error.

<comment>Return:</comment>
  <info>string</info>  Devuelve el mensaje de error como una cadena.

<comment>See Also:</comment>
   * Throwable::getMessage


id: Error::getPrevious
type: function
doc:
<comment>Description:</comment>
  Devuelve el objeto Throwable anterior
  
  Devuelve el objeto Throwable anterior (el tercer parámetro de Error::__construct).

<comment>Return:</comment>
  <info>Throwable|null</info>  Devuelve el objeto <class>Throwable</class> anterior si está disponible, o <info>null</info> en caso
                  contrario.

<comment>See Also:</comment>
   * Throwable::getPrevious


id: Error::getTrace
type: function
doc:
<comment>Description:</comment>
  Obtener la traza de la pila
  
  Devuelve la traza de la pila.

<comment>Return:</comment>
  <info>array</info>  Devuelve la traza de la pila como un <info>array</info>.

<comment>See Also:</comment>
   * Throwable::getTrace


id: Error::getTraceAsString
type: function
doc:
<comment>Description:</comment>
  Obtener la traza de la pila como un string
  
  Devuelve la traza de la pila como un string.

<comment>Return:</comment>
  <info>string</info>  Devuelve la traza de la pila como un string.

<comment>See Also:</comment>
   * Throwable::getTraceAsString


id: ErrorException::__construct
type: function
doc:
<comment>Description:</comment>
  Constructor de la excepción
  
  Construye el objeto Exception.

<comment>Param:</comment>
  <info>string</info>          <strong>$message</strong>   Mensaje de la excepción a lanzar.
  <info>int</info>             <strong>$code</strong>      El código de la excepción.
  <info>int</info>             <strong>$severity</strong>  Nivel de la severidad de la excepción.
                             
                             Aunque la severidad puede ser cuaquier valor de tipo <info>int</info>, se pretende
                             que se empleen las constantes de error.
  <info>string|null</info>     <strong>$filename</strong>  Nombre del fichero donde se lanzó la excepción.
  <info>int|null</info>        <strong>$line</strong>      Número de la línea donde se produjo la excepción.
  <info>Throwable|null</info>  <strong>$previous</strong>  La anterior excepción utilizada para la excepción de encadenamiento.


id: ErrorException::getSeverity
type: function
doc:
<comment>Description:</comment>
  Obtiene la severidad de la excepción
  
  Devuelve la severidad de la excepción.

<comment>Return:</comment>
  <info>int</info>  Devuelve el nivel de la severidad de la excepción.


id: Ev
type: class
doc:
<comment>Description:</comment>
  Ev es una clase estática que proporciona acceso al bucle por omsión y a algunas  operaciones
  comunes.


id: Ev::BACKEND_ALL
type: constant
doc:
<comment>Description:</comment>
  Intentar todos los backends (incluso los corrompidos). No es recomendado utilizar este flag
  explícitamente. En su lugar deberían utilizarse operaciones Bitwise (por ejemplo <info>Ev::BACKEND_ALL</info> &
  ~ <info>Ev::BACKEND_KQUEUE</info> ). Utiliza Ev::recommendedBackends , o no especifiques ningún backend en
  especial.


id: Ev::BACKEND_EPOLL
type: constant
doc:
<comment>Description:</comment>
  Backend específico a Linux <return>epoll(7)</return> tanto para kernels anteriores o posteriores a la versión 2.6.9


id: Ev::BACKEND_KQUEUE
type: constant
doc:
<comment>Description:</comment>
  Backend <return>kqueue</return> utilizado en la mayoría de los sistemas BSD. El watcher <class>EvEmbed</class> puede ser utilizado
  para embeber un bucle (con e backend  <return>kqueue</return> ) dentro de otro. Por ejemplo, uno puede intentar
  crear un bucle de eventos con el backend  <return>kqueue</return> y utilizarlo solamente por sus sockets.


id: Ev::BACKEND_MASK
type: constant
doc:
<comment>Description:</comment>
  No es un backend, sino una máscara que permite seleccionar todos los bits de backends desde el
  valor  <strong>$flags</strong> para sacar de la máscara cualquier backend (por ejemplo cuando se modifica la
  variable de entorno LIBEV_FLAGS ).


id: Ev::CHECK
type: constant
doc:
<comment>Description:</comment>
  Todos los watchers <class>EvCheck</class> son encolados justo luego de que  Ev::run haya obtenido los nuevos
  eventos, pero antes de que encole cualquier callback para los eventos recibidos. Así, los watchers
  <class>EvCheck</class> serán invocados antes que cualquier otro watcher de la misma o menor prioridad dentro de
  la iteración del bucle de eventos.


id: Ev::CHILD
type: constant
doc:
<comment>Description:</comment>
  El <strong>$pid</strong> especificado en EvChild::__construct ha recibido una alteración de estado.


id: Ev::CUSTOM
type: constant
doc:
<comment>Description:</comment>
  Nunca enviado (o utilizado) por <return>libev</return>, pero puede ser libremente utilizado por los usuarios de
  <return>libev</return> para enviar señales a watchers (por ejemplo a través de EvWatcher::feed ).


id: Ev::EMBED
type: constant
doc:
<comment>Description:</comment>
  El bucle embebido especificado en el watcher <class>EvEmbed</class> necesita atención.


id: Ev::ERROR
type: constant
doc:
<comment>Description:</comment>
  Un error no especificado ha ocurrido, y el watcher se ha detenido. Esto puede ocurrir ya sea
  porque el watcher no haya sido inicializado apropiadamente debido a que  <return>libev</return> ha agotado la
  memoria disponible, porque un descriptor de archivo se encontraba ya cerrado, o por cualquier otro
  problema. <return>Libev</return> considera estos errores como errores de aplicación. Véase también ANATOMY OF A
  WATCHER


id: Ev::FLAG_FORKCHECK
type: constant
doc:
<comment>Description:</comment>
  Permite que libev verifique un fork en cada iteración, en lugar de llamar a  EvLoop::fork
  manualmente. Esto funciona al llamar a  <return>getpid()</return> en cada iteración del bucle, y como tal podrá
  alentizar el bucle de eventos con numerosas iteraciones, aunque esto no es usualmente notorio.
  Este flag no puede ser reemplazado o especificado mediante la variable de entorno  LIBEV_FLAGS.


id: Ev::FLAG_NOENV
type: constant
doc:
<comment>Description:</comment>
  Si este flag es utilizado (o el programa corre setuid o setgid), <return>libev</return> no tendrá en cuenta la
  variable de entorno LIBEV_FLAGS . De otro modo (por defecto), LIBEV_FLAGS reemplazará los flags
  completamente si es definido. Útil para evaluación de performance y para encontrar errores.


id: Ev::FLAG_NOINOTIFY
type: constant
doc:
<comment>Description:</comment>
  Cuando este flag es especificado, <return>libev</return> no intentará utilizar la API <return>inotify</return> para sus watchers
  ev_stat.  El flag puede ser útil para conservar los descriptores de archivo inotify, ya que de
  otro modo cada bucle que utilice watchers <return>ev_stat</return> consumen un handle <return>inotify</return>.


id: Ev::FLAG_NOSIGMASK
type: constant
doc:
<comment>Description:</comment>
  Cuando este flag es especificado, <return>libev</return> hará imposible la modificación de la máscara de señal.
  Esto significa que será necesario asegurarse que las señales están desbloqueadas antes de
  recibirlas.
  
  Este comportamiento es útil para el manejo de señales personalizado, o para manipular señales
  solamente en hilos específicos.


id: Ev::FLAG_SIGNALFD
type: constant
doc:
<comment>Description:</comment>
  Cuando este flag es especificado, <return>libev</return> intentará utilizar la API <return>signalfd</return> para sus watchers
  ev_signal (y ev_child ). Esta API entrega las señales sincrónicamente, lo que la hace más rápida y
  puede permitir obtener los datos de señal encolados. También puede simplificar el manejo de
  señales mediante hilos, siempre y cuando las señales sean bloqueadas apropiadamente en los hilos.
  <return>Signalfd</return> no será utilizado por defecto.


id: Ev::IDLE
type: constant
doc:
<comment>Description:</comment>
  El watcher <class>EvIdle</class> trabaja cuando no hay nada que hacer con otros watchers.


id: Ev::PREPARE
type: constant
doc:
<comment>Description:</comment>
  Todos los watchers <class>EvPrepare</class> son invocados justo antes de que Ev::run comience. Así, los watchers
  <class>EvPrepare</class> son los últimos en ser invocados antes de que el bucle de eventos duerma, o busque
  nuevos eventos.


id: Ev::READ
type: constant
doc:
<comment>Description:</comment>
  El descriptor de archivo en el watcher <class>EvIo</class> se ha vuelto disponible.


id: Ev::RUN_NOWAIT
type: constant
doc:
<comment>Description:</comment>
  Significa que el bucle de eventos buscará nuevos eventos, y manejará aquellos eventos y cualquier
  otro evento pendiente, pero no esperará ni bloqueará el proceso en caso de que no haya eventos,
  retornando luego de una iteración del bucle. Esto es útil para obtener nuevos eventos mientras se
  realizan cálculos costosos, manteniendo el programa funcionando.


id: Ev::RUN_ONCE
type: constant
doc:
<comment>Description:</comment>
  Significa que el bucle de eventos buscará nuevos eventos (esperando si es necesario) y manejará
  aquellos eventos, y cualquier otro evento pendiente. Bloqueará el proceso hasta que al menos un
  evento esté disponible (que podría ser un evento interno a <return>libev</return>, por lo que no hay garantía de
  que un callback registrado por el usuario sea llamado), y retornará luego de una iteración del
  bucle.


id: Ev::SIGNAL
type: constant
doc:
<comment>Description:</comment>
  Una señal especificada en  EvSignal::__construct ha sido recibida.


id: Ev::STAT
type: constant
doc:
<comment>Description:</comment>
  El path especificado en el watcher <class>EvStat</class> ha modificado sus atributos.


id: Ev::WRITE
type: constant
doc:
<comment>Description:</comment>
  El descriptor de archivo en el watcher <class>EvIo</class> se ha vuelto modificable.


id: Ev::backend
type: function
doc:
<comment>Description:</comment>
  Devuelve un entero que describe el back-end utilizado por libev
  
  Devuelve un entero que describe el back-end utilizado por libev . Véase Backend flags

<comment>Return:</comment>
  <info>int</info>  Devuelve un entero (máscara de bits) que describe el back-end utilizado por libev .

<comment>See Also:</comment>
   * <class>EvEmbed</class>
   * Ev::embeddableBackends
   * Ev::recommendedBackends
   * Ev::supportedBackends
   * Backend flags


id: Ev::depth
type: function
doc:
<comment>Description:</comment>
  Devuelve la profundidad de la recursividad
  
  El número de veces Ev::run se ha introducido menos el número de veces Ev::run fue terminada
  normalmente, en otras palabras, el nivel de recursividad. fuera de Ev::run , este número es <info>0</info> . En
  una llamada de retorno, este número es <info>1</info> , a menos que Ev::run fue invocado recursivamente (o
  desde otro subproceso), en cuyo caso es  mayor.

<comment>Return:</comment>
  <info>int</info>  <strong>ev_depth()</strong> Devuelve la profundidad de la recursividad del bucle por defecto.

<comment>See Also:</comment>
   * Ev::iteration


id: Ev::embeddableBackends
type: function
doc:
<comment>Description:</comment>
  Returns the set of backends that are embeddable in other event loops
  
  Returns the set of backends that are embeddable in other event loops.

<comment>Return:</comment>
  <info>int</info>  Returns a bit mask which can containing backend flags combined using bitwise OR operator.

<comment>See Also:</comment>
   * <class>EvEmbed</class>
   * Ev::recommendedBackends
   * Ev::supportedBackends
   * Backend flags
   * Examples


id: Ev::feedSignal
type: function
doc:
<comment>Description:</comment>
  Feed a signal event info Ev
  
  Simulates a signal receive. It is safe to call this function at any time, from any context,
  including signal handlers or random threads. Its main use is to customise signal handling in the
  process.
  
  Unlike Ev::feedSignalEvent , this works regardless of which loop has registered the signal.

<comment>Param:</comment>
  <info>int</info>  <strong>$signum</strong>  Signal number. See <return>signal(7)</return> man page for detals. You can use constants exported by
                <return>pcntl</return> extension.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * Ev::feedSignalEvent


id: Ev::feedSignalEvent
type: function
doc:
<comment>Description:</comment>
  Feed signal event into the default loop
  
  Feed signal event into the default loop. Ev will react to this call as if the signal specified by
  <strong>$signal</strong> had occurred.

<comment>Param:</comment>
  <info>int</info>  <strong>$signum</strong>  Signal number. See <return>signal(7)</return> man page for detals. See also constants exported by
                <return>pcntl</return> extension.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * Ev::feedSignal


id: Ev::iteration
type: function
doc:
<comment>Description:</comment>
  Return the number of times the default event loop has polled for new
    events
  
  Return the number of times the event loop has polled for new events. Sometimes useful as a
  generation counter.

<comment>Return:</comment>
  <info>int</info>  Returns number of polls of the default event loop.

<comment>See Also:</comment>
   * Ev::depth


id: Ev::now
type: function
doc:
<comment>Description:</comment>
  Returns the time when the last iteration of the default event
    loop has started
  
  Returns the time when the last iteration of the default event loop has started. This is the time
  that timers( <class>EvTimer</class> and <class>EvPeriodic</class> ) are based on, and referring to it is usually faster then
  calling Ev::time .

<comment>Return:</comment>
  <info>float</info>  Returns number of seconds(fractional) representing the time when the last iteration of the
         default event loop has started.

<comment>See Also:</comment>
   * Ev::nowUpdate


id: Ev::nowUpdate
type: function
doc:
<comment>Description:</comment>
  Establishes the current time by querying the kernel, updating the time
      returned by Ev::now in the progress
  
  Establishes the current time by querying the kernel, updating the time returned by Ev::now in the
  progress. This is a costly operation and is usually done automatically within Ev::run .
  
  This method is rarely useful, but when some event callback runs for a very long time without
  entering the event loop, updating libev 's consideration of the current time is a good idea.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * Ev::now


id: Ev::recommendedBackends
type: function
doc:
<comment>Description:</comment>
  Returns a bit mask of recommended backends for current
    platform
  
  Returns the set of all backends compiled into this binary of <return>libev</return> and also recommended for this
  platform, meaning it will work for most file descriptor types. This set is often smaller than the
  one returned by <strong>ev_supported_backends()</strong> , as for example <return>kqueue</return> is broken on most <return>BSD</return> systems and
  will not be auto-detected unless it is requested explicitly. This is the set of backends that
  <return>libev</return> will probe no backends specified explicitly.

<comment>Return:</comment>
  <info>int</info>  Returns a bit mask which can containing backend flags combined using bitwise OR operator.

<comment>See Also:</comment>
   * <class>EvEmbed</class>
   * Ev::embeddableBackends
   * Ev::supportedBackends
   * Backend flags
   * Examples


id: Ev::resume
type: function
doc:
<comment>Description:</comment>
  Resume previously suspended default event loop
  
  Ev::suspend and Ev::resume methods suspend and resume a loop correspondingly.
  
  All timer watchers will be delayed by the time spend between suspend and resume , and all periodic
  watchers will be rescheduled(that is, they will lose any events that would have occurred while
  suspended).
  
  After calling Ev::suspend it is not allowed to call any function on the given loop other than
  Ev::resume . Also it is not allowed to call Ev::resume without a previous call to Ev::suspend .
  
  Calling suspend / resume has the side effect of updating the event loop time(see Ev::nowUpdate ).

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * Ev::suspend


id: Ev::run
type: function
doc:
<comment>Description:</comment>
  Begin checking for events and calling callbacks for the default
    loop
  
  Begin checking for events and calling callbacks for the default loop . Returns when a callback
  calls Ev::stop method, or the flags are nonzero(in which case the return value is true) or when
  there are no active watchers which reference the loop( EvWatcher::keepalive is <info>true</info>), in which
  case the return value will be <info>false</info>. The return value can generally be interpreted as if <info>true</info>,
  there is more work left to do .

<comment>Param:</comment>
  <info>int</info>  <strong>$flags</strong>  Optional parameter <strong>$flags</strong> can be one of the following:  List for possible values of
               <strong>$flags</strong> <strong>$flags</strong>Description<info>0</info>The default behavior described above<info>Ev::RUN_ONCE</info>Block at
               most one(wait, but don't loop)<info>Ev::RUN_NOWAIT</info>Don't block at all(fetch/handle events,
               but don't wait)
               
               See the run flag constants .

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * Ev::stop
   * EvLoop::run


id: Ev::sleep
type: function
doc:
<comment>Description:</comment>
  Block the process for the given number of seconds
  
  Block the process for the given number of seconds.

<comment>Param:</comment>
  <info>float</info>  <strong>$seconds</strong>  Fractional number of seconds

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: Ev::stop
type: function
doc:
<comment>Description:</comment>
  Stops the default event loop
  
  Stops the default event loop

<comment>Param:</comment>
  <info>int</info>  <strong>$how</strong>  One of Ev::BREAK_* constants .

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * Ev::run


id: Ev::supportedBackends
type: function
doc:
<comment>Description:</comment>
  Returns the set of backends supported by current libev
    configuration
  
  Returns the set of backends supported by current libev configuration.

<comment>Return:</comment>
  <info>int</info>  Returns a bit mask which can containing backend flags combined using bitwise OR operator.

<comment>See Also:</comment>
   * <class>EvEmbed</class>
   * Ev::recommendedBackends
   * Ev::embeddableBackends
   * Backend flags
   * Examples


id: Ev::suspend
type: function
doc:
<comment>Description:</comment>
  Suspend the default event loop
  
  Ev::suspend and Ev::resume methods suspend and resume the default loop correspondingly.
  
  All timer watchers will be delayed by the time spend between suspend and resume , and all periodic
  watchers will be rescheduled(that is, they will lose any events that would have occurred while
  suspended).
  
  After calling Ev::suspend it is not allowed to call any function on the given loop other than
  Ev::resume . Also it is not allowed to call Ev::resume without a previous call to Ev::suspend .

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * Ev::resume


id: Ev::time
type: function
doc:
<comment>Description:</comment>
  Returns the current time in fractional seconds since the epoch
  
  Returns the current time in fractional seconds since the epoch. Consider using Ev::now

<comment>Return:</comment>
  <info>float</info>  Returns the current time in fractional seconds since the epoch.

<comment>See Also:</comment>
   * Ev::now


id: Ev::verify
type: function
doc:
<comment>Description:</comment>
  Performs internal consistency checks(for debugging)
  
  Performs internal consistency checks(for debugging libev ) and abort the program if any data
  structures were found to be corrupted.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: EvCheck
type: class
doc:
<comment>Description:</comment>
  <class>EvPrepare</class> and <class>EvCheck</class> watchers are usually used in pairs. <class>EvPrepare</class> watchers get invoked before
  the process blocks, <class>EvCheck</class> afterwards.
  
  It is not allowed to call EvLoop::run or similar methods or functions that enter the current event
  loop from either <class>EvPrepare</class> or <class>EvCheck</class> watchers. Other loops than the current one are fine,
  however. The rationale behind this is that one don't need to check for recursion in those
  watchers, i.e. the sequence will always be: <class>EvPrepare</class> -&gt; blocking -&gt; <class>EvCheck</class> , so having a
  watcher of each kind they will always be called in pairs bracketing the blocking call.
  
  The main purpose is to integrate other event mechanisms into libev and their use is somewhat
  advanced. They could be used, for example, to track variable changes, implement custom watchers,
  integrate net-snmp or a coroutine library and lots more. They are also occasionally useful to
  cache some data and want to flush it before blocking.
  
  It is recommended to give <class>EvCheck</class> watchers highest( <info>Ev::MAXPRI</info> ) priority, to ensure that they are
  being run before any other watchers after the poll (this doesn’t matter for <class>EvPrepare</class> watchers).
  
  Also, <class>EvCheck</class> watchers should not activate/feed events. While libev fully supports this, they
  might get executed before other <class>EvCheck</class> watchers did their job.


id: EvCheck::__construct
type: function
doc:
<comment>Description:</comment>
  Constructs the EvCheck watcher object
  
  Constructs the <class>EvCheck</class> watcher object.

<comment>Param:</comment>
  <info>callable</info>  <strong>$callback</strong>  See Watcher callbacks .
  <info>mixed</info>     <strong>$data</strong>      Custom data associated with the watcher.
  <info>int</info>       <strong>$priority</strong>  Watcher priority

<comment>See Also:</comment>
   * <class>EvPrepare</class>
   * EvLoop::check


id: EvCheck::createStopped
type: function
doc:
<comment>Description:</comment>
  Create instance of a stopped EvCheck watcher
  
  Create instance of a stopped EvCheck watcher

<comment>Param:</comment>
  <info>string</info>  <strong>$callback</strong>  See Watcher callbacks .
  <info>string</info>  <strong>$data</strong>      Custom data associated with the watcher.
  <info>string</info>  <strong>$priority</strong>  Watcher priority

<comment>Return:</comment>
  <info>object</info>  Returns EvCheck object on success.

<comment>See Also:</comment>
   * <class>EvPrepare</class>


id: EvChild
type: class
doc:
<comment>Description:</comment>
  <class>EvChild</class> watchers trigger when the process receives a <info>SIGCHLD</info> in response to some child status
  changes (most typically when a child dies or exits). It is permissible to install an <info>EvChild</info>
  watcher after the child has been forked(which implies it might have already exited), as long as
  the event loop isn't entered(or is continued from a watcher), i.e. forking and then immediately
  registering a watcher for the child is fine, but forking and registering a watcher a few event
  loop iterations later or in the next callback invocation is not.
  
  It is allowed to register <class>EvChild</class> watchers in the default loop only.


id: EvChild::__construct
type: function
doc:
<comment>Description:</comment>
  Constructs the EvChild watcher object
  
  Constructs the <class>EvChild</class> watcher object.
  
  Call the callback when a status change for process ID <strong>$pid</strong> (or any PID if <strong>$pid</strong> is <info>0</info> ) has been
  received(a status change happens when the process terminates or is killed, or, when <strong>$trace</strong> is
  <info>true</info>, additionally when it is stopped or continued). In other words, when the process receives a
  <info>SIGCHLD</info> , Ev will fetch the outstanding exit/wait status for all changed/zombie children and call
  the callback.
  
  It is valid to install a child watcher after an <class>EvChild</class> has exited but before the event loop has
  started its next iteration. For example, first one calls <return>fork</return> , then the new child process might
  exit, and only then an <class>EvChild</class> watcher is installed in the parent for the new PID .
  
  You can access both exit/tracing status and <strong>$pid</strong> by using the rstatus and rpid properties of the
  watcher object.
  
  The number of PID watchers per PID is unlimited. All of them will be called.
  
  The EvChild::createStopped method doesn't start(activate) the newly created watcher.

<comment>Param:</comment>
  <info>int</info>       <strong>$pid</strong>       Wait for status changes of process PID(or any process if PID is specified as
                       <info>0</info> ).
  <info>bool</info>      <strong>$trace</strong>     If <info>false</info>, only activate the watcher when the process terminates.
                       Otherwise(<info>true</info>) additionally activate the watcher when the process is stopped
                       or continued.
  <info>callable</info>  <strong>$callback</strong>  See Watcher callbacks .
  <info>mixed</info>     <strong>$data</strong>      Custom data associated with the watcher.
  <info>int</info>       <strong>$priority</strong>  Watcher priority

<comment>See Also:</comment>
   * EvLoop::child


id: EvChild::createStopped
type: function
doc:
<comment>Description:</comment>
  Create instance of a stopped EvCheck watcher
  
  The same as EvChild::__construct , but doesn't start the watcher automatically.

<comment>Param:</comment>
  <info>int</info>       <strong>$pid</strong>       The same as for EvChild::__construct
  <info>bool</info>      <strong>$trace</strong>     The same as for EvChild::__construct
  <info>callable</info>  <strong>$callback</strong>  See Watcher callbacks .
  <info>mixed</info>     <strong>$data</strong>      Custom data associated with the watcher.
  <info>int</info>       <strong>$priority</strong>  Watcher priority

<comment>Return:</comment>
  <info>object</info>  

<comment>See Also:</comment>
   * EvChild::__construct
   * EvLoop::child


id: EvChild::set
type: function
doc:
<comment>Description:</comment>
  Configures the watcher

<comment>Param:</comment>
  <info>int</info>   <strong>$pid</strong>    The same as for EvChild::__construct
  <info>bool</info>  <strong>$trace</strong>  The same as for EvChild::__construct

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * EvChild::__construct


id: EvEmbed::__construct
type: function
doc:
<comment>Description:</comment>
  Constructs the EvEmbed object
  
  This is a rather advanced watcher type that lets to embed one event loop into another(currently
  only IO events are supported in the embedded loop, other types of watchers might be handled in a
  delayed or incorrect fashion and must not be used).
  
  See the libev documentation for details.
  
  This watcher is most useful on BSD systems without working <return>kqueue</return> to still be able to handle a
  large number of sockets. See example below.

<comment>Param:</comment>
  <info>object</info>    <strong>$other</strong>     Instance of <class>EvLoop</class> . The loop to embed, this loop must be embeddable(see
                       Ev::embeddableBackends ).
  <info>callable</info>  <strong>$callback</strong>  See Watcher callbacks .
  <info>mixed</info>     <strong>$data</strong>      Custom data associated with the watcher.
  <info>int</info>       <strong>$priority</strong>  Watcher priority

<comment>See Also:</comment>
   * Ev::embeddableBackends


id: EvEmbed::createStopped
type: function
doc:
<comment>Description:</comment>
  Create stopped EvEmbed watcher object
  
  The same as EvEmbed::__construct , but doesn't start the watcher automatically.

<comment>Param:</comment>
  <info>object</info>    <strong>$other</strong>     The same as for EvEmbed::__construct
  <info>callable</info>  <strong>$callback</strong>  See Watcher callbacks .
  <info>mixed</info>     <strong>$data</strong>      Custom data associated with the watcher.
  <info>int</info>       <strong>$priority</strong>  Watcher priority

<comment>Return:</comment>
  <info>void</info>  Returns stopped EvEmbed object on success.

<comment>See Also:</comment>
   * EvEmbed::__construct
   * Ev::embeddableBackends


id: EvEmbed::set
type: function
doc:
<comment>Description:</comment>
  Configures the watcher
  
  Configures the watcher to use <strong>$other</strong> event loop object.

<comment>Param:</comment>
  <info>object</info>  <strong>$other</strong>  The same as for EvEmbed::__construct

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: EvEmbed::sweep
type: function
doc:
<comment>Description:</comment>
  Realizar un único barrido sin bloqueos sobre el bucle embebido
  
  Realizar un único barrido sin bloqueos sobre el bucle embebido. Funciona de forma similar a lo
  siguiente, aunque de una forma más apropiada para bucles embebidos: start(Ev::RUN_NOWAIT);
  ?>
  ]]>

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * EvWatcher::start


id: EvFork
type: class
doc:
<comment>Description:</comment>
  Fork watchers are called when a <return>fork()</return> was detected (usually because whoever signalled libev about
  it by calling EvLoop::fork ). The invocation is done before the event loop blocks next and before
  <class>EvCheck</class> watchers are being called, and only in the child after the fork. Note, that if whoever
  calling EvLoop::fork calls it in the wrong process, the fork handlers will be invoked, too.


id: EvFork::__construct
type: function
doc:
<comment>Description:</comment>
  Constructs the EvFork watcher object
  
  Constructs the EvFork watcher object and starts the watcher automatically.

<comment>Param:</comment>
  <info>callable</info>  <strong>$callback</strong>  See Watcher callbacks .
  <info>mixed</info>     <strong>$data</strong>      Custom data associated with the watcher.
  <info>int</info>       <strong>$priority</strong>  Watcher priority

<comment>See Also:</comment>
   * EvLoop::fork
   * <class>EvCheck</class>


id: EvFork::createStopped
type: function
doc:
<comment>Description:</comment>
  Creates a stopped instance of EvFork watcher class
  
  The same as EvFork::__construct , but doesn't start the watcher automatically.

<comment>Param:</comment>
  <info>string</info>  <strong>$callback</strong>  See Watcher callbacks .
  <info>string</info>  <strong>$data</strong>      Custom data associated with the watcher.
  <info>string</info>  <strong>$priority</strong>  Watcher priority

<comment>Return:</comment>
  <info>object</info>  Returns EvFork(stopped) object on success.

<comment>See Also:</comment>
   * EvFork::__construct


id: EvIdle
type: class
doc:
<comment>Description:</comment>
  <class>EvIdle</class> watchers trigger events when no other events of the same or higher priority are pending (
  <class>EvPrepare</class> , <class>EvCheck</class> and other <class>EvIdle</class> watchers do not count as receiving events ).
  
  Thus, as long as the process is busy handling sockets or timeouts(or even signals) of the same or
  higher priority it will not be triggered. But when the process is in idle(or only lower-priority
  watchers are pending), the <class>EvIdle</class> watchers are being called once per event loop iteration - until
  stopped, that is, or the process receives more events and becomes busy again with higher priority
  stuff.
  
  Apart from keeping the process non-blocking(which is a useful on its own sometimes), <class>EvIdle</class>
  watchers are a good place to do "pseudo-background processing" , or delay processing stuff to
  after the event loop has handled all outstanding events.
  
  The most noticeable effect is that as long as any idle watchers are active, the process will not
  block when waiting for new events.


id: EvIdle::__construct
type: function
doc:
<comment>Description:</comment>
  Constructs the EvIdle watcher object
  
  Constructs the EvIdle watcher object and starts the watcher automatically.

<comment>Param:</comment>
  <info>callable</info>  <strong>$callback</strong>  See Watcher callbacks .
  <info>mixed</info>     <strong>$data</strong>      Custom data associated with the watcher.
  <info>int</info>       <strong>$priority</strong>  Watcher priority

<comment>See Also:</comment>
   * EvIdle::createStopped
   * EvLoop::idle


id: EvIdle::createStopped
type: function
doc:
<comment>Description:</comment>
  Creates instance of a stopped EvIdle watcher object
  
  The same as EvIdle::__construct , but doesn't start the watcher automatically.

<comment>Param:</comment>
  <info>string</info>  <strong>$callback</strong>  See Watcher callbacks .
  <info>mixed</info>   <strong>$data</strong>      Custom data associated with the watcher.
  <info>int</info>     <strong>$priority</strong>  Watcher priority

<comment>Return:</comment>
  <info>object</info>  Returns EvIdle object on success.

<comment>See Also:</comment>
   * EvIdle::__construct
   * EvLoop::idle


id: EvIo
type: class
doc:
<comment>Description:</comment>
  <class>EvIo</class> watchers check whether a file descriptor(or socket, or a stream castable to numeric file
  descriptor) is readable or writable in each iteration of the event loop, or, more precisely, when
  reading would not block the process and writing would at least be able to write some data. This
  behaviour is called level-triggering because events are kept receiving as long as the condition
  persists. To stop receiving events just stop the watcher.
  
  The number of read and/or write event watchers per <strong>$fd</strong> is unlimited. Setting all file descriptors
  to non-blocking mode is also usually a good idea(but not required).
  
  Another thing to watch out for is that it is quite easy to receive false readiness notifications,
  i.e. the callback might be called with <info>Ev::READ</info> but a subsequent read() will actually block
  because there is no data. It is very easy to get into this situation. Thus it is best to always
  use non-blocking I/O: An extra read() returning <info>EAGAIN</info> (or similar) is far preferable to a program
  hanging until some data arrives.
  
  If for some reason it is impossible to run the <strong>$fd</strong> in non-blocking mode, then separately re-test
  whether a file descriptor is really ready. Some people additionally use <info>SIGALRM</info> and an interval
  timer, just to be sure thry won't block infinitely.
  
  Always consider using non-blocking mode.


id: EvIo::__construct
type: function
doc:
<comment>Description:</comment>
  Constructs EvIo watcher object
  
  Constructs EvIo watcher object and starts the watcher automatically.

<comment>Param:</comment>
  <info>mixed</info>     <strong>$fd</strong>        Can be a stream opened with <strong>fopen()</strong> or similar functions, numeric file
                       descriptor, or socket.
  <info>int</info>       <strong>$events</strong>    <info>Ev::READ</info> and/or <info>Ev::WRITE</info> . See the bit masks .
  <info>callable</info>  <strong>$callback</strong>  See Watcher callbacks .
  <info>mixed</info>     <strong>$data</strong>      Custom data associated with the watcher.
  <info>int</info>       <strong>$priority</strong>  Watcher priority

<comment>See Also:</comment>
   * EvIo::createStopped
   * EvLoop::io


id: EvIo::createStopped
type: function
doc:
<comment>Description:</comment>
  Create stopped EvIo watcher object
  
  The same as EvIo::__construct , but doesn't start the watcher automatically.

<comment>Param:</comment>
  <info>mixed</info>     <strong>$fd</strong>        The same as for EvIo::__construct
  <info>int</info>       <strong>$events</strong>    The same as for EvIo::__construct
  <info>callable</info>  <strong>$callback</strong>  See Watcher callbacks .
  <info>mixed</info>     <strong>$data</strong>      Custom data associated with the watcher.
  <info>int</info>       <strong>$priority</strong>  Watcher priority

<comment>Return:</comment>
  <info>EvIo</info>  Returns EvIo object on success.

<comment>See Also:</comment>
   * EvIo::__construct
   * EvLoop::io


id: EvIo::set
type: function
doc:
<comment>Description:</comment>
  Configures the watcher
  
  Configures the EvIo watcher

<comment>Param:</comment>
  <info>mixed</info>  <strong>$fd</strong>      The same as for EvIo::__construct
  <info>int</info>    <strong>$events</strong>  The same as for EvIo::__construct

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: EvLoop
type: class
doc:
<comment>Description:</comment>
  Represents an event loop that is always distinct from the default loop . Unlike the default loop ,
  it cannot handle <class>EvChild</class> watchers.
  
  Having threads we have to create a loop per thread, and use the default loop in the parent thread.
  
  The default event loop is initialized automatically by Ev . It is accessible via methods of the <class>Ev</class>
  class, or via EvLoop::defaultLoop method.


id: EvLoop::__construct
type: function
doc:
<comment>Description:</comment>
  Constructs the event loop object
  
  Constructs the event loop object.

<comment>Param:</comment>
  <info>int</info>    <strong>$flags</strong>             One of the event loop flags
  <info>mixed</info>  <strong>$data</strong>              Custom data associated with the loop.
  <info>float</info>  <strong>$io_interval</strong>       See io_interval
  <info>float</info>  <strong>$timeout_interval</strong>  See timeout_interval

<comment>See Also:</comment>
   * EvLoop::defaultLoop


id: EvLoop::backend
type: function
doc:
<comment>Description:</comment>
  Returns an integer describing the backend used by libev
  
  The same as Ev::backend , but for the loop instance.

<comment>Return:</comment>
  <info>int</info>  Returns an integer describing the backend used by libev. See Ev::backend .

<comment>See Also:</comment>
   * Ev::backend


id: EvLoop::check
type: function
doc:
<comment>Description:</comment>
  Creates EvCheck object associated with the current event loop
    instance
  
  Creates EvCheck object associated with the current event loop instance.

<comment>Return:</comment>
  <info>EvCheck</info>  Returns EvCheck object on success.

<comment>See Also:</comment>
   * EvCheck::__construct


id: EvLoop::child
type: function
doc:
<comment>Description:</comment>
  Creates EvChild object associated with the current event loop
  
  Creates EvChild object associated with the current event loop.

<comment>Return:</comment>
  <info>EvChild</info>  Returns EvChild object on success.

<comment>See Also:</comment>
   * EvChild::__construct


id: EvLoop::defaultLoop
type: function
doc:
<comment>Description:</comment>
  Returns or creates the default event loop
  
  If the default event loop is not created, EvLoop::defaultLoop creates it with the specified
  parameters. Otherwise, it just returns the object representing previously created instance
  ignoring all the parameters.

<comment>Param:</comment>
  <info>int</info>    <strong>$flags</strong>                     One of the event loop flags
  <info>mixed</info>  <strong>$data</strong>                      Custom data to associate with the loop.
  <info></info>       <strong>$io_collect_interval</strong>       See io_interval
  <info></info>       <strong>$timeout_collect_interval</strong>  See timeout_interval

<comment>Return:</comment>
  <info>EvLoop</info>  Returns EvLoop object on success.

<comment>See Also:</comment>
   * EvLoop::__construct


id: EvLoop::embed
type: function
doc:
<comment>Description:</comment>
  Creates an instance of EvEmbed watcher associated
    with the current EvLoop object
  
  Creates an instance of <class>EvEmbed</class> watcher associated with the current <class>EvLoop</class> object.

<comment>Return:</comment>
  <info>EvEmbed</info>  Returns EvEmbed object on success.

<comment>See Also:</comment>
   * EvEmbed::__construct


id: EvLoop::fork
type: function
doc:
<comment>Description:</comment>
  Creates EvFork watcher object associated with the current event
    loop instance
  
  Creates EvFork watcher object associated with the current event loop instance

<comment>Return:</comment>
  <info>EvFork</info>  Returns EvFork object on success.

<comment>See Also:</comment>
   * EvFork::__construct


id: EvLoop::idle
type: function
doc:
<comment>Description:</comment>
  Creates EvIdle watcher object associated with the current event
    loop instance
  
  Creates EvIdle watcher object associated with the current event loop instance

<comment>Return:</comment>
  <info>EvIdle</info>  Returns EvIdle object on success.

<comment>See Also:</comment>
   * EvIdle::__construct


id: EvLoop::invokePending
type: function
doc:
<comment>Description:</comment>
  Invoke all pending watchers while resetting their pending state
  
  Invoke all pending watchers while resetting their pending state.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: EvLoop::io
type: function
doc:
<comment>Description:</comment>
  Create EvIo watcher object associated with the current event
    loop instance
  
  Create EvIo watcher object associated with the current event loop instance.

<comment>Return:</comment>
  <info>EvIo</info>  Returns EvIo object on success.

<comment>See Also:</comment>
   * EvIo::__construct


id: EvLoop::loopFork
type: function
doc:
<comment>Description:</comment>
  Must be called after a fork
  
  Must be called after a fork in the child, before entering or continuing the event loop. An
  alternative is to use <info>Ev::FLAG_FORKCHECK</info> which calls this function automatically, at some
  performance loss (refer to the libev documentation ).

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: EvLoop::now
type: function
doc:
<comment>Description:</comment>
  Returns the current "event loop time"
  
  Returns the current "event loop time", which is the time the event loop received events and
  started processing them. This timestamp does not change as long as callbacks are being processed,
  and this is also the base time used for relative timers. You can treat it as the timestamp of the
  event occurring(or more correctly, libev finding out about it).

<comment>Return:</comment>
  <info>float</info>  Returns time of the event loop in (fractional) seconds.

<comment>See Also:</comment>
   * Ev::now


id: EvLoop::nowUpdate
type: function
doc:
<comment>Description:</comment>
  Establishes the current time by querying the kernel, updating the time
      returned by EvLoop::now in the progress
  
  Establishes the current time by querying the kernel, updating the time returned by EvLoop::now in
  the progress. This is a costly operation and is usually done automatically within EvLoop::run .

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * EvLoop::now
   * Ev::nowUpdate


id: EvLoop::periodic
type: function
doc:
<comment>Description:</comment>
  Creates EvPeriodic watcher object associated with the current
    event loop instance
  
  Creates EvPeriodic watcher object associated with the current event loop instance

<comment>Return:</comment>
  <info>EvPeriodic</info>  Returns EvPeriodic object on success.

<comment>See Also:</comment>
   * EvPeriodic::__construct


id: EvLoop::prepare
type: function
doc:
<comment>Description:</comment>
  Creates EvPrepare watcher object associated with the current
    event loop instance
  
  Creates EvPrepare watcher object associated with the current event loop instance

<comment>Return:</comment>
  <info>EvPrepare</info>  Returns EvPrepare object on success

<comment>See Also:</comment>
   * EvPrepare::__construct


id: EvLoop::resume
type: function
doc:
<comment>Description:</comment>
  Resume previously suspended default event loop
  
  EvLoop::suspend and EvLoop::resume methods suspend and resume a loop correspondingly.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * EvLoop::suspend
   * Ev::resume


id: EvLoop::run
type: function
doc:
<comment>Description:</comment>
  Begin checking for events and calling callbacks for the loop
  
  Begin checking for events and calling callbacks for the current event loop. Returns when a
  callback calls Ev::stop method, or the flags are nonzero(in which case the return value is true)
  or when there are no active watchers which reference the loop( EvWatcher::keepalive is <info>true</info>), in
  which case the return value will be <info>false</info>. The return value can generally be interpreted as if
  <info>true</info>, there is more work left to do .

<comment>Param:</comment>
  <info>int</info>  <strong>$flags</strong>  Optional parameter <strong>$flags</strong> can be one of the following:  List for possible values of
               <strong>$flags</strong> <strong>$flags</strong>Description<info>0</info>The default behavior described above<info>Ev::RUN_ONCE</info>Block at
               most one(wait, but don't loop)<info>Ev::RUN_NOWAIT</info>Don't block at all(fetch/handle events,
               but don't wait)
               
               See the run flag constants .

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * EvLoop::stop
   * Ev::run


id: EvLoop::signal
type: function
doc:
<comment>Description:</comment>
  Creates EvSignal watcher object associated with the current
    event loop instance
  
  Creates EvSignal watcher object associated with the current event loop instance

<comment>Return:</comment>
  <info>EvSignal</info>  Returns EvSignal object on success

<comment>See Also:</comment>
   * EvSignal::__construct


id: EvLoop::stat
type: function
doc:
<comment>Description:</comment>
  Creates EvStat watcher object associated with the current event
    loop instance
  
  Creates EvStat watcher object associated with the current event loop instance

<comment>Return:</comment>
  <info>EvStat</info>  Returns EvStat object on success

<comment>See Also:</comment>
   * EvSignal::__construct


id: EvLoop::stop
type: function
doc:
<comment>Description:</comment>
  Stops the event loop
  
  Stops the event loop

<comment>Param:</comment>
  <info>int</info>  <strong>$how</strong>  One of Ev::BREAK_* constants .

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * EvLoop::run
   * Ev::stop


id: EvLoop::suspend
type: function
doc:
<comment>Description:</comment>
  Suspend the loop
  
  EvLoop::suspend and EvLoop::resume methods suspend and resume a loop correspondingly.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * EvLoop::resume
   * Ev::suspend


id: EvLoop::timer
type: function
doc:
<comment>Description:</comment>
  Creates EvTimer watcher object associated with the current event
    loop instance
  
  Creates EvTimer watcher object associated with the current event loop instance

<comment>Return:</comment>
  <info>EvTimer</info>  Returns EvTimer object on success

<comment>See Also:</comment>
   * EvTimer::__construct


id: EvLoop::verify
type: function
doc:
<comment>Description:</comment>
  Performs internal consistency checks(for debugging)
  
  Performs internal consistency checks(for debugging libev ) and abort the program if any data
  structures were found to be corrupted.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * Ev::verify


id: EvPeriodic
type: class
doc:
<comment>Description:</comment>
  Periodic watchers are also timers of a kind, but they are very versatile.
  
  Unlike <class>EvTimer</class> , <class>EvPeriodic</class> watchers are not based on real time(or relative time, the physical
  time that passes) but on wall clock time(absolute time, calendar or clock). The difference is that
  wall clock time can run faster or slower than real time, and time jumps are not uncommon(e.g. when
  adjusting it).
  
  <class>EvPeriodic</class> watcher can be configured to trigger after some specific point in time. For example, if
  an <class>EvPeriodic</class> watcher is configured to trigger "in 10 seconds" (e.g. EvLoop::now + <info>10.0</info> , i.e. an
  absolute time, not a delay), and the system clock is reset to January of the previous year , then
  it will take a year or more to trigger the event (unlike an <class>EvTimer</class> , which would still trigger
  roughly <info>10</info> seconds after starting it as it uses a relative timeout).
  
  As with timers, the callback is guaranteed to be invoked only when the point in time where it is
  supposed to trigger has passed. If multiple timers become ready during the same loop iteration
  then the ones with earlier time-out values are invoked before ones with later time-out values (but
  this is no longer true when a callback calls EvLoop::run recursively).


id: EvPeriodic::__construct
type: function
doc:
<comment>Description:</comment>
  Constructs EvPeriodic watcher object
  
  Constructs EvPeriodic watcher object and starts it automatically. EvPeriodic::createStopped method
  creates stopped periodic watcher.

<comment>Param:</comment>
  <info>float</info>     <strong>$offset</strong>         See Periodic watcher operation modes
  <info>string</info>    <strong>$interval</strong>       See Periodic watcher operation modes
  <info>callable</info>  <strong>$reschedule_cb</strong>  Reschedule callback. You can pass <info>null</info>. See Periodic watcher operation
                            modes
  <info>callable</info>  <strong>$callback</strong>       See Watcher callbacks .
  <info>mixed</info>     <strong>$data</strong>           Custom data associated with the watcher.
  <info>int</info>       <strong>$priority</strong>       Watcher priority

<comment>See Also:</comment>
   * Periodic watcher operation modes
   * <class>EvTimer</class>
   * EvPeriodic::createStopped


id: EvPeriodic::again
type: function
doc:
<comment>Description:</comment>
  Simply stops and restarts the periodic watcher again
  
  Simply stops and restarts the periodic watcher again. This is only useful when attributes are
  changed.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * EvTimer::again


id: EvPeriodic::at
type: function
doc:
<comment>Description:</comment>
  Returns the absolute time that this
    watcher is supposed to trigger next
  
  When the watcher is active, returns the absolute time that this watcher is supposed to trigger
  next. This is not the same as the offset argument to EvPeriodic::set or EvPeriodic::__construct ,
  but indeed works even in interval mode.

<comment>Return:</comment>
  <info>float</info>  Returns the absolute time this watcher is supposed to trigger next in seconds.


id: EvPeriodic::createStopped
type: function
doc:
<comment>Description:</comment>
  Create a stopped EvPeriodic watcher
  
  Create EvPeriodic object. Unlike EvPeriodic::__construct this method doesn't start the watcher
  automatically.

<comment>Param:</comment>
  <info>float</info>     <strong>$offset</strong>         See Periodic watcher operation modes
  <info>float</info>     <strong>$interval</strong>       See Periodic watcher operation modes
  <info>callable</info>  <strong>$reschedule_cb</strong>  Reschedule callback. You can pass <info>null</info>. See Periodic watcher operation
                            modes
  <info>callable</info>  <strong>$callback</strong>       See Watcher callbacks .
  <info>mixed</info>     <strong>$data</strong>           Custom data associated with the watcher.
  <info>int</info>       <strong>$priority</strong>       Watcher priority

<comment>Return:</comment>
  <info>EvPeriodic</info>  Returns EvPeriodic watcher object on success.

<comment>See Also:</comment>
   * EvPeriodic::__construct
   * EvTimer::createStopped


id: EvPeriodic::set
type: function
doc:
<comment>Description:</comment>
  Configures the watcher
  
  (Re-)Configures EvPeriodic watcher

<comment>Param:</comment>
  <info>float</info>  <strong>$offset</strong>    The same meaning as for EvPeriodic::__construct . See Periodic watcher operation
                    modes
  <info>float</info>  <strong>$interval</strong>  The same meaning as for EvPeriodic::__construct . See Periodic watcher operation
                    modes

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: EvPrepare::__construct
type: function
doc:
<comment>Description:</comment>
  Construye un objeto observador de EvPrepare
  
  Construye un objeto observador de EvPrepare e inicia el observador autmáticamente. Si fuera
  necesario un observador detenido, considere el empleo de EvPrepare::createStopped

<comment>Param:</comment>
  <info>string</info>  <strong>$callback</strong>  Ver Retrollamadas de observadores .
  <info>string</info>  <strong>$data</strong>      Datos personalizados asociados con el observador.
  <info>string</info>  <strong>$priority</strong>  Prioridad del observador

<comment>See Also:</comment>
   * <class>EvCheck</class>


id: EvPrepare::createStopped
type: function
doc:
<comment>Description:</comment>
  Crea una instancia detenida del watcher (testigo) EvPrepare 
  
  Crea una instancia detenida del testigo EvPrepare. A diferencia de EvPrepare::__construct , este
  método no inicia el testigo automáticamente.

<comment>Param:</comment>
  <info>callable</info>  <strong>$callback</strong>  Ver Retrollamada del testigo .
  <info>mixed</info>     <strong>$data</strong>      Datos personalizados asociados con el testigo.
  <info>int</info>       <strong>$priority</strong>  Prioridad del testigo

<comment>Return:</comment>
  <info>EvPrepare</info>  Devuelve el objeto EvPrepare en caso de éxito.

<comment>See Also:</comment>
   * EvPrepare::__construct
   * EvWatcher::start


id: EvSignal
type: class
doc:
<comment>Description:</comment>
  <class>EvSignal</class> watchers will trigger an event when the process receives a specific signal one or more
  times. Even though signals are very asynchronous, libev will try its best to deliver signals
  synchronously, i.e. as part of the normal event processing, like any other event.
  
  There is no limit for the number of watchers for the same signal, but only within the same loop,
  i.e. one can watch for <info>SIGINT</info> in the default loop and for <info>SIGIO</info> in another loop, but it is not
  allowed to watch for <info>SIGINT</info> in both the default loop and another loop at the same time. At the
  moment, <info>SIGCHLD</info> is permanently tied to the default loop.
  
  If possible and supported, libev will install its handlers with <return>SA_RESTART</return> (or equivalent)
  behaviour enabled, so system calls should not be unduly interrupted. In case of a problem with
  system calls getting interrupted by signals, all the signals can be blocked in an <class>EvCheck</class> watcher
  and unblocked in a <class>EvPrepare</class> watcher.


id: EvSignal::__construct
type: function
doc:
<comment>Description:</comment>
  Construye el objeto observador EvSignal
  
  Construye el objeto observador EvSignal y lo inicia automáticamente. Para un observador periódico
  detenido, considere la posibilidad de usar EvSignal::createStopped.

<comment>Param:</comment>
  <info>int</info>       <strong>$signum</strong>    Número de señal. Ver las constantes exportadas por la extensión pcntl. Ver
                       también la página principal de <return>signal(7)</return>.
  <info>callable</info>  <strong>$callback</strong>  Ver Las llamadas de los observadores .
  <info>mixed</info>     <strong>$data</strong>      Datos personalizados asociados con el observador.
  <info>int</info>       <strong>$priority</strong>  Prioridad del observador

<comment>See Also:</comment>
   * EvSignal::createStopped


id: EvSignal::createStopped
type: function
doc:
<comment>Description:</comment>
  Create stopped EvSignal watcher object
  
  Create stopped EvSignal watcher object. Unlike EvSignal::__construct , this method does't start
  the watcher automatically.

<comment>Param:</comment>
  <info>int</info>       <strong>$signum</strong>    Signal number. See constants exported by pcntl extension. See also <return>signal(7)</return>
                       man page.
  <info>callable</info>  <strong>$callback</strong>  See Watcher callbacks .
  <info>mixed</info>     <strong>$data</strong>      Custom data associated with the watcher.
  <info>int</info>       <strong>$priority</strong>  Watcher priority

<comment>Return:</comment>
  <info>EvSignal</info>  Returns EvSignal object on success.

<comment>See Also:</comment>
   * EvWatcher::start
   * EvSignal::__construct


id: EvSignal::set
type: function
doc:
<comment>Description:</comment>
  Configura el testigo
  
  Configura el testigo.

<comment>Param:</comment>
  <info>int</info>  <strong>$signum</strong>  Señal numérica. La misma que para  EvSignal::__construct

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: EvStat
type: class
doc:
<comment>Description:</comment>
  <class>EvStat</class> monitors a file system path for attribute changes. It calls stat() on that path in regular
  intervals(or when the OS signals it changed) and sees if it changed compared to the last time,
  invoking the callback if it did.
  
  The path does not need to exist: changing from "path exists" to "path does not exist" is a status
  change like any other. The condition "path does not exist" is signified by the <info>'nlink'</info> item being
  0(returned by EvStat::attr method).
  
  The path must not end in a slash or contain special components such as <info>'.'</info> or <info>..</info> . The path should
  be absolute: if it is relative and the working directory changes, then the behaviour is undefined.
  
  Since there is no portable change notification interface available, the portable implementation
  simply calls stat() regularly on the path to see if it changed somehow. For this case a
  recommended polling interval can be specified. If one specifies a polling interval of <info>0.0</info> (highly
  recommended) then a suitable, unspecified default value will be used(which could be expected to be
  around 5 seconds, although this might change dynamically). libev will also impose a minimum
  interval which is currently around <info>0.1</info> , but that’s usually overkill.
  
  This watcher type is not meant for massive numbers of <class>EvStat</class> watchers, as even with OS-supported
  change notifications, this can be resource-intensive.


id: EvStat::__construct
type: function
doc:
<comment>Description:</comment>
  Constructs EvStat watcher object
  
  Constructs EvStat watcher object and starts the watcher automatically.

<comment>Param:</comment>
  <info>string</info>    <strong>$path</strong>      The path to wait for status changes on.
  <info>float</info>     <strong>$interval</strong>  Hint on how quickly a change is expected to be detected and should normally
                       be specified as <info>0.0</info> to let libev choose a suitable value.
  <info>callable</info>  <strong>$callback</strong>  See Watcher callbacks .
  <info>mixed</info>     <strong>$data</strong>      Custom data associated with the watcher.
  <info>int</info>       <strong>$priority</strong>  Watcher priority


id: EvStat::attr
type: function
doc:
<comment>Description:</comment>
  Returns the values most recently detected by Ev
  
  Returns array of the values most recently detected by Ev

<comment>Return:</comment>
  <info>array</info>  Returns array with the values most recently detect by Ev(without actual <return>stat</return> 'ing):  List
         for item keys of the array returned by EvStat::attr KeyDescription<info>'dev'</info>ID of device
         containing file<info>'ino'</info>inode number<info>'mode'</info>protection<info>'nlink'</info>number of hard links<info>'uid'</info>user ID of
         owner<info>'size'</info>total size, in bytes<info>'gid'</info>group ID of owner<info>'rdev'</info>device ID (if special
         file)<info>'blksize'</info>blocksize for file system I/O<info>'blocks'</info>number of 512B blocks
         allocated<info>'atime'</info>time of last access<info>'ctime'</info>time of last status change<info>'mtime'</info>time of last
         modification
         
         See <return>stat(2)</return> man page for details.

<comment>See Also:</comment>
   * EvStat::prev
   * EvStat::stat


id: EvStat::createStopped
type: function
doc:
<comment>Description:</comment>
  Create a stopped EvStat watcher object
  
  Creates EvStat watcher object, but doesn't start it automatically(unlike EvStat::__construct ).

<comment>Param:</comment>
  <info>string</info>    <strong>$path</strong>      The path to wait for status changes on.
  <info>float</info>     <strong>$interval</strong>  Hint on how quickly a change is expected to be detected and should normally
                       be specified as <info>0.0</info> to let libev choose a suitable value.
  <info>callable</info>  <strong>$callback</strong>  See Watcher callbacks .
  <info>mixed</info>     <strong>$data</strong>      Custom data associated with the watcher.
  <info>int</info>       <strong>$priority</strong>  Watcher priority

<comment>Return:</comment>
  <info>void</info>  Returns a stopped EvStat watcher object on success.

<comment>See Also:</comment>
   * EvStat::__construct
   * EvWatcher::start


id: EvStat::prev
type: function
doc:
<comment>Description:</comment>
  Returns the previous set of values returned by EvStat::attr
  
  Just like EvStat::attr , but returns the previous set of values.

<comment>Return:</comment>
  <info>void</info>  Returns an array with the same structure as the array returned by EvStat::attr . The array
        contains previously detected values.

<comment>See Also:</comment>
   * EvStat::attr
   * EvStat::stat


id: EvStat::set
type: function
doc:
<comment>Description:</comment>
  Configures the watcher
  
  Configures the watcher.

<comment>Param:</comment>
  <info>string</info>  <strong>$path</strong>      The path to wait for status changes on.
  <info>float</info>   <strong>$interval</strong>  Hint on how quickly a change is expected to be detected and should normally be
                     specified as <info>0.0</info> to let libev choose a suitable value.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: EvStat::stat
type: function
doc:
<comment>Description:</comment>
  Initiates the stat call
  
  Initiates the stat call(updates internal cache). It stats(using <return>lstat</return> ) the path specified in the
  watcher and sets to the values found.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if path exists. Otherwise <info>false</info>.

<comment>See Also:</comment>
   * EvStat::attr
   * EvStat::prev


id: EvTimer
type: class
doc:
<comment>Description:</comment>
  <class>EvTimer</class> watchers are simple relative timers that generate an event after a given time, and
  optionally repeating in regular intervals after that.
  
  The timers are based on real time, that is, if one registers an event that times out after an hour
  and resets the system clock to January last year , it will still time out after(roughly) one hour.
  "Roughly" because detecting time jumps is hard, and some inaccuracies are unavoidable.
  
  The callback is guaranteed to be invoked only after its timeout has passed (not at, so on systems
  with very low-resolution clocks this might introduce a small delay). If multiple timers become
  ready during the same loop iteration then the ones with earlier time-out values are invoked before
  ones of the same priority with later time-out values (but this is no longer true when a callback
  calls EvLoop::run recursively).
  
  The timer itself will do a best-effort at avoiding drift, that is, if a timer is configured to
  trigger every <info>10</info> seconds, then it will normally trigger at exactly <info>10</info> second intervals. If,
  however, the script cannot keep up with the timer because it takes longer than those <info>10</info> seconds to
  do) the timer will not fire more than once per event loop iteration.


id: EvTimer::__construct
type: function
doc:
<comment>Description:</comment>
  Constructs an EvTimer watcher object
  
  Constructs an EvTimer watcher object.

<comment>Param:</comment>
  <info>float</info>     <strong>$after</strong>     Configures the timer to trigger after <strong>$after</strong> seconds.
  <info>float</info>     <strong>$repeat</strong>    If repeat is <info>0.0</info> , then it will automatically be stopped once the timeout is
                       reached. If it is positive, then the timer will automatically be configured
                       to trigger again every repeat seconds later, until stopped manually.
  <info>callable</info>  <strong>$callback</strong>  See Watcher callbacks .
  <info>mixed</info>     <strong>$data</strong>      Custom data associated with the watcher.
  <info>int</info>       <strong>$priority</strong>  Watcher priority

<comment>See Also:</comment>
   * EvTimer::createStopped
   * <class>EvPeriodic</class>
   * ev_timer - relative and optionally repeating timeouts
   * Be smart about timeouts


id: EvTimer::again
type: function
doc:
<comment>Description:</comment>
  Restarts the timer watcher
  
  This will act as if the timer timed out and restart it again if it is repeating. The exact
  semantics are:
  
  if the timer is pending, its pending status is cleared.
  
  if the timer is started but non-repeating, stop it (as if it timed out).
  
  if the timer is repeating, either start it if necessary (with the repeat value), or reset the
  running timer to the repeat value.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * EvWatcher::stop


id: EvTimer::createStopped
type: function
doc:
<comment>Description:</comment>
  Creates EvTimer stopped watcher object
  
  Creates EvTimer stopped watcher object. Unlike EvTimer::__construct , this method doesn't start
  the watcher automatically.

<comment>Param:</comment>
  <info>float</info>     <strong>$after</strong>     Configures the timer to trigger after <strong>$after</strong> seconds.
  <info>float</info>     <strong>$repeat</strong>    If repeat is <info>0.0</info> , then it will automatically be stopped once the timeout is
                       reached. If it is positive, then the timer will automatically be configured
                       to trigger again every repeat seconds later, until stopped manually.
  <info>callable</info>  <strong>$callback</strong>  See Watcher callbacks .
  <info>mixed</info>     <strong>$data</strong>      Custom data associated with the watcher.
  <info>int</info>       <strong>$priority</strong>  Watcher priority

<comment>Return:</comment>
  <info>EvTimer</info>  Returns EvTimer watcher object on success.

<comment>See Also:</comment>
   * EvTimer::__construct
   * <class>EvPeriodic</class>


id: EvTimer::set
type: function
doc:
<comment>Description:</comment>
  Configures the watcher
  
  Configures the watcher

<comment>Param:</comment>
  <info>float</info>  <strong>$after</strong>   Configures the timer to trigger after <strong>$after</strong> seconds.
  <info>float</info>  <strong>$repeat</strong>  If repeat is <info>0.0</info> , then it will automatically be stopped once the timeout is
                  reached. If it is positive, then the timer will automatically be configured to
                  trigger again every repeat seconds later, until stopped manually.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: EvWatcher
type: class
doc:
<comment>Description:</comment>
  <class>EvWatcher</class> is a base class for all watchers( <class>EvCheck</class> , <class>EvChild</class> etc.). Since <class>EvWatcher</class> 's
  constructor is abstract , one can't(and don't need to) create EvWatcher objects directly.


id: EvWatcher::__construct
type: function
doc:
<comment>Description:</comment>
  Abstract constructor of a watcher object
  
  EvWatcher::__construct is an abstract constructor of a watcher object implemented in the derived
  classes.


id: EvWatcher::clear
type: function
doc:
<comment>Description:</comment>
  Clear watcher pending status
  
  If the watcher is pending, this method clears its pending status and returns its revents bitset(as
  if its callback was invoked). If the watcher isn't pending it does nothing and returns <info>0</info> .
  
  Sometimes it can be useful to "poll" a watcher instead of waiting for its callback to be invoked,
  which can be accomplished with this function.

<comment>Return:</comment>
  <info>int</info>  In case if the watcher is pending, returns revents bitset as if the watcher callback had been
       invoked. Otherwise returns <info>0</info> .


id: EvWatcher::feed
type: function
doc:
<comment>Description:</comment>
  Feeds the given revents set into the event loop
  
  Feeds the given revents set into the event loop, as if the specified event had happened for the
  watcher.

<comment>Param:</comment>
  <info>int</info>  <strong>$revents</strong>  Bit mask of watcher received events .

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: EvWatcher::getLoop
type: function
doc:
<comment>Description:</comment>
  Returns the loop responsible for the watcher
  
  Returns the loop responsible for the watcher

<comment>Return:</comment>
  <info>EvLoop</info>  Returns <class>EvLoop</class> event loop object responsible for the watcher.


id: EvWatcher::invoke
type: function
doc:
<comment>Description:</comment>
  Invokes the watcher callback with the given received events bit
    mask
  
  Invokes the watcher callback with the given received events bit mask.

<comment>Param:</comment>
  <info>int</info>  <strong>$revents</strong>  Bit mask of watcher received events .

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: EvWatcher::keepalive
type: function
doc:
<comment>Description:</comment>
  Configures whether to keep the loop from returning
  
  Configures whether to keep the loop from returning. With keepalive <strong>$value</strong> set to <info>false</info> the watcher
  won't keep Ev::run / EvLoop::run from returning even though the watcher is active.
  
  Watchers have keepalive <strong>$value</strong> <info>true</info> by default.
  
  Clearing keepalive status is useful when returning from Ev::run / EvLoop::run just because of the
  watcher is undesirable. It could be a long running UDP socket watcher or so.

<comment>Param:</comment>
  <info>bool</info>  <strong>$value</strong>  With keepalive <strong>$value</strong> set to <info>false</info> the watcher won't keep Ev::run / EvLoop::run from
                returning even though the watcher is active.

<comment>Return:</comment>
  <info>bool</info>  Returns the previous state.


id: EvWatcher::setCallback
type: function
doc:
<comment>Description:</comment>
  Sets new callback for the watcher
  
  Sets new callback for the watcher

<comment>Param:</comment>
  <info>callable</info>  <strong>$callback</strong>  See Watcher callbacks .

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: EvWatcher::start
type: function
doc:
<comment>Description:</comment>
  Starts the watcher
  
  Marks the watcher as active. Note that only active watchers will receive events.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * EvWatcher::stop


id: EvWatcher::stop
type: function
doc:
<comment>Description:</comment>
  Stops the watcher
  
  Marks the watcher as inactive. Note that only active watchers will receive events.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * EvWatcher::start


id: Event
type: class
doc:
<comment>Description:</comment>
  <class>Event</class> class represents and event firing on a file descriptor being ready to read from or write to;
  a file descriptor becoming ready to read from or write to(edge-triggered I/O only); a timeout
  expiring; a signal occurring; a user-triggered event.
  
  Every event is associated with <class>EventBase</class> . However, event will never fire until it is added (via
  Event::add ). An added event remains in pending state until the registered event occurs, thus
  turning it to active state. To handle events user may register a callback which is called when
  event becomes active. If event is configured persistent , it remains pending. If it is not
  persistent, it stops being pending when it's callback runs. Event::del method deletes event, thus
  making it non-pending. By means of Event::add method it could be added again.


id: Event::ET
type: constant
doc:
<comment>Description:</comment>
  Indicates that the event should be edge-triggered, if the underlying event base backend supports
  edge-triggered events. This affects the semantics of <info>Event::READ</info> and <info>Event::WRITE</info> .


id: Event::PERSIST
type: constant
doc:
<comment>Description:</comment>
  Indicates that the event is persistent. See About event persistence .


id: Event::READ
type: constant
doc:
<comment>Description:</comment>
  This flag indicates an event that becomes active when the provided file descriptor(usually a
  stream resource, or socket) is ready for reading.


id: Event::SIGNAL
type: constant
doc:
<comment>Description:</comment>
  Used to implement signal detection. See "Constructing signal events" below.


id: Event::TIMEOUT
type: constant
doc:
<comment>Description:</comment>
  This flag indicates an event that becomes active after a timeout elapses.
  
  The <info>Event::TIMEOUT</info> flag is ignored when constructing an event: one can either set a timeout when
  event is added , or not. It is set in the <return>$what</return> argument to the callback function when a timeout
  has occurred.


id: Event::__construct
type: function
doc:
<comment>Description:</comment>
  Constructs Event object
  
  Constructs Event object.

<comment>Param:</comment>
  <info>EventBase</info>  <strong>$base</strong>  The event base to associate with.
  <info>mixed</info>      <strong>$fd</strong>    stream resource, socket resource, or numeric file descriptor. For timer events
                    pass <info>-1</info> . For signal events pass the signal number, e.g. <info>SIGHUP</info> .
  <info>int</info>        <strong>$what</strong>  Event flags. See Event flags .
  <info>callable</info>   <strong>$cb</strong>    The event callback. See Event callbacks .
  <info>mixed</info>      <strong>$arg</strong>   Custom data. If specified, it will be passed to the callback when event
                    triggers.

<comment>Return:</comment>
  <info>unknown</info>  Returns Event object.

<comment>See Also:</comment>
   * Event::signal
   * Event::timer


id: Event::add
type: function
doc:
<comment>Description:</comment>
  Makes event pending
  
  Marks event pending. Non-pending event will never occur, and the event callback will never be
  called. In conjunction with Event::del an event could be re-scheduled by user at any time.
  
  If Event::add is called on an already pending event, libevent will leave it pending and
  re-schedule it with the given timeout(if specified). If in this case timeout is not specified,
  Event::add has no effect.

<comment>Param:</comment>
  <info>float</info>  <strong>$timeout</strong>  Timeout in seconds.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * Event::add
   * Event::del
   * Event::signal
   * Event::timer


id: Event::del
type: function
doc:
<comment>Description:</comment>
  Makes event non-pending
  
  Removes an event from the set of monitored events, i.e. makes it non-pending.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * Event::add


id: Event::free
type: function
doc:
<comment>Description:</comment>
  Make event non-pending and free resources allocated for this
    event
  
  Removes event from the list of events monitored by libevent, and free resources allocated for the
  event.
  
  The Event::free method currently doesn't destruct the object itself. To destruct the object
  completely call <strong>unset()</strong> , or assign <info>null</info>.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * Event::__construct


id: Event::getSupportedMethods
type: function
doc:
<comment>Description:</comment>
  Returns array with of the names of the methods supported in this version of Libevent
  
  Returns array with of the names of the methods(backends) supported in this version of Libevent.

<comment>Return:</comment>
  <info>array</info>  Returns array.

<comment>See Also:</comment>
   * <class>EventConfig</class>


id: Event::pending
type: function
doc:
<comment>Description:</comment>
  Detects whether event is pending or scheduled
  
  Detects whether event is pending or scheduled

<comment>Param:</comment>
  <info>int</info>  <strong>$flags</strong>  One of, or a composition of the following constants: <info>Event::READ</info> , <info>Event::WRITE</info> ,
               <info>Event::TIMEOUT</info> , <info>Event::SIGNAL</info> .

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if event is pending or scheduled. Otherwise <info>false</info>.


id: Event::set
type: function
doc:
<comment>Description:</comment>
  Re-configures event
  
  Re-configures event. Note, this function doesn't invoke obsolete libevent's event_set. It calls
  event_assign instead.

<comment>Param:</comment>
  <info>EventBase</info>  <strong>$base</strong>  The event base to associate the event with.
  <info>mixed</info>      <strong>$fd</strong>    Stream resource, socket resource, or numeric file descriptor. For timer events
                    pass <info>-1</info> . For signal events pass the signal number, e.g. <info>SIGHUP</info> .
  <info>int</info>        <strong>$what</strong>  See Event flags .
  <info>callable</info>   <strong>$cb</strong>    The event callback. See Event callbacks .
  <info>mixed</info>      <strong>$arg</strong>   Custom data associated with the event. It will be passed to the callback when
                    the event becomes active.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.


id: Event::setPriority
type: function
doc:
<comment>Description:</comment>
  Set event priority
  
  Set event priority.

<comment>Param:</comment>
  <info>int</info>  <strong>$priority</strong>  The event priority.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.


id: Event::setTimer
type: function
doc:
<comment>Description:</comment>
  Re-configures timer event
  
  Re-configures timer event. Note, this function doesn't invoke obsolete libevent's <return>event_set</return> . It
  calls <return>event_assign</return> instead.

<comment>Param:</comment>
  <info>EventBase</info>  <strong>$base</strong>  The event base to associate with.
  <info>callable</info>   <strong>$cb</strong>    The timer event callback. See Event callbacks .
  <info>mixed</info>      <strong>$arg</strong>   Custom data. If specified, it will be passed to the callback when event
                    triggers.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * Event::__construct
   * Event::timer


id: Event::signal
type: function
doc:
<comment>Description:</comment>
  Constructs signal event object
  
  Constructs signal event object. This is a straightforward method to create a signal event. Note,
  the generic Event::__construct method can contruct signal event objects too.

<comment>Param:</comment>
  <info>EventBase</info>  <strong>$base</strong>    The associated event base object.
  <info>int</info>        <strong>$signum</strong>  The signal number.
  <info>callable</info>   <strong>$cb</strong>      The signal event callback. See Event callbacks .
  <info>mixed</info>      <strong>$arg</strong>     Custom data. If specified, it will be passed to the callback when event
                      triggers.

<comment>Return:</comment>
  <info>Event</info>  Returns Event object on success. Otherwise <info>false</info>.

<comment>See Also:</comment>
   * Constructing signal events


id: Event::timer
type: function
doc:
<comment>Description:</comment>
  Constructs timer event object
  
  Constructs timer event object. This is a straightforward method to create a timer event. Note, the
  generic Event::__construct method can contruct signal event objects too.

<comment>Param:</comment>
  <info>EventBase</info>  <strong>$base</strong>  The associated event base object.
  <info>callable</info>   <strong>$cb</strong>    The signal event callback. See Event callbacks .
  <info>mixed</info>      <strong>$arg</strong>   Custom data. If specified, it will be passed to the callback when event
                    triggers.

<comment>Return:</comment>
  <info>Event</info>  Returns Event object on success. Otherwise <info>false</info>.


id: EventBase
type: class
doc:
<comment>Description:</comment>
  <class>EventBase</class> class represents libevent's event base structure. It holds a set of events and can poll
  to determine which events are active.
  
  Each event base has a method , or a backend that it uses to determine which events are ready. The
  recognized methods are: <return>select</return> , <return>poll</return> , <return>epoll</return> , <return>kqueue</return> , <return>devpoll</return> , <return>evport</return> and <return>win32</return> .
  
  To configure event base to use, or avoid specific backend <class>EventConfig</class> class can be used.
  
  Do NOT destroy the <class>EventBase</class> object as long as resources of the associated <return>Event</return> objects are not
  released. Otherwise, it will lead to unpredictable results!


id: EventBase::EPOLL_USE_CHANGELIST
type: constant
doc:
<comment>Description:</comment>
  If we are using the <return>epoll</return> backend, this flag says that it is safe to use Libevent's internal
  change-list code to batch up adds and deletes in order to try to do as few syscalls as possible.
  
  Setting this flag can make code run faster, but it may trigger a Linux bug: it is not safe to use
  this flag if one has any fds cloned by dup(), or its variants. Doing so will produce strange and
  hard-to-diagnose bugs.
  
  This flag can also be activated by settnig the <return>EVENT_EPOLL_USE_CHANGELIST</return> environment variable.
  
  This flag has no effect if one winds up using a backend other than <return>epoll</return> .


id: EventBase::LOOP_NONBLOCK
type: constant
doc:
<comment>Description:</comment>
  Flag used with EventBase::loop method which means: "do not block: see which events are ready now,
  run the callbacks of the highest-priority ones, then exit".


id: EventBase::LOOP_ONCE
type: constant
doc:
<comment>Description:</comment>
  Flag used with EventBase::loop method which means: "block until libevent has an active event, then
  exit once all active events have had their callbacks run".


id: EventBase::NOLOCK
type: constant
doc:
<comment>Description:</comment>
  Configuration flag. Do not allocate a lock for the event base, even if we have locking set up".


id: EventBase::NO_CACHE_TIME
type: constant
doc:
<comment>Description:</comment>
  Configuration flag. Instead of checking the current time every time the event loop is ready to run
  timeout callbacks, check after each timeout callback.


id: EventBase::STARTUP_IOCP
type: constant
doc:
<comment>Description:</comment>
  Windows-only configuration flag. Enables the IOCP dispatcher at startup.


id: EventBase::__construct
type: function
doc:
<comment>Description:</comment>
  Construye un objeto EventBase
  
  Construye un objeto EventBase

<comment>Param:</comment>
  <info>EventConfig</info>  <strong>$cfg</strong>  Opcional Un objeto <class>EventConfig</class> .

<comment>Return:</comment>
  <info>unknown</info>  Devuelve un objeto EventBase.

<comment>See Also:</comment>
   * <class>EventConfig</class>


id: EventBase::dispatch
type: function
doc:
<comment>Description:</comment>
  Despacha eventos pendientes
  
  Espara a que los eventos estén activos y ejecuta sus llamadas de retorno. Hace lo mismo que
  EventBase::loop pero sin flags definidas.
  
   Do NOT destroy the <class>EventBase</class> object as long as resources of the associated <return>Event</return> objects are not
  released. Otherwise, it will lead to unpredictable results!
  
  Do NOT destroy the <class>EventBase</class> object as long as resources of the associated <return>Event</return> objects are not
  released. Otherwise, it will lead to unpredictable results!

<comment>Return:</comment>
  <info>void</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * EventBase::loop


id: EventBase::exit
type: function
doc:
<comment>Description:</comment>
  Detiene el envío de los eventos
  
  Le indica al evento base que pare el envío de los eventos, opcionamente después de un número de
  segundos dado.

<comment>Param:</comment>
  <info>float</info>  <strong>$timeout</strong>  Número opcional de segundos después de los cuales el evento base deberá parar el
                   envío de eventos.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * EventBase::stop


id: EventBase::free
type: function
doc:
<comment>Description:</comment>
  Recursos ddisponibles asignados para esta base de eventos
  
  Desasigna los recursos asignados por libevent para el objeto <class>EventBase</class>.
  
  El método EventBase::free no destruye el objeto en sí. Para destruir el objeto completamente llame
  a <strong>unset()</strong> , o asigne <info>null</info>.
  
  Este método no desasigna ni separa ninguno de los eventos que están actualmente asociados al
  objeto <class>EventBase</class>, ni EventBase, ni cierra ninguno de sus sockets - cuidado.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * EventBase::__construct


id: EventBase::getFeatures
type: function
doc:
<comment>Description:</comment>
  Devuelve una máscara de bits de funcionalidades soportadas
  
  Devuelve una máscara de bits de funcionalidades soportadas.

<comment>Return:</comment>
  <info>int</info>  Devuelve un entero que representa una máscara de bits de funcionalidades soportadas. Ver las
       constantes EventConfig::FEATURE_*  .

<comment>See Also:</comment>
   * EventBase::getMethod
   * <class>EventConfig</class>


id: EventBase::getMethod
type: function
doc:
<comment>Description:</comment>
  Devuelve el método de evento utilizado

<comment>Return:</comment>
  <info>string</info>  String que representa el método de evento utilizado (backend).

<comment>See Also:</comment>
   * EventBase::getFeatures


id: EventBase::getTimeOfDayCached
type: function
doc:
<comment>Description:</comment>
  Devuelve el tiempo del evento base actual
  
  En caso de éxito devuelve el tiempo actual(como el devuelto por <return>gettimeofday()</return> ), mirando el valor
  en la caché dentro de  base si es posible, y llamando a <return>gettimeofday()</return> o <return>clock_gettime()</return> si no hay
  tiempo disponible en la caché.

<comment>Return:</comment>
  <info>float</info>  Devuelve el actual tiempo de event base . En caso de error devuelve <info>null</info>.


id: EventBase::gotExit
type: function
doc:
<comment>Description:</comment>
  Verifica si se ha indicado al bucle del evento de salir
  
  Verifica si se ha indicado al bucle del evento de salir con el método EventBase::exit .

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> si se ha indicado al bucle de salir con el método EventBase::exit . <info>false</info> en
        caso contrario.

<comment>See Also:</comment>
   * EventBase::exit
   * EventBase::stop
   * EventBase::gotStop


id: EventBase::gotStop
type: function
doc:
<comment>Description:</comment>
  Verifica si se ha indicado al bucle del evento de salir
  
  Verifica si se ha indicado al bucle del evento de salir con EventBase::stop .

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> si se indicó al bucle del evento de salir con EventBase::stop . <info>false</info> en caso
        contrario .

<comment>See Also:</comment>
   * EventBase::exit
   * EventBase::stop
   * EventBase::gotExit


id: EventBase::loop
type: function
doc:
<comment>Description:</comment>
  Despacha eventos pendientes
  
  Espara a que los eventos estén activos y ejecuta sus llamadas de retorno.
  
   Do NOT destroy the <class>EventBase</class> object as long as resources of the associated <return>Event</return> objects are not
  released. Otherwise, it will lead to unpredictable results!
  
  Do NOT destroy the <class>EventBase</class> object as long as resources of the associated <return>Event</return> objects are not
  released. Otherwise, it will lead to unpredictable results!

<comment>Param:</comment>
  <info>int</info>  <strong>$flags</strong>  Flags opcionales. Puede ser una de las constantes <info>EventBase::LOOP_*</info>. Véase constantes
               EventBase .

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * EventBase::dispatch


id: EventBase::priorityInit
type: function
doc:
<comment>Description:</comment>
  Define el número de prioridades por evento base
  
  Define el número de prioridades por evento base.

<comment>Param:</comment>
  <info>int</info>  <strong>$n_priorities</strong>  El número de prioridades por evento base.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * Event::setPriority


id: EventBase::reInit
type: function
doc:
<comment>Description:</comment>
  Reinicializa el evento base (después de un 'fork')
  
  Reinicializa el evento base. Debe ser llamado después de un 'fork'.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.


id: EventBase::stop
type: function
doc:
<comment>Description:</comment>
  Solicita a event_base que detenga la emisión de  eventos
  
  Solicita a event_base que detenga la emisión de  eventos

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * EventBase::exit
   * EventBase::gotStop


id: EventBuffer
type: class
doc:
<comment>Description:</comment>
  <class>EventBuffer</class> represents Libevent's "evbuffer", an utility functionality for buffered I/O.
  
  Event buffers are meant to be generally useful for doing the "buffer" part of buffered network
  I/O.


id: EventBuffer::EOL_ANY
type: constant
doc:
<comment>Description:</comment>
  The end of line is any sequence of any number of carriage return and linefeed characters. This
  format is not very useful; it exists mainly for backward compatibility.


id: EventBuffer::EOL_CRLF
type: constant
doc:
<comment>Description:</comment>
  The end of the line is an optional carriage return, followed by a linefeed. (In other words, it is
  either a <return>"\r\n"</return> or a <return>"\n"</return> .) This format is useful in parsing text-based Internet protocols, since
  the standards generally prescribe a <return>"\r\n"</return> line-terminator, but nonconformant clients sometimes
  say just <return>"\n"</return> .


id: EventBuffer::EOL_CRLF_STRICT
type: constant
doc:
<comment>Description:</comment>
  The end of a line is a single carriage return, followed by a single linefeed. (This is also known
  as <return>"\r\n"</return> . The ASCII values are <info>0x0D</info> <info>0x0A</info> ).


id: EventBuffer::EOL_LF
type: constant
doc:
<comment>Description:</comment>
  The end of a line is a single linefeed character. (This is also known as <return>"\n"</return> . It is ASCII value
  is <info>0x0A</info> .)


id: EventBuffer::PTR_ADD
type: constant
doc:
<comment>Description:</comment>
  The same as <info>EventBuffer::PTR_SET</info> , except this flag causes EventBuffer::setPosition method to move
  position forward up to the specified number of bytes(instead of setting absolute position).


id: EventBuffer::PTR_SET
type: constant
doc:
<comment>Description:</comment>
  Flag used as argument of EventBuffer::setPosition method. If this flag specified, the position
  pointer is moved to an absolute position within the buffer.


id: EventBuffer::__construct
type: function
doc:
<comment>Description:</comment>
  Construye el objeto EventBuffer
  
  Construye el objeto EventBuffer

<comment>Return:</comment>
  <info>unknown</info>  Devuelve el objeto EventBuffer.


id: EventBuffer::add
type: function
doc:
<comment>Description:</comment>
  Añade datos al final de un buffer de eventos
  
  Añade datos al final de un buffer de eventos.

<comment>Param:</comment>
  <info>string</info>  <strong>$data</strong>  String que se añadirá al final del buffer.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito. De otro modo, devuelve <info>false</info>.

<comment>See Also:</comment>
   * EventBuffer::addBuffer


id: EventBuffer::addBuffer
type: function
doc:
<comment>Description:</comment>
  Mueve todos los datos de un buffer a la instancia actual de EventBuffer
  
  Mueve todos los datos del buffer indicado en el parámetro <strong>$buf</strong> al final del actual <class>EventBuffer</class> .
  Es un movimiento de datos destructivo. Los datos de un buffer se mueven al otro  buffer. Sin
  embargo, no se realizan copias innecesarias.

<comment>Param:</comment>
  <info>EventBuffer</info>  <strong>$buf</strong>  El objeto EventBuffer.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito. De otro modo, devuelve <info>false</info>.

<comment>See Also:</comment>
   * EventBuffer::add


id: EventBuffer::appendFrom
type: function
doc:
<comment>Description:</comment>
  Mueve el número de bytes especificados desde un buffer fuente, al
    final del buffer actual
  
  Mueve el número de bytes especificados desde un buffer fuente, al final del buffer actual. Si hay
  menos bytes, mueve todos los bytes  disponibles del buffer fuente.

<comment>Param:</comment>
  <info>EventBuffer</info>  <strong>$buf</strong>  Buffer fuente.
  <info>int</info>          <strong>$len</strong>  

<comment>Return:</comment>
  <info>int</info>  Devuelve el número de bytes leídos.

<comment>See Also:</comment>
   * EventBuffer::copyout
   * EventBuffer::drain
   * EventBuffer::pullup
   * EventBuffer::readLine
   * EventBuffer::read


id: EventBuffer::copyout
type: function
doc:
<comment>Description:</comment>
  Copia un número específico de bytes del principio del buffer
  
  Funciona del mismo modo que EventBuffer::read , pero no vacía ningún dato del buffer. p.ej. copia
  los primeros  <strong>$max_bytes</strong>  bytes del principio del buffer en <strong>$data</strong> . Si hay menos de <strong>$max_bytes</strong>
  bytes disponibles, la función copia todos los bytes que haya.

<comment>Param:</comment>
  <info>string</info>  <strong>$data</strong>       String de salida.
  <info>int</info>     <strong>$max_bytes</strong>  El número de bytes a copiar.

<comment>Return:</comment>
  <info>int</info>  Devuelve el número de bytes copiados, o <info>-1</info> en caso de error.

<comment>See Also:</comment>
   * EventBuffer::read
   * EventBuffer::appendFrom


id: EventBuffer::drain
type: function
doc:
<comment>Description:</comment>
  Elimina un número específico de bytes del principio del buffer
    sin copiarlo a ningún lugar
  
  Funciona del mismo modo que  EventBuffer::read , excepto que no copia los datos: únicamente los
  elimina del principio del buffer.

<comment>Param:</comment>
  <info>int</info>  <strong>$len</strong>  El número de bytes a eliminar del buffer.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito. Devuelve <info>false</info> en el resto de casos.

<comment>See Also:</comment>
   * EventBuffer::read
   * EventBuffer::appendFrom


id: EventBuffer::enableLocking
type: function
doc:
<comment>Description:</comment>
  Activa el bloqueo de <class>EventBuffer</class> de tal forma que puede utilizarse de forma segura por múltiples
  líneas de ejecución a la vez. Cuando  se activa el bloqueo, éste se mantiene cuando se invoquen
  las llamadas de vuelta. Esto puede dar lugar a un punto muerto (o 'deadlock') si no se es
  cuidadoso. Planificar de forma adecuada!

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * Evbuffers and Thread-safety


id: EventBuffer::expand
type: function
doc:
<comment>Description:</comment>
  Reserva espacio en el buffer
  
  Modifica el último bloque de memoria del buffer, o añade un nuevo bloque, de modo que el buffer es
  ahora suficientemente grande para contener <strong>$len</strong> bytes sin añadir espacios suplementarios.

<comment>Param:</comment>
  <info>int</info>  <strong>$len</strong>  El número de bytes a reservar del buffer

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito. Devuelve <info>false</info> en el resto de casos.


id: EventBuffer::freeze
type: function
doc:
<comment>Description:</comment>
  Evita que las llamadas puedan modificar un buffer de eventos
  
  Evita que las llamadas puedan modificar un buffer de eventos

<comment>Param:</comment>
  <info>bool</info>  <strong>$at_front</strong>  Permite desactivar cambios en el principio o final del buffer.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito. Devuelve <info>false</info> en caso de error.

<comment>See Also:</comment>
   * EventBuffer::unfreeze


id: EventBuffer::lock
type: function
doc:
<comment>Description:</comment>
  Bloquea un buffer
  
  Bloquea un buffer. Puede ser utilizado junto con EventBuffer::unlock para que un conjunto de
  operaciones sean atómicas, p.e. thread-safe. Notar que no se necesita bloquear buffers para
  operaciones individuales . Cuando el bloqueo está activo (ver EventBuffer::enableLocking ), las
  operaciones individuales en buffers de eventos ya son atómicas.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * EventBuffer::unlock


id: EventBuffer::prepend
type: function
doc:
<comment>Description:</comment>
  Prepend data to the front of the buffer
  
  Prepend data to the front of the buffer.

<comment>Param:</comment>
  <info>string</info>  <strong>$data</strong>  String to be prepended to the front of the buffer.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * EventBuffer::prependBuffer
   * EventBuffer::add
   * EventBuffer::addBuffer


id: EventBuffer::prependBuffer
type: function
doc:
<comment>Description:</comment>
  Moves all data from source buffer to the front of current buffer
  
  Behaves as EventBuffer::addBuffer , except that it moves data to the front of the buffer.

<comment>Param:</comment>
  <info>EventBuffer</info>  <strong>$buf</strong>  Source buffer.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * EventBuffer::add
   * EventBuffer::addBuffer
   * EventBuffer::prepend


id: EventBuffer::pullup
type: function
doc:
<comment>Description:</comment>
  Linearizes data within buffer
    and returns it's contents as a string
  
  "Linearizes" the first <strong>$size</strong> bytes of the buffer, copying or moving them as needed to ensure that
  they are all contiguous and occupying the same chunk of memory. If size is negative, the function
  linearizes the entire buffer.
  
  Calling EventBuffer::pullup with a large size can be quite slow, since it potentially needs to
  copy the entire buffer's contents.

<comment>Param:</comment>
  <info>int</info>  <strong>$size</strong>  The number of bytes required to be contiguous within the buffer.

<comment>Return:</comment>
  <info>string</info>  If <strong>$size</strong> is greater than the number of bytes in the buffer, the function returns <info>null</info>.
          Otherwise, EventBuffer::pullup returns string.

<comment>See Also:</comment>
   * EventBuffer::copyout
   * EventBuffer::drain
   * EventBuffer::read
   * EventBuffer::readLine
   * EventBuffer::appendFrom


id: EventBuffer::read
type: function
doc:
<comment>Description:</comment>
  Read data from an evbuffer and drain the bytes read
  
  Read the first <strong>$max_bytes</strong> from the buffer and drain the bytes read. If more <strong>$max_bytes</strong> are
  requested than are available in the buffer, it only extracts as many bytes as available.

<comment>Param:</comment>
  <info>int</info>  <strong>$max_bytes</strong>  Maxmimum number of bytes to read from the buffer.

<comment>Return:</comment>
  <info>string</info>  Returns string read, or <info>false</info> on failure.

<comment>See Also:</comment>
   * EventBuffer::copyout
   * EventBuffer::drain
   * EventBuffer::pullup
   * EventBuffer::readLine
   * EventBuffer::appendFrom


id: EventBuffer::readFrom
type: function
doc:
<comment>Description:</comment>
  Read data from a file onto the end of the buffer
  
  Read data from the file specified by <strong>$fd</strong> onto the end of the buffer.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$fd</strong>       Socket resource, stream, or numeric file descriptor.
  <info>int</info>    <strong>$howmuch</strong>  Maxmimum number of bytes to read.

<comment>Return:</comment>
  <info>int</info>  Returns the number of bytes read, or <info>false</info> on failure.

<comment>See Also:</comment>
   * EventBuffer::copyout
   * EventBuffer::drain
   * EventBuffer::pullup
   * EventBuffer::readLine
   * EventBuffer::appendFrom


id: EventBuffer::readLine
type: function
doc:
<comment>Description:</comment>
  Extracts a line from the front of the buffer
  
  Extracts a line from the front of the buffer and returns it in a newly allocated string. If there
  is not a whole line to read, the function returns <info>null</info>. The line terminator is not included in the
  copied string.

<comment>Param:</comment>
  <info>int</info>  <strong>$eol_style</strong>  One of EventBuffer:EOL_* constants .

<comment>Return:</comment>
  <info>string</info>  On success returns the line read from the buffer, otherwise <info>null</info>.

<comment>See Also:</comment>
   * EventBuffer::copyout
   * EventBuffer::drain
   * EventBuffer::pullup
   * EventBuffer::read
   * EventBuffer::appendFrom


id: EventBuffer::search
type: function
doc:
<comment>Description:</comment>
  Scans the buffer for an occurrence of a string
  
  Scans the buffer for an occurrence of the string <strong>$what</strong> . It returns numeric position of the
  string, or <info>false</info> if the string was not found.
  
  If the <strong>$start</strong> argument is provided, it points to the position at which the search should begin;
  otherwise, the search is performed from the start of the string. If <strong>$end</strong> argument provided, the
  search is performed between start and end buffer positions.

<comment>Param:</comment>
  <info>string</info>  <strong>$what</strong>   String to search.
  <info>int</info>     <strong>$start</strong>  Start search position.
  <info>int</info>     <strong>$end</strong>    End search position.

<comment>Return:</comment>
  <info>mixed</info>  Returns numeric position of the first occurrence of the string in the buffer, or <info>false</info> if
         string is not found.
         
         Esta función puede
         devolver el valor booleano <info>false</info>, pero también puede devolver un valor no booleano que se
         evalúa como <info>false</info>. Por favor lea la sección sobre Booleanos para más
         información. Use el operador
         === para comprobar el valor devuelto por esta
         función.

<comment>See Also:</comment>
   * EventBuffer::searchEol


id: EventBuffer::searchEol
type: function
doc:
<comment>Description:</comment>
  Scans the buffer for an occurrence of an end of line
  
  Scans the buffer for an occurrence of an end of line specified by <strong>$eol_style</strong> parameter . It
  returns numeric position of the string, or <info>false</info> if the string was not found.
  
  If the <strong>$start</strong> argument is provided, it represents the position at which the search should begin;
  otherwise, the search is performed from the start of the string. If <strong>$end</strong> argument provided, the
  search is performed between start and end buffer positions.

<comment>Param:</comment>
  <info>int</info>  <strong>$start</strong>      Start search position.
  <info>int</info>  <strong>$eol_style</strong>  One of EventBuffer:EOL_* constants .

<comment>Return:</comment>
  <info>mixed</info>  Returns numeric position of the first occurrence of end-of-line symbol in the buffer, or
         <info>false</info> if not found.
         
         Esta función puede
         devolver el valor booleano <info>false</info>, pero también puede devolver un valor no booleano que se
         evalúa como <info>false</info>. Por favor lea la sección sobre Booleanos para más
         información. Use el operador
         === para comprobar el valor devuelto por esta
         función.

<comment>See Also:</comment>
   * EventBuffer::search


id: EventBuffer::substr
type: function
doc:
<comment>Description:</comment>
  Substracts a portion of the buffer data
  
  Substracts up to <strong>$length</strong> bytes of the buffer data beginning at <strong>$start</strong> position.

<comment>Param:</comment>
  <info>int</info>  <strong>$start</strong>   The start position of data to be substracted.
  <info>int</info>  <strong>$length</strong>  Maximum number of bytes to substract.

<comment>Return:</comment>
  <info>string</info>  Returns the data substracted as a <info>string</info> on success, or <info>false</info> on failure.

<comment>See Also:</comment>
   * EventBuffer::read


id: EventBuffer::unfreeze
type: function
doc:
<comment>Description:</comment>
  Re-enable calls that modify an event buffer
  
  Re-enable calls that modify an event buffer.

<comment>Param:</comment>
  <info>bool</info>  <strong>$at_front</strong>  Whether to enable events at the front or at the end of the buffer.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * EventBuffer::freeze


id: EventBuffer::unlock
type: function
doc:
<comment>Description:</comment>
  Releases lock acquired by EventBuffer::lock
  
  Releases lock acquired by EventBuffer::lock .

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * EventBuffer::lock


id: EventBuffer::write
type: function
doc:
<comment>Description:</comment>
  Write contents of the buffer to a file or socket
  
  Write contents of the buffer to a file descriptor. The buffer will be drained after the bytes have
  been successfully written.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$fd</strong>       Socket resource, stream or numeric file descriptor associated normally associated
                   with a socket.
  <info>int</info>    <strong>$howmuch</strong>  The maximum number of bytes to write.

<comment>Return:</comment>
  <info>int</info>  Returns the number of bytes written, or <info>false</info> on error.

<comment>See Also:</comment>
   * EventBuffer::read


id: EventBufferEvent
type: class
doc:
<comment>Description:</comment>
  Represents Libevent's buffer event.
  
  Usually an application wants to perform some amount of data buffering in addition to just
  responding to events. When we want to write data, for example, the usual pattern looks like:
  
  Decide that we want to write some data to a connection; put that data in a buffer.
  
  Wait for the connection to become writable
  
  Write as much of the data as we can
  
  Remember how much we wrote, and if we still have more data to write, wait for the connection to
  become writable again.
  
  This buffered I/O pattern is common enough that Libevent provides a generic mechanism for it. A
  "buffer event" consists of an underlying transport (like a socket), a read buffer, and a write
  buffer. Instead of regular events, which give callbacks when the underlying transport is ready to
  be read or written, a buffer event invokes its user-supplied callbacks when it has read or written
  enough data.


id: EventBufferEvent::ERROR
type: constant
doc:
<comment>Description:</comment>
  An error occurred during a bufferevent operation. For more information on what the error was, call
  EventUtil::getLastSocketErrno and/or EventUtil::getLastSocketError .


id: EventBufferEvent::OPT_CLOSE_ON_FREE
type: constant
doc:
<comment>Description:</comment>
  When the buffer event is freed, close the underlying transport. This will close an underlying
  socket, free an underlying buffer event, etc.


id: EventBufferEvent::OPT_DEFER_CALLBACKS
type: constant
doc:
<comment>Description:</comment>
  When this flag is set, the bufferevent defers all of its callbacks. See Fast portable non-blocking
  network programming with Libevent, Deferred callbacks .


id: EventBufferEvent::OPT_THREADSAFE
type: constant
doc:
<comment>Description:</comment>
  Automatically allocate locks for the bufferevent, so that it’s safe to use from multiple threads.


id: EventBufferEvent::OPT_UNLOCK_CALLBACKS
type: constant
doc:
<comment>Description:</comment>
  By default, when the bufferevent is set up to be threadsafe, the buffer event’s locks are held
  whenever the any user-provided callback is invoked. Setting this option makes Libevent release the
  buffer event’s lock when it’s invoking the callbacks.


id: EventBufferEvent::READING
type: constant
doc:
<comment>Description:</comment>
  An event occurred during a read operation on the bufferevent. See the other flags for which event
  it was.


id: EventBufferEvent::WRITING
type: constant
doc:
<comment>Description:</comment>
  An event occurred during a write operation on the bufferevent. See the other flags for which event
  it was.


id: EventBufferEvent::__construct
type: function
doc:
<comment>Description:</comment>
  Constructs EventBufferEvent object
  
  Create a buffer event on a socket, stream or a file descriptor. Passing <info>null</info> to <strong>$socket</strong> means that
  the socket should be created later, e.g. by means of EventBufferEvent::connect .

<comment>Param:</comment>
  <info>EventBase</info>  <strong>$base</strong>     Event base that should be associated with the new buffer event.
  <info>mixed</info>      <strong>$socket</strong>   May be created as a stream(not necessarily by means of <return>sockets</return> extension)
  <info>int</info>        <strong>$options</strong>  One of EventBufferEvent::OPT_* constants , or <info>0</info> .
  <info>callable</info>   <strong>$readcb</strong>   Read event callback. See About buffer event callbacks .
  <info>callable</info>   <strong>$writecb</strong>  Write event callback. See About buffer event callbacks .
  <info>callable</info>   <strong>$eventcb</strong>  Status-change event callback. See About buffer event callbacks .
  <info>mixed</info>      <strong>$arg</strong>      A variable that will be passed to all the callbacks.

<comment>Return:</comment>
  <info>unknown</info>  Returns buffer event resource optionally associated with socket resource. */

<comment>See Also:</comment>
   * EventBufferEvent::sslFilter
   * EventBufferEvent::sslSocket


id: EventBufferEvent::close
type: function
doc:
<comment>Description:</comment>
  Closes file descriptor associated with the current buffer event
  
  Closes file descriptor associated with the current buffer event.
  
  This method may be used in cases when the <info>EventBufferEvent::OPT_CLOSE_ON_FREE</info> option is not
  appropriate.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: EventBufferEvent::connect
type: function
doc:
<comment>Description:</comment>
  Connect buffer event's file descriptor to given address or
    UNIX socket
  
  Connect buffer event's file descriptor to given address(optionally with port), or a UNIX domain
  socket.
  
  If socket is not assigned to the buffer event, this function allocates a new socket and makes it
  non-blocking internally.
  
  To resolve DNS names(asyncronously), use EventBufferEvent::connectHost method.

<comment>Param:</comment>
  <info>string</info>  <strong>$addr</strong>  Should contain an IP address with optional port number, or a path to UNIX domain
                 socket. Recognized formats are:
                  Note, <return>'unix:'</return> prefix is currently not case sensitive.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * EventBufferEvent::connectHost


id: EventBufferEvent::connectHost
type: function
doc:
<comment>Description:</comment>
  Connects to a hostname with optionally asyncronous DNS resolving
  
  Resolves the DNS name hostname, looking for addresses of type <strong>$family</strong> ( <return>EventUtil::AF_*</return>
  constants). If the name resolution fails, it invokes the event callback with an error event. If it
  succeeds, it launches a connection attempt just as EventBufferEvent::connect would.
  
  <strong>$dns_base</strong> is optional. May be <info>null</info>, or an object created with EventDnsBase::__construct . For
  asyncronous hostname resolving pass a valid event dns base resource. Otherwise the hostname
  resolving will block.
  
  <class>EventDnsBase</class> is available only if <return>Event</return> configured --with-event-extra ( <return>event_extra</return> library,
  libevent protocol-specific functionality support including HTTP, DNS, and RPC ).
  
  EventBufferEvent::connectHost requires <return>libevent-2.0.3-alpha</return> or greater.

<comment>Param:</comment>
  <info>EventDnsBase</info>  <strong>$dns_base</strong>  Object of <class>EventDnsBase</class> in case if DNS is to be resolved asyncronously.
                           Otherwise <info>null</info>.
  <info>string</info>        <strong>$hostname</strong>  Hostname to connect to. Recognized formats are:
                           
  <info>int</info>           <strong>$port</strong>      Port number
  <info>int</info>           <strong>$family</strong>    Address family. <info>EventUtil::AF_UNSPEC</info> , <info>EventUtil::AF_INET</info> , or
                           <info>EventUtil::AF_INET6</info> . See EventUtil constants .

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * EventBufferEvent::connect


id: EventBufferEvent::createPair
type: function
doc:
<comment>Description:</comment>
  Creates two buffer events connected to each other
  
  Returns array of two <class>EventBufferEvent</class> objects connected to each other. All the usual options are
  supported, except for <info>EventBufferEvent::OPT_CLOSE_ON_FREE</info> , which has no effect, and
  <info>EventBufferEvent::OPT_DEFER_CALLBACKS</info> , which is always on.

<comment>Param:</comment>
  <info>EventBase</info>  <strong>$base</strong>     Associated event base
  <info>int</info>        <strong>$options</strong>  EventBufferEvent::OPT_* constants combined with bitwise <return>OR</return> operator.

<comment>Return:</comment>
  <info>array</info>  Returns array of two <class>EventBufferEvent</class> objects connected to each other.


id: EventBufferEvent::disable
type: function
doc:
<comment>Description:</comment>
  Disable events read, write, or both on a buffer event
  
  Disable events <info>Event::READ</info> , <info>Event::WRITE</info> , or <info>Event::READ</info> <return>|</return> <info>Event::WRITE</info> on a buffer event.

<comment>Param:</comment>
  <info>int</info>  <strong>$events</strong>  

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * EventBufferEvent::enable


id: EventBufferEvent::enable
type: function
doc:
<comment>Description:</comment>
  Enable events read, write, or both on a buffer event
  
  Enable events <info>Event::READ</info> , <info>Event::WRITE</info> , or <info>Event::READ</info> <return>|</return> <info>Event::WRITE</info> on a buffer event.

<comment>Param:</comment>
  <info>int</info>  <strong>$events</strong>  <info>Event::READ</info> , <info>Event::WRITE</info> , or <info>Event::READ</info> <return>|</return> <info>Event::WRITE</info> on a buffer event.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * EventBufferEvent::disable


id: EventBufferEvent::free
type: function
doc:
<comment>Description:</comment>
  Free a buffer event
  
  Free resources allocated by buffer event.
  
  Usually there is no need to call this method, since normally it is done within internal object
  destructors. However, sometimes we have a long-time script allocating lots of instances, or a
  script with a heavy memory usage, where we need to free resources as soon as possible. In such
  cases EventBufferEvent::free may be used to protect the script against running up to the
  <return>memory_limit</return> .

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: EventBufferEvent::getDnsErrorString
type: function
doc:
<comment>Description:</comment>
  Returns string describing the last failed DNS lookup attempt
  
  Returns string describing the last failed DNS lookup attempt made by EventBufferEvent::connectHost
  , or an empty string, if there is no DNS error detected.

<comment>Return:</comment>
  <info>string</info>  Returns a string describing DNS lookup error, or an empty string for no error.

<comment>See Also:</comment>
   * EventBufferEvent::connectHost


id: EventBufferEvent::getEnabled
type: function
doc:
<comment>Description:</comment>
  Returns bitmask of events currently enabled on the buffer event
  
  Returns bitmask of events currently enabled on the buffer event

<comment>Return:</comment>
  <info>int</info>  Returns integer representing a bitmask of events currently enabled on the buffer event

<comment>See Also:</comment>
   * EventBufferEvent::enable
   * EventBufferEvent::disable


id: EventBufferEvent::getInput
type: function
doc:
<comment>Description:</comment>
  Returns underlying input buffer associated with current buffer
    event
  
  Returns underlying input buffer associated with current buffer event. An input buffer is a storage
  for data to read.
  
  Note, there is also <return>input</return> property of <class>EventBufferEvent</class> class.

<comment>Return:</comment>
  <info>EventBuffer</info>  Returns instance of <class>EventBuffer</class> input buffer associated with current buffer event.

<comment>See Also:</comment>
   * EventBufferEvent::getOutput


id: EventBufferEvent::getOutput
type: function
doc:
<comment>Description:</comment>
  Returns underlying output buffer associated with current buffer
    event
  
  Returns underlying output buffer associated with current buffer event. An output buffer is a
  storage for data to be written.
  
  Note, there is also <return>output</return> property of <class>EventBufferEvent</class> class.

<comment>Return:</comment>
  <info>EventBuffer</info>  Returns instance of <class>EventBuffer</class> output buffer associated with current buffer event.

<comment>See Also:</comment>
   * EventBufferEvent::getInput


id: EventBufferEvent::read
type: function
doc:
<comment>Description:</comment>
  Read buffer's data
  
  Removes up to <strong>$size</strong> bytes from the input buffer. Returns a string of data read from the input
  buffer.

<comment>Param:</comment>
  <info>int</info>  <strong>$size</strong>  Maximum number of bytes to read

<comment>Return:</comment>
  <info>string</info>  Returns string of data read from the input buffer.

<comment>See Also:</comment>
   * EventBufferEvent::readBuffer


id: EventBufferEvent::readBuffer
type: function
doc:
<comment>Description:</comment>
  Drains the entire contents of the input buffer and places them into buf
  
  Drains the entire contents of the input buffer and places them into <strong>$buf</strong> .

<comment>Param:</comment>
  <info>EventBuffer</info>  <strong>$buf</strong>  Target buffer

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * EventBufferEvent::read


id: EventBufferEvent::setCallbacks
type: function
doc:
<comment>Description:</comment>
  Assigns read, write and event(status) callbacks
  
  Assigns read, write and event(status) callbacks.

<comment>Param:</comment>
  <info>callable</info>  <strong>$readcb</strong>   Read event callback. See About buffer event callbacks .
  <info>callable</info>  <strong>$writecb</strong>  Write event callback. See About buffer event callbacks .
  <info>callable</info>  <strong>$eventcb</strong>  Status-change event callback. See About buffer event callbacks .
  <info>mixed</info>     <strong>$arg</strong>      A variable that will be passed to all the callbacks.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * EventBufferEvent::__construct


id: EventBufferEvent::setPriority
type: function
doc:
<comment>Description:</comment>
  Assign a priority to a bufferevent
  
  Assign a priority to a bufferevent
  
  Only supported for socket buffer events

<comment>Param:</comment>
  <info>int</info>  <strong>$priority</strong>  Priority value.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.


id: EventBufferEvent::setTimeouts
type: function
doc:
<comment>Description:</comment>
  Set the read and write timeout for a buffer event
  
  Set the read and write timeout for a buffer event

<comment>Param:</comment>
  <info>float</info>  <strong>$timeout_read</strong>   Read timeout
  <info>float</info>  <strong>$timeout_write</strong>  Write timeout

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.


id: EventBufferEvent::setWatermark
type: function
doc:
<comment>Description:</comment>
  Adjusts read and/or write watermarks
  
  Adjusts the read watermarks, the write watermarks , or both, of a single buffer event.
  
  A buffer event watermark is an edge, a value specifying number of bytes to be read or written
  before callback is invoked. By default every read/write event triggers a callback invokation. See
  Fast portable non-blocking network programming with Libevent: Callbacks and watermarks

<comment>Param:</comment>
  <info>int</info>  <strong>$events</strong>    Bitmask of <info>Event::READ</info> , <info>Event::WRITE</info> , or both.
  <info>int</info>  <strong>$lowmark</strong>   Minimum watermark value.
  <info>int</info>  <strong>$highmark</strong>  Maximum watermark value. <info>0</info> means "unlimited".

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: EventBufferEvent::sslError
type: function
doc:
<comment>Description:</comment>
  Returns most recent OpenSSL error reported on the buffer event
  
  Returns most recent OpenSSL error reported on the buffer event.
  
  This function is available only if <return>Event</return> is compiled with OpenSSL support.

<comment>Return:</comment>
  <info>string</info>  Returns OpenSSL error string reported on the buffer event, or <info>false</info>, if there is no more
          error to return.

<comment>See Also:</comment>
   * EventBufferEvent::sslRenegotiate


id: EventBufferEvent::sslFilter
type: function
doc:
<comment>Description:</comment>
  Crea un nuevo evento búfer SSL búfer para enviar sus datos a otro evento búfer
  
  Crea un nuevo evento búfer SSL búfer para enviar sus datos a otro evento búfer
  
  Esta función está disponible solo si <return>Event</return> es compilado con suporte para OpenSSL.

<comment>Param:</comment>
  <info>EventBase</info>         <strong>$base</strong>        Evento base asociado.
  <info>EventBufferEvent</info>  <strong>$underlying</strong>  El socket evento búfer para usar en esta SSL.
  <info>EventSslContext</info>   <strong>$ctx</strong>         Objecto de la clase <class>EventSslContext</class>.
  <info>int</info>               <strong>$state</strong>       El estado actual de la conexión SSL: <info>EventBufferEvent::SSL_OPEN</info> ,
                                 <info>EventBufferEvent::SSL_ACCEPTING</info> o <info>EventBufferEvent::SSL_CONNECTING</info>
                                 .
  <info>int</info>               <strong>$options</strong>     Una o más opciones del evento búfer.

<comment>Return:</comment>
  <info>EventBufferEvent</info>  Devuelve un nuevo objecto SSL <class>EventBufferEvent</class>.

<comment>See Also:</comment>
   * EventBufferEvent::sslSocket


id: EventBufferEvent::sslGetCipherInfo
type: function
doc:
<comment>Description:</comment>
  Returns a textual description of the cipher
  
  Retrieves description of the current cipher by means of the <return>SSL_CIPHER_description</return> SSL API
  function (see SSL_CIPHER_get_name(3) man page).
  
  This function is available only if <return>Event</return> is compiled with OpenSSL support.

<comment>Return:</comment>
  <info>string</info>  Returns a textual description of the cipher on success, or <info>false</info> on error.


id: EventBufferEvent::sslGetCipherName
type: function
doc:
<comment>Description:</comment>
  Returns the current cipher name of the SSL connection
  
  Retrieves name of cipher used by current SSL connection.
  
  This function is available only if <return>Event</return> is compiled with OpenSSL support.

<comment>Return:</comment>
  <info>string</info>  Returns the current cipher name of the SSL connection, or <info>false</info> on error.


id: EventBufferEvent::sslGetCipherVersion
type: function
doc:
<comment>Description:</comment>
  Returns version of cipher used by current SSL connection
  
  Retrieves version of cipher used by current SSL connection.
  
  This function is available only if <return>Event</return> is compiled with OpenSSL support.

<comment>Return:</comment>
  <info>string</info>  Returns the current cipher version of the SSL connection, or <info>false</info> on error.


id: EventBufferEvent::sslGetProtocol
type: function
doc:
<comment>Description:</comment>
  Returns the name of the protocol used for current SSL connection
  
  Returns the name of the protocol used for current SSL connection.
  
  This function is available only if <return>Event</return> is compiled with OpenSSL support.

<comment>Return:</comment>
  <info>string</info>  Returns the name of the protocol used for current SSL connection.


id: EventBufferEvent::sslRenegotiate
type: function
doc:
<comment>Description:</comment>
  Tells a bufferevent to begin SSL renegotiation
  
  Tells a bufferevent to begin SSL renegotiation.
  
  Calling this function tells the SSL to renegotiate, and the buffer event to invoke appropriate
  callbacks. This is an advanced topic; this should be generally avoided unless one really knows
  what he/she does, especially since many SSL versions have had known security issues related to
  renegotiation.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: EventBufferEvent::sslSocket
type: function
doc:
<comment>Description:</comment>
  Creates a new SSL buffer event to send its data over an SSL on a socket
  
  Creates a new SSL buffer event to send its data over an SSL on a socket.

<comment>Param:</comment>
  <info>EventBase</info>        <strong>$base</strong>     Associated event base.
  <info>mixed</info>            <strong>$socket</strong>   Socket to use for this SSL. Can be stream or socket resource, numeric
                             file descriptor, or <info>null</info>. If <strong>$socket</strong> is <info>null</info>, it is assumed that the
                             file descriptor for the socket will be assigned later, for instance, by
                             means of EventBufferEvent::connectHost method.
  <info>EventSslContext</info>  <strong>$ctx</strong>      Object of <class>EventSslContext</class> class.
  <info>int</info>              <strong>$state</strong>    The current state of SSL connection: <info>EventBufferEvent::SSL_OPEN</info> ,
                             <info>EventBufferEvent::SSL_ACCEPTING</info> or <info>EventBufferEvent::SSL_CONNECTING</info> .
  <info>int</info>              <strong>$options</strong>  The buffer event options.

<comment>Return:</comment>
  <info>EventBufferEvent</info>  Returns <class>EventBufferEvent</class> object.

<comment>See Also:</comment>
   * EventBufferEvent::sslFilter


id: EventBufferEvent::write
type: function
doc:
<comment>Description:</comment>
  Adds data to a buffer event's output buffer
  
  Adds <strong>$data</strong> to a buffer event's output buffer

<comment>Param:</comment>
  <info>string</info>  <strong>$data</strong>  Data to be added to the underlying buffer.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * EventBufferEvent::writeBuffer


id: EventBufferEvent::writeBuffer
type: function
doc:
<comment>Description:</comment>
  Adds contents of the entire buffer to a buffer event's output
    buffer
  
  Adds contents of the entire buffer to a buffer event's output buffer

<comment>Param:</comment>
  <info>EventBuffer</info>  <strong>$buf</strong>  Source <class>EventBuffer</class> object.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * EventBufferEvent::write


id: EventConfig
type: class
doc:
<comment>Description:</comment>
  Represents configuration structure which could be used in construction of the <class>EventBase</class> .


id: EventConfig::FEATURE_FDS
type: constant
doc:
<comment>Description:</comment>
  Requires a backend method that can support arbitrary file descriptor types, and not just sockets.


id: EventConfig::FEATURE_O1
type: constant
doc:
<comment>Description:</comment>
  Requires a backend method where adding or deleting a single event, or having a single event become
  active, is an O(1) operation.


id: EventConfig::__construct
type: function
doc:
<comment>Description:</comment>
  Constructs EventConfig object
  
  Constructs EventConfig object which could be passed to EventBase::__construct constructor.

<comment>Return:</comment>
  <info>unknown</info>  Returns <class>EventConfig</class> object.

<comment>See Also:</comment>
   * EventBase::__construct


id: EventConfig::avoidMethod
type: function
doc:
<comment>Description:</comment>
  Tells libevent to avoid specific event method
  
  Tells libevent to avoid specific event method(backend). See Creating an event base .

<comment>Param:</comment>
  <info>string</info>  <strong>$method</strong>  The backend method to avoid. See EventConfig constants .

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * EventBase::__construct


id: EventConfig::requireFeatures
type: function
doc:
<comment>Description:</comment>
  Enters a required event method feature that the application demands
  
  Enters a required event method feature that the application demands

<comment>Param:</comment>
  <info>int</info>  <strong>$feature</strong>  Bitmask of required features. See <return>EventConfig::FEATURE_*</return> constants

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * EventBase::getFeatures


id: EventConfig::setFlags
type: function
doc:
<comment>Description:</comment>
  Sets one or more flags to configure the eventual EventBase will be initialized
  
  Sets one or more flags to configure what parts of  the eventual EventBase will be initialized, and
  how they'll work.

<comment>Param:</comment>
  <info>int</info>  <strong>$flags</strong>  One of <return>EventBase::LOOP_*</return> constants.  See EventBase constants.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * EventBase::getFeatures


id: EventConfig::setMaxDispatchInterval
type: function
doc:
<comment>Description:</comment>
  Prevents priority inversion
  
  Prevents priority inversion by limiting how many low-priority event callbacks can be invoked
  before checking for more high-priority events.
  
  Available since <return>libevent 2.1.0-alpha</return> .

<comment>Param:</comment>
  <info>int</info>  <strong>$max_interval</strong>   An interval after which Libevent should stop running callbacks and check for
                       more events, or <info>0</info> , if there should be no such interval.
  <info>int</info>  <strong>$max_callbacks</strong>  A number of callbacks after which Libevent should stop running callbacks and
                       check for more events, or <info>-1</info> , if there should be no such limit.
  <info>int</info>  <strong>$min_priority</strong>   A priority below which <strong>$max_interval</strong> and <strong>$max_callbacks</strong> should not be
                       enforced. If this is set to <info>0</info> , they are enforced for events of every
                       priority; if it's set to <info>1</info> , they're enforced for events of priority <info>1</info> and
                       above, and so on.

<comment>Return:</comment>
  <info>void</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.


id: EventDnsBase
type: class
doc:
<comment>Description:</comment>
  Represents Libevent's DNS base structure. Used to resolve DNS asyncronously, parse configuration
  files like resolv.conf etc.


id: EventDnsBase::OPTIONS_ALL
type: constant
doc:
<comment>Description:</comment>
  Tells to learn as much as it can from the <return>resolv.conf</return> file.


id: EventDnsBase::OPTION_HOSTSFILE
type: constant
doc:
<comment>Description:</comment>
  Tells to read a list of hosts from <return>/etc/hosts</return> as part of loading the <return>resolv.conf</return> file.


id: EventDnsBase::OPTION_NAMESERVERS
type: constant
doc:
<comment>Description:</comment>
  Tells to learn the nameservers from the <return>resolv.conf</return> file.


id: EventDnsBase::OPTION_SEARCH
type: constant
doc:
<comment>Description:</comment>
  Tells to read the domain and search fields from the <return>resolv.conf</return> file and the <return>ndots</return> option, and use
  them to decide which domains(if any) to search for hostnames that aren’t fully-qualified.


id: EventDnsBase::__construct
type: function
doc:
<comment>Description:</comment>
  Constructs EventDnsBase object
  
  Constructs EventDnsBase object.

<comment>Param:</comment>
  <info>EventBase</info>  <strong>$base</strong>        Event base.
  <info>bool</info>       <strong>$initialize</strong>  If the <strong>$initialize</strong> argument is <info>true</info>, it tries to configure the DNS base
                          sensibly given your operating system’s default. Otherwise, it leaves the
                          event DNS base empty, with no nameservers or options configured. In the
                          latter case DNS base should be configured manually, e.g. with
                          EventDnsBase::parseResolvConf .

<comment>Return:</comment>
  <info>unknown</info>  Returns EventDnsBase object.


id: EventDnsBase::addNameserverIp
type: function
doc:
<comment>Description:</comment>
  Adds a nameserver to the DNS base
  
  Adds a nameserver to the evdns_base.

<comment>Param:</comment>
  <info>string</info>  <strong>$ip</strong>  The nameserver string, either as an IPv4 address, an IPv6 address, an IPv4 address
               with a port ( <return>IPv4:Port</return> ), or an IPv6 address with a port ( <return>[IPv6]:Port</return> ).

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.


id: EventDnsBase::addSearch
type: function
doc:
<comment>Description:</comment>
  Adds a domain to the list of search domains
  
  Adds a domain to the list of search domains

<comment>Param:</comment>
  <info>string</info>  <strong>$domain</strong>  Search domain.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: EventDnsBase::clearSearch
type: function
doc:
<comment>Description:</comment>
  Removes all current search suffixes
  
  Removes all current search suffixes from the DNS base; the EventDnsBase::addSearch function adds a
  suffix.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * EventDnsBase::addSearch


id: EventDnsBase::countNameservers
type: function
doc:
<comment>Description:</comment>
  Gets the number of configured nameservers
  
  Gets the number of configured nameservers

<comment>Return:</comment>
  <info>int</info>  Returns the number of configured nameservers(not necessarily the number of running
       nameservers). This is useful for double-checking whether our calls to the various nameserver
       configuration functions have been successful.


id: EventDnsBase::loadHosts
type: function
doc:
<comment>Description:</comment>
  Loads a hosts file (in the same format as /etc/hosts) from hosts file
  
  Loads a hosts file (in the same format as <return>/etc/hosts</return> ) from hosts file.

<comment>Param:</comment>
  <info>string</info>  <strong>$hosts</strong>  Path to the hosts' file.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.


id: EventDnsBase::parseResolvConf
type: function
doc:
<comment>Description:</comment>
  Scans the resolv.conf-formatted file
  
  Scans the resolv.conf-formatted file stored in filename, and read in all the options from it that
  are listed in flags

<comment>Param:</comment>
  <info>int</info>     <strong>$flags</strong>     Determines what information is parsed from the <return>resolv.conf</return> file. See the man
                     page for <return>resolv.conf</return> for the format of this file.
                     
                     The following directives are not parsed from the file: <return>sortlist, rotate,
                     no-check-names, inet6, debug</return> .
                     
                     If this function encounters an error, the possible return values are: <info>1</info> =
                     failed to open file<info>2</info> = failed to stat file<info>3</info> = file too large<info>4</info> = out of memory<info>5</info>
                     = short read from file<info>6</info> = no nameservers listed in the file
  <info>string</info>  <strong>$filename</strong>  Path to <return>resolv.conf</return> file.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.


id: EventDnsBase::setOption
type: function
doc:
<comment>Description:</comment>
  Set the value of a configuration option
  
  Set the value of a configuration option.

<comment>Param:</comment>
  <info>string</info>  <strong>$option</strong>  The currently available configuration options are: <return>"ndots"</return> , <return>"timeout"</return> ,
                   <return>"max-timeouts"</return> , <return>"max-inflight"</return> , and <return>"attempts"</return> .
  <info>string</info>  <strong>$value</strong>   Option value.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.


id: EventDnsBase::setSearchNdots
type: function
doc:
<comment>Description:</comment>
  Set the 'ndots' parameter for searches
  
  Set the <info>'ndots'</info> parameter for searches. Sets the number of dots which, when found in a name,
  causes the first query to be without any search domain.

<comment>Param:</comment>
  <info>int</info>  <strong>$ndots</strong>  The number of dots.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.


id: EventHttp::__construct
type: function
doc:
<comment>Description:</comment>
  Constructs EventHttp object(the HTTP server)
  
  Constructs the HTTP server object.

<comment>Param:</comment>
  <info>EventBase</info>        <strong>$base</strong>  Associated event base.
  <info>EventSslContext</info>  <strong>$ctx</strong>   <class>EventSslContext</class> class object. Turns plain HTTP server into HTTPS server.
                          It means that if <strong>$ctx</strong> is configured correctly, then the underlying buffer
                          events will be based on OpenSSL sockets. Thus, all traffic will pass
                          through the SSL or TLS.
                          
                          This parameter is available only if <return>Event</return> is compiled with OpenSSL support
                          and only with <return>Libevent 2.1.0-alpha</return> and higher.

<comment>Return:</comment>
  <info>unknown</info>  Returns <class>EventHttp</class> object.


id: EventHttp::accept
type: function
doc:
<comment>Description:</comment>
  Makes an HTTP server accept connections on the specified socket stream or resource
  
  Makes an HTTP server accept connections on the specified socket stream or resource. The socket
  should be ready to accept connections.
  
  Can be called multiple times to accept connections on different sockets.
  
  To bind a socket, <return>listen</return> , and <return> accept</return> connections on the socket in s single call use
  EventHttp::bind . EventHttp::accept is needed only if one already has a socket ready to accept
  connections.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$socket</strong>  Socket resource, stream or numeric file descriptor representing a socket ready to
                  accept connections.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * EventHttp::bind


id: EventHttp::addServerAlias
type: function
doc:
<comment>Description:</comment>
  Adds a server alias to the HTTP server object
  
  Adds a server alias to the HTTP server object.

<comment>Param:</comment>
  <info>string</info>  <strong>$alias</strong>  The alias to add.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * EventHttp::removeServerAlias


id: EventHttp::bind
type: function
doc:
<comment>Description:</comment>
  Binds an HTTP server on the specified address and port
  
  Binds an HTTP server on the specified address and port.
  
  Can be called multiple times to bind the same HTTP server to multiple different ports.

<comment>Param:</comment>
  <info>string</info>  <strong>$address</strong>  A string containing the IP address to <return>listen(2)</return> on.
  <info>int</info>     <strong>$port</strong>     The port number to listen on.

<comment>Return:</comment>
  <info>void</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * EventHttp::accept


id: EventHttp::removeServerAlias
type: function
doc:
<comment>Description:</comment>
  Removes server alias
  
  Removes server alias added with EventHttp::addServerAlias

<comment>Param:</comment>
  <info>string</info>  <strong>$alias</strong>  The alias to remove.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * EventHttp::addServerAlias


id: EventHttp::setAllowedMethods
type: function
doc:
<comment>Description:</comment>
  Sets the what HTTP methods are supported in requests accepted by this server, and passed to user
  callbacks
  
  Sets the what HTTP methods are supported in requests accepted by this server, and passed to user
  callbacks
  
  If not supported they will generate a <return>"405 Method not allowed"</return> response.
  
  By default this includes the following methods: <return>GET</return> , <return>POST</return> , <return>HEAD</return> , <return>PUT</return> , <return>DELETE</return> . See
  <return>EventHttpRequest::CMD_*</return> constants.

<comment>Param:</comment>
  <info>int</info>  <strong>$methods</strong>  A bit mask of <return>EventHttpRequest::CMD_*</return> constants .

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: EventHttp::setCallback
type: function
doc:
<comment>Description:</comment>
  Sets a callback for specified URI
  
  Sets a callback for specified URI.

<comment>Param:</comment>
  <info>string</info>            <strong>$path</strong>  The path for which to invoke the callback.
  <info>string</info>            <strong>$cb</strong>    The callback <info>callable</info> that gets invoked on requested <strong>$path</strong> . It should
                           match the following prototype:
                           
                           <strong>$req</strong><class>EventHttpRequest</class> object. <strong>$arg</strong> Custom data. 
                           
                           <class>EventHttpRequest</class> object.
                           
                           Custom data.
  <info>EventHttpRequest</info>  <strong>$req</strong>   <class>EventHttpRequest</class> object.
  <info>string</info>            <strong>$arg</strong>   Custom data.
  <info>string</info>            <strong>$arg</strong>   Custom data.

<comment>Return:</comment>
  <info>void</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * EventHttp::setDefaultCallback


id: EventHttp::setDefaultCallback
type: function
doc:
<comment>Description:</comment>
  Sets default callback to handle requests that are not caught by specific callbacks
  
  Sets default callback to handle requests that are not caught by specific callbacks

<comment>Param:</comment>
  <info>string</info>            <strong>$cb</strong>   The callback <info>callable</info> . It should match the following prototype:
                          
                          <strong>$req</strong><class>EventHttpRequest</class> object. <strong>$arg</strong> Custom data. 
                          
                          <class>EventHttpRequest</class> object.
                          
                          Custom data.
  <info>EventHttpRequest</info>  <strong>$req</strong>  <class>EventHttpRequest</class> object.
  <info>string</info>            <strong>$arg</strong>  Custom data.
  <info>string</info>            <strong>$arg</strong>  User custom data passed to the callback.

<comment>Return:</comment>
  <info>void</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * EventHttp::setCallback


id: EventHttp::setMaxBodySize
type: function
doc:
<comment>Description:</comment>
  Sets maximum request body size
  
  Sets maximum request body size.

<comment>Param:</comment>
  <info>int</info>  <strong>$value</strong>  The body size in bytes.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * EventHttp::setMaxHeadersSize


id: EventHttp::setMaxHeadersSize
type: function
doc:
<comment>Description:</comment>
  Sets maximum HTTP header size
  
  Sets maximum HTTP header size.

<comment>Param:</comment>
  <info>int</info>  <strong>$value</strong>  The header size in bytes.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * EventHttp::setMaxHeadersSize


id: EventHttp::setTimeout
type: function
doc:
<comment>Description:</comment>
  Sets the timeout for an HTTP request
  
  Sets the timeout for an HTTP request.

<comment>Param:</comment>
  <info>int</info>  <strong>$value</strong>  The timeout in seconds.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: EventHttpConnection::__construct
type: function
doc:
<comment>Description:</comment>
  Constructs EventHttpConnection object
  
  Constructs EventHttpConnection object.

<comment>Param:</comment>
  <info>EventBase</info>        <strong>$base</strong>      Associated event base.
  <info>EventDnsBase</info>     <strong>$dns_base</strong>  If <strong>$dns_base</strong> is <info>null</info>, hostname resolution will block.
  <info>string</info>           <strong>$address</strong>   The address to connect to.
  <info>int</info>              <strong>$port</strong>      The port to connect to.
  <info>EventSslContext</info>  <strong>$ctx</strong>       <class>EventSslContext</class> class object. Enables OpenSSL.
                              
                              This parameter is available only if <return>Event</return> is compiled with OpenSSL
                              support and only with <return>Libevent 2.1.0-alpha</return> and higher.

<comment>Return:</comment>
  <info>unknown</info>  Returns <class>EventHttpConnection</class> object.


id: EventHttpConnection::getBase
type: function
doc:
<comment>Description:</comment>
  Returns event base associated with the connection
  
  Returns event base associated with the connection.

<comment>Return:</comment>
  <info>EventBase</info>  On success returns <class>EventBase</class> object associated with the connection. Otherwise <info>false</info>.


id: EventHttpConnection::getPeer
type: function
doc:
<comment>Description:</comment>
  Gets the remote address and port associated with the connection
  
  Gets the remote address and port associated with the connection

<comment>Param:</comment>
  <info>string</info>  <strong>$address</strong>  Address of the peer.
  <info>int</info>     <strong>$port</strong>     Port of the peer.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: EventHttpConnection::makeRequest
type: function
doc:
<comment>Description:</comment>
  Makes an HTTP request over the specified connection
  
  Makes an HTTP request over the specified connection. <strong>$type</strong> is one of <return>EventHttpRequest::CMD_*</return>
  constants.

<comment>Param:</comment>
  <info>EventHttpRequest</info>  <strong>$req</strong>   The connection object over which to send the request.
  <info>int</info>               <strong>$type</strong>  One of <return>EventHttpRequest::CMD_*</return> constants .
  <info>string</info>            <strong>$uri</strong>   The URI associated with the request.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * EventHttpRequest::addHeader


id: EventHttpConnection::setCloseCallback
type: function
doc:
<comment>Description:</comment>
  Set callback for connection close
  
  Sets callback for connection close.

<comment>Param:</comment>
  <info>callable</info>  <strong>$callback</strong>  Callback which is called when connection is closed. Should match the
                       following prototype:

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: EventHttpConnection::setLocalAddress
type: function
doc:
<comment>Description:</comment>
  Sets the IP address from which HTTP connections are made
  
  Sets the IP address from which http connections are made.

<comment>Param:</comment>
  <info>string</info>  <strong>$address</strong>  The IP address from which HTTP connections are made.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * EventHttpConnection::setLocalPort


id: EventHttpConnection::setLocalPort
type: function
doc:
<comment>Description:</comment>
  Sets the local port from which connections are made
  
  Sets the local port from which connections are made.

<comment>Param:</comment>
  <info>int</info>  <strong>$port</strong>  The port number.

<comment>Return:</comment>
  <info>void</info>  

<comment>See Also:</comment>
   * EventHttpConnection::setLocalAddress


id: EventHttpConnection::setMaxBodySize
type: function
doc:
<comment>Description:</comment>
  Sets maximum body size for the connection
  
  Sets maximum body size for the connection.

<comment>Param:</comment>
  <info>string</info>  <strong>$max_size</strong>  The maximum body size in bytes.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * EventHttpConnection::setMaxHeadersSize


id: EventHttpConnection::setMaxHeadersSize
type: function
doc:
<comment>Description:</comment>
  Sets maximum header size
  
  Sets maximum header size for the connection.

<comment>Param:</comment>
  <info>string</info>  <strong>$max_size</strong>  The maximum header size in bytes.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * EventHttpConnection::setMaxBodySize


id: EventHttpConnection::setRetries
type: function
doc:
<comment>Description:</comment>
  Sets the retry limit for the connection
  
  Sets the retry limit for the connection

<comment>Param:</comment>
  <info>int</info>  <strong>$retries</strong>  The retry limit. <info>-1</info> means infinity.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: EventHttpConnection::setTimeout
type: function
doc:
<comment>Description:</comment>
  Sets the timeout for the connection
  
  Sets the timeout for the connection

<comment>Param:</comment>
  <info>int</info>  <strong>$timeout</strong>  Timeout in seconds.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: EventHttpRequest::__construct
type: function
doc:
<comment>Description:</comment>
  Constructs EventHttpRequest object
  
  Constructs EventHttpRequest object.

<comment>Param:</comment>
  <info>callable</info>  <strong>$callback</strong>  Gets invoked on requesting path. Should match the following prototype:
  <info>mixed</info>     <strong>$data</strong>      User custom data passed to the callback.

<comment>Return:</comment>
  <info>unknown</info>  Returns EventHttpRequest object.

<comment>See Also:</comment>
   * EventHttpRequest::cancel
   * EventHttpRequest::addHeader


id: EventHttpRequest::addHeader
type: function
doc:
<comment>Description:</comment>
  Adds an HTTP header to the headers of the request
  
  Adds an HTTP header to the headers of the request.

<comment>Param:</comment>
  <info>string</info>  <strong>$key</strong>    Header name.
  <info>string</info>  <strong>$value</strong>  Header value.
  <info>int</info>     <strong>$type</strong>   One of <return>EventHttpRequest::*_HEADER</return> constants .

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * EventHttpRequest::removeHeader


id: EventHttpRequest::cancel
type: function
doc:
<comment>Description:</comment>
  Cancels a pending HTTP request
  
  Cancels a pending HTTP request.
  
  Cancels an ongoing HTTP request. The callback associated with this request is not executed and the
  request object is freed. If the request is currently being processed, e.g. it is ongoing, the
  corresponding <class>EventHttpConnection</class> object is going to get reset.
  
  A request cannot be canceled if its callback has executed already. A request may be canceled
  reentrantly from its chunked callback.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: EventHttpRequest::clearHeaders
type: function
doc:
<comment>Description:</comment>
  Removes all output headers from the header list of the request
  
  Removes all output headers from the header list of the request.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * EventHttpRequest::addHeader


id: EventHttpRequest::closeConnection
type: function
doc:
<comment>Description:</comment>
  Closes associated HTTP connection
  
  Closes HTTP connection associated with the request.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: EventHttpRequest::findHeader
type: function
doc:
<comment>Description:</comment>
  Finds the value belonging a header
  
  Finds the value belonging a header.

<comment>Param:</comment>
  <info>string</info>  <strong>$key</strong>   The header name.
  <info>string</info>  <strong>$type</strong>  One of <return>EventHttpRequest::*_HEADER</return> constants .

<comment>Return:</comment>
  <info>void</info>  Returns <info>null</info> if header not found.

<comment>See Also:</comment>
   * EventHttpRequest::addHeader


id: EventHttpRequest::free
type: function
doc:
<comment>Description:</comment>
  Frees the object and removes associated events
  
  Frees the object and removes associated events.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: EventHttpRequest::getBufferEvent
type: function
doc:
<comment>Description:</comment>
  Returns EventBufferEvent object
  
  Returns <class>EventBufferEvent</class> object which represents buffer event that the connection is using.
  
  The reference counter of the returned object will be incremented by one to protect internal
  structures against premature destruction when the method is called from a user callback. So the
  <class>EventBufferEvent</class> object should be freed explicitly with EventBufferEvent::free method. Otherwise
  memory will leak.

<comment>Return:</comment>
  <info>EventBufferEvent</info>  Returns <class>EventBufferEvent</class> object.

<comment>See Also:</comment>
   * EventHttpRequest::getConnection


id: EventHttpRequest::getCommand
type: function
doc:
<comment>Description:</comment>
  Returns the request command(method)
  
  Returns the request command, one of <return>EventHttpRequest::CMD_*</return> constants.

<comment>Return:</comment>
  <info>void</info>  Returns the request command, one of <return>EventHttpRequest::CMD_*</return> constants.


id: EventHttpRequest::getConnection
type: function
doc:
<comment>Description:</comment>
  Returns EventHttpConnection object
  
  Returns <class>EventHttpConnection</class> object which represents HTTP connection associated with the request.
  
  Libevent API allows HTTP request objects to be not bound to any HTTP connection. Therefore we
  can't unambiguously associate <class>EventHttpRequest</class> with <class>EventHttpConnection</class> . Thus, we construct
  <class>EventHttpConnection</class> object on-the-fly. Having no information about the event base, DNS base and
  connection-close callback, we just leave these fields unset.
  
  EventHttpRequest::getConnection method is usually useful when we need to set up a callback on
  connection close. See EventHttpConnection::setCloseCallback .

<comment>Return:</comment>
  <info>EventHttpConnection</info>  Returns <class>EventHttpConnection</class> object.

<comment>See Also:</comment>
   * EventHttpConnection::setCloseCallback
   * EventHttpRequest::getBufferEvent


id: EventHttpRequest::getHost
type: function
doc:
<comment>Description:</comment>
  Returns the request host
  
  Returns the request host.

<comment>Return:</comment>
  <info>string</info>  Returns the request host.

<comment>See Also:</comment>
   * EventHttpRequest::getUri
   * EventHttpRequest::getCommand


id: EventHttpRequest::getInputBuffer
type: function
doc:
<comment>Description:</comment>
  Returns the input buffer
  
  Returns the input buffer.

<comment>Return:</comment>
  <info>EventBuffer</info>  Returns the input buffer.

<comment>See Also:</comment>
   * EventHttpRequest::getOutputBuffer


id: EventHttpRequest::getInputHeaders
type: function
doc:
<comment>Description:</comment>
  Returns associative array of the input headers
  
  Returns associative array of the input headers.

<comment>Return:</comment>
  <info>array</info>  Returns associative array of the input headers.

<comment>See Also:</comment>
   * EventHttpRequest::getOutputHeaders


id: EventHttpRequest::getOutputBuffer
type: function
doc:
<comment>Description:</comment>
  Returns the output buffer of the request
  
  Returns the output buffer of the request.

<comment>Return:</comment>
  <info>EventBuffer</info>  Returns the output buffer of the request.

<comment>See Also:</comment>
   * EventHttpRequest::getInputBuffer


id: EventHttpRequest::getOutputHeaders
type: function
doc:
<comment>Description:</comment>
  Returns associative array of the output headers
  
  Returns associative array of the output headers.

<comment>Return:</comment>
  <info>void</info>  

<comment>See Also:</comment>
   * EventHttpRequest::getInputHeaders


id: EventHttpRequest::getResponseCode
type: function
doc:
<comment>Description:</comment>
  Returns the response code
  
  Returns the response code.

<comment>Return:</comment>
  <info>int</info>  Returns the response code of the request.

<comment>See Also:</comment>
   * EventHttpRequest::getCommand
   * EventHttpRequest::getHost
   * EventHttpRequest::getUri


id: EventHttpRequest::getUri
type: function
doc:
<comment>Description:</comment>
  Returns the request URI
  
  Returns the request URI

<comment>Return:</comment>
  <info>string</info>  Returns the request URI

<comment>See Also:</comment>
   * EventHttpRequest::getCommand
   * EventHttpRequest::getHost
   * EventHttpRequest::getResponseCode


id: EventHttpRequest::removeHeader
type: function
doc:
<comment>Description:</comment>
  Removes an HTTP header from the headers of the request
  
  Removes an HTTP header from the headers of the request.

<comment>Param:</comment>
  <info>string</info>  <strong>$key</strong>   The header name.
  <info>string</info>  <strong>$type</strong>  <strong>$type</strong> is one of <return>EventHttpRequest::*_HEADER</return> constants.

<comment>Return:</comment>
  <info>void</info>  Removes an HTTP header from the headers of the request.

<comment>See Also:</comment>
   * EventHttpRequest::addHeader


id: EventHttpRequest::sendError
type: function
doc:
<comment>Description:</comment>
  Send an HTML error message to the client
  
  Send an HTML error message to the client.

<comment>Param:</comment>
  <info>int</info>     <strong>$error</strong>   The HTTP error code.
  <info>string</info>  <strong>$reason</strong>  A brief explanation ofthe error. If <info>null</info>, the standard meaning of the error code
                   will be used.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * EventHttpRequest::sendReply


id: EventHttpRequest::sendReply
type: function
doc:
<comment>Description:</comment>
  Send an HTML reply to the client
  
  Send an HTML reply to the client. The body of the reply consists of data in optional <strong>$buf</strong>
  parameter.

<comment>Param:</comment>
  <info>int</info>          <strong>$code</strong>    The HTTP response code to send.
  <info>string</info>       <strong>$reason</strong>  A brief message to send with the response code.
  <info>EventBuffer</info>  <strong>$buf</strong>     The body of the response.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * EventHttpRequest::sendError
   * EventHttpRequest::sendReplyChunk


id: EventHttpRequest::sendReplyChunk
type: function
doc:
<comment>Description:</comment>
  Send another data chunk as part of an ongoing chunked reply
  
  Send another data chunk as part of an ongoing chunked reply. After calling this method <strong>$buf</strong> will
  be empty.

<comment>Param:</comment>
  <info>EventBuffer</info>  <strong>$buf</strong>  The data chunk to send as part of the reply.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * EventHttpRequest::sendReplyStart
   * EventHttpRequest::sendReplyEnd


id: EventHttpRequest::sendReplyEnd
type: function
doc:
<comment>Description:</comment>
  Complete a chunked reply, freeing the request as appropriate
  
  Complete a chunked reply, freeing the request as appropriate.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * EventHttpRequest::sendReplyStart
   * EventHttpRequest::sendReplyChunk


id: EventHttpRequest::sendReplyStart
type: function
doc:
<comment>Description:</comment>
  Initiate a chunked reply
  
  Initiate a reply that uses <return>Transfer-Encoding</return> <return>chunked</return> .
  
  This allows the caller to stream the reply back to the client and is useful when either not all of
  the reply data is immediately available or when sending very large replies.
  
  The caller needs to supply data chunks with EventHttpRequest::sendReplyChunk and complete the
  reply by calling EventHttpRequest::sendReplyEnd .

<comment>Param:</comment>
  <info>int</info>     <strong>$code</strong>    The HTTP response code to send.
  <info>string</info>  <strong>$reason</strong>  A brief message to send with the response code.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * EventHttpRequest::sendReplyChunk
   * EventHttpRequest::sendReplyEnd


id: EventListener::OPT_CLOSE_ON_EXEC
type: constant
doc:
<comment>Description:</comment>
  If this option is set, the connection listener sets the close-on-exec flag on the underlying
  listener socket. See platform documentation for <return>fcntl</return> and <info>FD_CLOEXEC</info> for more information.


id: EventListener::OPT_CLOSE_ON_FREE
type: constant
doc:
<comment>Description:</comment>
  If this option is set, the connection listener closes its underlying socket when the <class>EventListener</class>
  object is freed.


id: EventListener::OPT_LEAVE_SOCKETS_BLOCKING
type: constant
doc:
<comment>Description:</comment>
  By default Libevent turns underlying file descriptors, or sockets, to non-blocking mode. This flag
  tells Libevent to leave them in blocking mode.


id: EventListener::OPT_REUSEABLE
type: constant
doc:
<comment>Description:</comment>
  By default on some platforms, once a listener socket is closed, no other socket can bind to the
  same port until a while has passed. Setting this option makes Libevent mark the socket as
  reusable, so that once it is closed, another socket can be opened to listen on the same port.


id: EventListener::OPT_THREADSAFE
type: constant
doc:
<comment>Description:</comment>
  Allocate locks for the listener, so that it’s safe to use it from multiple threads.


id: EventListener::__construct
type: function
doc:
<comment>Description:</comment>
  Creates new connection listener associated with an event base
  
  Creates new connection listener associated with an event base.

<comment>Param:</comment>
  <info>EventBase</info>  <strong>$base</strong>     Associated event base.
  <info>callable</info>   <strong>$cb</strong>       A <info>callable</info> that will be invoked when new connection received.
  <info>mixed</info>      <strong>$data</strong>     Custom user data attached to <strong>$cb</strong> .
  <info>int</info>        <strong>$flags</strong>    Bit mask of <return>EventListener::OPT_*</return> constants. See EventListener constants .
  <info>int</info>        <strong>$backlog</strong>  Controls the maximum number of pending connections that the network stack
                       should allow to wait in a not-yet-accepted state at any time; see
                       documentation for your system’s <return>listen</return> function for more details. If <strong>$backlog</strong>
                       is negative, Libevent tries to pick a good value for the <strong>$backlog</strong> ; if it is
                       zero, Event assumes that <return>listen</return> is already called on the socket( <strong>$target</strong> )
  <info>mixed</info>      <strong>$target</strong>   May be string, socket resource, or a stream associated with a socket. In case
                       if <strong>$target</strong> is a string, the string will be parsed as network address. It will
                       be interpreted as a UNIX domain socket path, if prefixed with <return>'unix:'</return> , e.g.
                       <return>'unix:/tmp/my.sock'</return> .

<comment>Return:</comment>
  <info>unknown</info>  Returns <class>EventListener</class> object representing the event connection listener.


id: EventListener::disable
type: function
doc:
<comment>Description:</comment>
  Disables an event connect listener object
  
  Disables an event connect listener object

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * EventListener::enable


id: EventListener::enable
type: function
doc:
<comment>Description:</comment>
  Enables an event connect listener object
  
  Enables an event connect listener object

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * EventListener::disable


id: EventListener::getBase
type: function
doc:
<comment>Description:</comment>
  Returns event base associated with the event listener
  
  Returns event base associated with the event listener.

<comment>Return:</comment>
  <info>void</info>  Returns event base associated with the event listener.


id: EventListener::getSocketName
type: function
doc:
<comment>Description:</comment>
  Retreives the current address to which the
    listener's socket is bound
  
  Retreives the current address to which the listener's socket is bound.

<comment>Param:</comment>
  <info>string</info>  <strong>$address</strong>  Output parameter. IP-address depending on the socket address family.
  <info>mixed</info>   <strong>$port</strong>     Output parameter. The port the socket is bound to.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.


id: EventListener::setCallback
type: function
doc:
<comment>Description:</comment>
  The setCallback purpose
  
  Adjust event connect listener's callback and optionally the callback argument.

<comment>Param:</comment>
  <info>callable</info>       <strong>$cb</strong>        The new callback for new connections. Ignored if <info>null</info>.
                            
                            Should match the following prototype:
                            
                            <strong>$listener</strong> The <class>EventListener</class> object. <strong>$fd</strong> The file descriptor or a
                            resource associated with the listener. <strong>$address</strong> Array of two elements:
                            IP address and the server port. <strong>$arg</strong> User custom data attached to the
                            callback.
                            
                            The <class>EventListener</class> object.
                            
                            The file descriptor or a resource associated with the listener.
                            
                            Array of two elements: IP address and the server port.
                            
                            User custom data attached to the callback.
  <info>EventListener</info>  <strong>$listener</strong>  The <class>EventListener</class> object.
  <info>mixed</info>          <strong>$fd</strong>        The file descriptor or a resource associated with the listener.
  <info>array</info>          <strong>$address</strong>   Array of two elements: IP address and the server port.
  <info>mixed</info>          <strong>$arg</strong>       User custom data attached to the callback.
  <info>mixed</info>          <strong>$arg</strong>       Custom user data attached to the callback. Ignored if <info>null</info>.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: EventListener::setErrorCallback
type: function
doc:
<comment>Description:</comment>
  Set event listener's error callback
  
  Set event listener's error callback

<comment>Param:</comment>
  <info>string</info>         <strong>$cb</strong>        The error callback. Should match the following prototype:
                            
                            <strong>$listener</strong> The <class>EventListener</class> object. <strong>$data</strong> User custom data attached to
                            the callback.
                            
                            The <class>EventListener</class> object.
                            
                            User custom data attached to the callback.
  <info>EventListener</info>  <strong>$listener</strong>  The <class>EventListener</class> object.
  <info>mixed</info>          <strong>$data</strong>      User custom data attached to the callback.

<comment>Return:</comment>
  <info>void</info>  

<comment>See Also:</comment>
   * EventListener::setCallback


id: EventSslContext
type: class
doc:
<comment>Description:</comment>
  Represents <return>SSL_CTX</return> structure. Provides methods and properties to configure the SSL context.


id: EventSslContext::OPT_ALLOW_SELF_SIGNED
type: constant
doc:
<comment>Description:</comment>
  Key for an item of the options' array used in EventSslContext::__construct . Represents option
  that allows self-signed certificates.


id: EventSslContext::OPT_CA_FILE
type: constant
doc:
<comment>Description:</comment>
  Key for an item of the options' array used in EventSslContext::__construct . Represents path of
  the certificate authority file.


id: EventSslContext::OPT_CA_PATH
type: constant
doc:
<comment>Description:</comment>
  Key for an item of the options' array used in EventSslContext::__construct . Represents path where
  the certificate authority file should be searched for.


id: EventSslContext::OPT_CIPHERS
type: constant
doc:
<comment>Description:</comment>
  Key for an item of the options' array used in EventSslContext::__construct . Represents the cipher
  list for the SSL context.


id: EventSslContext::OPT_LOCAL_CERT
type: constant
doc:
<comment>Description:</comment>
  Key for an item of the options' array used in EventSslContext::__construct . The option points to
  path of local certificate.


id: EventSslContext::OPT_LOCAL_PK
type: constant
doc:
<comment>Description:</comment>
  Key for an item of the options' array used in EventSslContext::__construct . The option points to
  path of the private key.


id: EventSslContext::OPT_PASSPHRASE
type: constant
doc:
<comment>Description:</comment>
  Key for an item of the options' array used in EventSslContext::__construct . Represents passphrase
  of the certificate.


id: EventSslContext::OPT_VERIFY_DEPTH
type: constant
doc:
<comment>Description:</comment>
  Key for an item of the options' array used in EventSslContext::__construct . Represents maximum
  depth for the certificate chain verification that shall be allowed for the SSL context.


id: EventSslContext::OPT_VERIFY_PEER
type: constant
doc:
<comment>Description:</comment>
  Key for an item of the options' array used in EventSslContext::__construct . Represents option
  that tells Event to verify peer.


id: EventSslContext::SSLv23_CLIENT_METHOD
type: constant
doc:
<comment>Description:</comment>
  SSLv23 client method. See <return>SSL_CTX_new(3)</return> man page.


id: EventSslContext::SSLv23_SERVER_METHOD
type: constant
doc:
<comment>Description:</comment>
  SSLv23 server method. See <return>SSL_CTX_new(3)</return> man page.


id: EventSslContext::SSLv2_CLIENT_METHOD
type: constant
doc:
<comment>Description:</comment>
  SSLv2 client method. See <return>SSL_CTX_new(3)</return> man page.


id: EventSslContext::SSLv2_SERVER_METHOD
type: constant
doc:
<comment>Description:</comment>
  SSLv2 server method. See <return>SSL_CTX_new(3)</return> man page.


id: EventSslContext::SSLv3_CLIENT_METHOD
type: constant
doc:
<comment>Description:</comment>
  SSLv3 client method. See <return>SSL_CTX_new(3)</return> man page.


id: EventSslContext::SSLv3_SERVER_METHOD
type: constant
doc:
<comment>Description:</comment>
  SSLv3 server method. See <return>SSL_CTX_new(3)</return> man page.


id: EventSslContext::__construct
type: function
doc:
<comment>Description:</comment>
  Constructs an OpenSSL context for use with Event classes
  
  Creates SSL context holding pointer to <return>SSL_CTX</return> (see the system manual).

<comment>Param:</comment>
  <info>string</info>  <strong>$method</strong>   One of <return>EventSslContext::*_METHOD</return> constants .
  <info>string</info>  <strong>$options</strong>  Associative array of SSL context options One of <return>EventSslContext::OPT_*</return> constants
                    .

<comment>Return:</comment>
  <info>unknown</info>  Returns <class>EventSslContext</class> object.


id: EventUtil
type: class
doc:
<comment>Description:</comment>
  <class>EventUtil</class> is a singleton with supplimentary methods and constants.


id: EventUtil::IPPROTO_IP
type: constant
doc:
<comment>Description:</comment>
  See the <return>socket(7)</return> manual page. (Added in event-1.6.0.)


id: EventUtil::LIBEVENT_VERSION_NUMBER
type: constant
doc:
<comment>Description:</comment>
  Libevent' version number at the time when Event extension had been compiled with the library.


id: EventUtil::SOL_SOCKET
type: constant
doc:
<comment>Description:</comment>
  Socket option level. See the <return>socket(7)</return> manual page. (Added in event-1.6.0.)


id: EventUtil::SO_BROADCAST
type: constant
doc:
<comment>Description:</comment>
  Socket option. Reports whether transmission of broadcast messages is supported. See the <return>socket(7)</return>
  manual page. (Added in event-1.6.0.)


id: EventUtil::SO_DEBUG
type: constant
doc:
<comment>Description:</comment>
  Socket option. Enable socket debugging. Only allowed for processes with the <return>CAP_NET_ADMIN</return>
  capability or an effective user ID of <info>0</info> . (Added in event-1.6.0.)


id: EventUtil::SO_DONTROUTE
type: constant
doc:
<comment>Description:</comment>
  Socket option. See the <return>socket(7)</return> manual page. (Added in event-1.6.0.)


id: EventUtil::SO_KEEPALIVE
type: constant
doc:
<comment>Description:</comment>
  Socket option. Enable sending of keep-alive messages on connection-oriented sockets. Expects an
  integer boolean flag. See the <return>socket(7)</return> manual page. (Added in event-1.6.0.)


id: EventUtil::SO_LINGER
type: constant
doc:
<comment>Description:</comment>
  Socket option. When enabled, a <return>close(2)</return> or <return>shutdown(2)</return> will not return until all queued messages
  for the socket have been successfully sent or the linger timeout has been reached. Otherwise, the
  call returns immediately and the closing is done in the background. See the <return>socket(7)</return> manual page.
  (Added in event-1.6.0.)


id: EventUtil::SO_REUSEADDR
type: constant
doc:
<comment>Description:</comment>
  Socket option. Indicates that the rules used in validating addresses supplied in a <return>bind(2)</return> call
  should allow reuse of local addresses. See the <return>socket(7)</return> manual page. (Added in event-1.6.0.)


id: EventUtil::__construct
type: function
doc:
<comment>Description:</comment>
  The abstract constructor
  
  <class>EventUtil</class> is a singleton. Therefore the constructor is abstract, and it is impossible to create
  objects based on this class.

<comment>Return:</comment>
  <info>unknown</info>  No devuelve ningún valor.


id: EventUtil::getLastSocketErrno
type: function
doc:
<comment>Description:</comment>
  Returns the most recent socket error number
  
  Returns the most recent socket error number( <return>errno</return> ).

<comment>Param:</comment>
  <info>mixed</info>  <strong>$socket</strong>  Socket resource, stream or a file descriptor of a socket.

<comment>Return:</comment>
  <info>int</info>  Returns the most recent socket error number( <return>errno</return> ).

<comment>See Also:</comment>
   * EventUtil::getLastSocketError


id: EventUtil::getLastSocketError
type: function
doc:
<comment>Description:</comment>
  Returns the most recent socket error
  
  Returns the most recent socket error.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$socket</strong>  Socket resource, stream or a file descriptor of a socket.

<comment>Return:</comment>
  <info>string</info>  Returns the most recent socket error.

<comment>See Also:</comment>
   * EventUtil::getLastSocketErrno


id: EventUtil::getSocketFd
type: function
doc:
<comment>Description:</comment>
  Returns numeric file descriptor of a socket, or stream
  
  Returns numeric file descriptor of a socket or stream specified by <strong>$socket</strong> argument just like the
  <return>Event</return> extension does it internally for all methods accepting socket resource or stream.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$socket</strong>  Socket resource or stream.

<comment>Return:</comment>
  <info>int</info>  Returns numeric file descriptor of a socket, or stream. EventUtil::getSocketFd returns <info>false</info>
       in case if it is whether failed to recognize the type of the underlying file, or detected
       that the file descriptor associated with <strong>$socket</strong> is not valid.


id: EventUtil::getSocketName
type: function
doc:
<comment>Description:</comment>
  Retreives the current address to which the
    socket is bound
  
  Retreives the current address to which the <strong>$socket</strong> is bound.

<comment>Param:</comment>
  <info>mixed</info>   <strong>$socket</strong>   Socket resource, stream or a file descriptor of a socket.
  <info>string</info>  <strong>$address</strong>  Output parameter. IP-address, or the UNIX domain socket path depending on the
                    socket address family.
  <info>mixed</info>   <strong>$port</strong>     Output parameter. The port the socket is bound to. Has no meaning for UNIX
                    domain sockets.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.


id: EventUtil::setSocketOption
type: function
doc:
<comment>Description:</comment>
  Sets socket options
  
  Sets socket options.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$socket</strong>   Socket resource, stream, or numeric file descriptor associated with the socket.
  <info>int</info>    <strong>$level</strong>    One of <return>EventUtil::SOL_*</return> constants. Specifies the protocol level at which the
                   option resides. For example, to retrieve options at the socket level, a <strong>$level</strong>
                   parameter of <info>EventUtil::SOL_SOCKET</info> would be used. Other levels, such as TCP, can
                   be used by specifying the protocol number of that level. Protocol numbers can be
                   found by using the <strong>getprotobyname()</strong> function. See EventUtil constants .
  <info>int</info>    <strong>$optname</strong>  Option name(type). Has the same meaning as corresponding parameter of
                   <strong>socket_get_option()</strong> function. See EventUtil constants .
  <info>mixed</info>  <strong>$optval</strong>   Accepts the same values as <strong>$optval</strong> parameter of the <strong>socket_get_option()</strong> function.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * <strong>socket_get_option()</strong>
   * <strong>socket_set_option()</strong>


id: EventUtil::sslRandPoll
type: function
doc:
<comment>Description:</comment>
  Generates entropy by means of OpenSSL's RAND_poll()
  
  Generates entropy by means of OpenSSL's <return>RAND_poll()</return> (see the system manual).

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: Exception
type: class
doc:
<comment>Description:</comment>
  The base class for <info>Exception</info>s that occur during generation or use of randomness.


id: Exception::__clone
type: function
doc:
<comment>Description:</comment>
  Clona la excepción
  
  <class>Exception</class>s no se pueden clonar, y el intento de hacerlo lanzará un <class>Error</class>.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: Exception::__construct
type: function
doc:
<comment>Description:</comment>
  Constructor de la excepción
  
  Construye el objeto Exception.

<comment>Param:</comment>
  <info>string</info>          <strong>$message</strong>   Mensaje de la excepción a lanzar.
  <info>int</info>             <strong>$code</strong>      El código de la excepción.
  <info>Throwable|null</info>  <strong>$previous</strong>  La excepción previa utilizada por la serie de excepciones.


id: Exception::__toString
type: function
doc:
<comment>Description:</comment>
  Representación de la excepción en formato cadena
  
  Devuelve la representación de la excepción en formato <info>string</info>.

<comment>Return:</comment>
  <info>string</info>  Devuelve la representación de la excepción en formato <info>string</info>.

<comment>See Also:</comment>
   * Throwable::__toString


id: Exception::getCode
type: function
doc:
<comment>Description:</comment>
  Obtiene el código de una excepción
  
  Devuelve el código de una excepción.

<comment>Return:</comment>
  <info>int</info>  Devuelve el código de Excepción en forma de <info>int</info> en <class>Exception</class> pero posiblemente en forma de
       otros tipos en <class>Exception</class> descendientes (por ejemplo como <info>string</info> en <class>PDOException</class>).

<comment>See Also:</comment>
   * Throwable::getCode


id: Exception::getFile
type: function
doc:
<comment>Description:</comment>
  Obtiene el fichero en el que se creó la excepción
  
  Obtiene el nombre del fichero en el que fue creada la excepción.

<comment>Return:</comment>
  <info>string</info>  Devuelve el nombre del fichero en donde fue creada la excepción.

<comment>See Also:</comment>
   * Throwable::getFile


id: Exception::getLine
type: function
doc:
<comment>Description:</comment>
  Obtiene la línea en el que se creó la excepción
  
  Devuelve el número de la línea donde se creó la excepción.

<comment>Return:</comment>
  <info>int</info>  Devuelve el número de la línea donde se creó la excepción.

<comment>See Also:</comment>
   * Throwable::getLine


id: Exception::getMessage
type: function
doc:
<comment>Description:</comment>
  Obtiene el mensaje de Excepción
  
  Devuelve el mensaje de Excepción.

<comment>Return:</comment>
  <info>string</info>  Devuelve el mensaje de Excepción en formato cadena.

<comment>See Also:</comment>
   * Throwable::getMessage


id: Exception::getPrevious
type: function
doc:
<comment>Description:</comment>
  Devuelve la Throwable anterior
  
  Devuelve la <class>Throwable</class> anterior (el tercer parámetro de Exception::__construct).

<comment>Return:</comment>
  <info>Throwable|null</info>  Devuelve la <class>Throwable</class> anterior si está disponible o <info>null</info> si no.

<comment>See Also:</comment>
   * Throwable::getPrevious


id: Exception::getTrace
type: function
doc:
<comment>Description:</comment>
  Obtiene la traza de la pila
  
  Devuelve la traza de pila de una excepción.

<comment>Return:</comment>
  <info>array</info>  Devuelve el seguimiento de pila de una excepción como un <info>array</info>.

<comment>See Also:</comment>
   * Throwable::getTrace


id: Exception::getTraceAsString
type: function
doc:
<comment>Description:</comment>
  Obtiene la traza de la pila como una cadena de caracteres
  
  Devuelve la traza de la pila de una excepción como una cadena de caracteres.

<comment>Return:</comment>
  <info>string</info>  Returns the Exception stack trace as a string.

<comment>See Also:</comment>
   * Throwable::getTraceAsString


id: Executable::execute
type: function
doc:
<comment>Description:</comment>
  Execute statement
  
  Execute the statement from either a collection operation or a table query; this functionality
  allows for method chaining.

<comment>Return:</comment>
  <info>mysql_xdevapi\Result</info>  One of the Result objects, such as Result or SqlStatementResult.


id: ExecutionStatus::__construct
type: function
doc:
<comment>Description:</comment>
  ExecutionStatus constructor
  
  Esta función
  no está documentada actualmente, solamente se encuentra disponible la lista de parámetros.


id: Expression::__construct
type: function
doc:
<comment>Description:</comment>
  Expression constructor
  
  Esta función
  no está documentada actualmente, solamente se encuentra disponible la lista de parámetros.

<comment>Param:</comment>
  <info>string</info>  <strong>$expression</strong>  


id: FANNConnection
type: class
doc:
<comment>Description:</comment>
  <class>FANNConnection</class> se emplea para la conexión de redes neuronales. Los objetos de esta clase se
  emplean en <strong>fann_get_connection_array()</strong> y <strong>fann_set_weight_array()</strong>.


id: FANNConnection::__construct
type: function
doc:
<comment>Description:</comment>
  El constructor de la conexión
  
  Crea una nueva conexión e inicializa sus parámetros. Después de crear la conexión, solamente se
  puede cambiar el peso.

<comment>Param:</comment>
  <info>int</info>    <strong>$from_neuron</strong>  El número de posición de la neurona inicial.
  <info>int</info>    <strong>$to_neuron</strong>    El número de posición de la neurona terminal.
  <info>float</info>  <strong>$weight</strong>       El valor del peso de la conexión.


id: FANNConnection::getFromNeuron
type: function
doc:
<comment>Description:</comment>
  Devuelve las posiciones de la neurona inicial
  
  Devuelve las posiciones de la neurona inicial.

<comment>Return:</comment>
  <info>int</info>  Las posiciones de la neurona inicial.


id: FANNConnection::getToNeuron
type: function
doc:
<comment>Description:</comment>
  Devuelve las posiciones de la neurona terminal
  
  Devuelve las posiciones de la neurona terminal.

<comment>Return:</comment>
  <info>int</info>  Las posiciones de la neurona terminal.


id: FANNConnection::getWeight
type: function
doc:
<comment>Description:</comment>
  Devuelve el peso de la conexión
  
  Devuelve el peso de la conexión.

<comment>Return:</comment>
  <info>void</info>  El peso de la conexión.


id: FANNConnection::setWeight
type: function
doc:
<comment>Description:</comment>
  Establece el peso de la conexión
  
  Establece el peso de la conexión.
  
  Este método es diferente de <strong>fann_set_weight()</strong>. No actualiza el valor del peso de la red. El valor
  de la red se actualiza solamente después de llamar a <strong>fann_set_weight_array()</strong>.

<comment>Param:</comment>
  <info>float</info>  <strong>$weight</strong>  El peso de la conexión.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito, o <info>false</info> de lo contrario.


id: FANN_ELLIOT
type: constant
doc:
<comment>Description:</comment>
  Función de activación rápida (igual que la sigmoide) definida por David Elliott.


id: FANN_ELLIOT_SYMMETRIC
type: constant
doc:
<comment>Description:</comment>
  Función de activación rápida (igual que la sigmoide simétrica) definida por David Elliott.


id: FANN_ERRORFUNC_TANH
type: constant
doc:
<comment>Description:</comment>
  Función de erorr tanh, normalmente mejor, aunque puede requerir un índice de aprendizaje menor.
  Esta función de error dirige de forma agresiva las salidas que difieren mucho de las deseadas,
  mientras que no dirige las salidas que únicamente difieren más bien poco. Esta función de
  activación no se recomienda para entrenamientos en cascada y entrenamientos incrementales.


id: FANN_E_CANT_OPEN_TD_R
type: constant
doc:
<comment>Description:</comment>
  No se puede abrir el fichero de datos de entrenamiento para lectura.


id: FANN_E_CANT_OPEN_TD_W
type: constant
doc:
<comment>Description:</comment>
  No se puede abrir el fichero de datos de entrenamiento para escritura.


id: FANN_E_CANT_READ_NEURON
type: constant
doc:
<comment>Description:</comment>
  Error al leer información de neuronas desde el fichero de configuración.


id: FANN_E_INPUT_NO_MATCH
type: constant
doc:
<comment>Description:</comment>
  El número de neuronas de entrada en los datos de la Red Neuronal Artificial (RNA - ANN por sus
  siglas en inglés) no coinciden.


id: FANN_E_OUTPUT_NO_MATCH
type: constant
doc:
<comment>Description:</comment>
  El número de neuronas de salida en los datos de la Red Neuronal Artificial (RNA - ANN por sus
  siglas en inglés) no coinciden.


id: FANN_E_TRAIN_DATA_MISMATCH
type: constant
doc:
<comment>Description:</comment>
  Diferencias irreconciliables entre dos estructuras fann_train_data.


id: FANN_E_TRAIN_DATA_SUBSET
type: constant
doc:
<comment>Description:</comment>
  Intento de tomar un subconjunto que no está dentro del conjunto de entrenamiento.


id: FANN_SIGMOID_SYMMETRIC
type: constant
doc:
<comment>Description:</comment>
  Función de activación sigmoide simétrica, también conocida como tanh.


id: FANN_STOPFUNC_BIT
type: constant
doc:
<comment>Description:</comment>
  El criterio de parada es el número de bit que fallan. El número de bit significa el número de
  neuronas de salida que difieren más del límite de fallo de bit (véanse fann_get_bit_fail_limit y
  fann_set_bit_fail_limit). Los bit se cuentan en todos los datos de entrenamiento, por lo que este
  número puede ser mayor que el número de datos de entrenamiento.


id: FANN_STOPFUNC_MSE
type: constant
doc:
<comment>Description:</comment>
  El criterio de parada el es valor del Error Cuadrático Medio (ECM - MSE por sus siglas en inglés).


id: FANN_TRAIN_BATCH
type: constant
doc:
<comment>Description:</comment>
  Algoritmo de retropropagación estándar, donde los pesos se actualizan después de calcular el error
  cuadrático medio para el conjunto de entrenamiento completo. Esto significa que los pesos
  solamente se actualizan una vez durante una época. Por este motivo, algunos problemas entrenarán
  más lento con este algoritmo. Aunque debido a que el error cuadrático medio se calcula más
  correctamente que en el entrenamiento incremental, algunos probleamas alcanzarán soluciones
  mejores con este algoritmo.


id: FANN_TRAIN_INCREMENTAL
type: constant
doc:
<comment>Description:</comment>
  Algoritmo de retropropagación estándar, donde los pesos se actualizan después de cada patrón de
  entrenamiento. Esto significa que los pesos se actualizan muchas veces durante una única época.
  Por este motivo, algunos problemas entrenarán muy rápido con este algoritmo, mientras que
  problemas más avanzados no entrenarán muy bien.


id: FANN_TRAIN_QUICKPROP
type: constant
doc:
<comment>Description:</comment>
  Un algoritmo de entrenamiento por lotes más avanzado que alcanza buenos resultados para muchos
  problemas. El algoritmo de entrenamiento quickprop emplea el parámetro learning_rate junto con
  otros parámetros más avanzados, aunque solamente se recomienda cambiar estos parámetros avanzados
  a usuarios  que sepan cómo funciona el algoritmo de entrenamiento quickprop. El algoritmo de
  entrenamiento quickprop está descrito por [Fahlman, 1988].


id: FANN_TRAIN_RPROP
type: constant
doc:
<comment>Description:</comment>
  Un algoritmo de entrenamiento por lotes más avanzado que alcanza buenos resultados para muchos
  problemas. El algoritmo de entrenamiento RPROP es adaptativo, por lo que no emplea learning_rate.
  Sin embargo, se pueden establecer otros parámetros para cambiar la manera en que funciona el
  algoritmo RPROP, aunque solamente se recomienda para usuarios que sepan cómo funciona el algoritmo
  de entrenamiento RPROP. El algoritmo de entrenamiento RPROP está descrito por [Riedmiller y Braun,
  1993], aunque el algoritmo real de aprendizaje utilizado aquí es el algoritmo de entrenamiento
  iRPROP-, el cual está descrito por [Igel y Husken, 2000], y es una variedad del algoritmo de
  entrenamiento RPROP estándar.


id: FANN_TRAIN_SARPROP
type: constant
doc:
<comment>Description:</comment>
  Algoritmo de entrenamiento más avanzado aún. Solamente para la versión 2.2


id: FFI
type: class
doc:
<comment>Description:</comment>
  Objects of this class are created by the factory methods FFI::cdef, FFI::load or FFI::scope.
  Defined C variables are made available as properties of the FFI instance, and defined C functions
  are made available as methods of the FFI instance. Declared C types can be used to create new C
  data structures using FFI::new and FFI::type.
  
  FFI definition parsing and shared library loading may take significant time. It is not useful to
  do it on each HTTP request in a Web environment. However, it is possible to preload FFI
  definitions and libraries at PHP startup, and to instantiate FFI objects when necessary. Header
  files may be extended with special <return>FFI_SCOPE</return> defines (e.g. #define FFI_SCOPE "foo"; the default
  scope is "C") and then loaded by FFI::load during preloading. This leads to the creation of a
  persistent binding, that will be available to all the following requests through FFI::scope. Refer
  to the complete PHP/FFI/preloading example for details.
  
  It is possible to preload more than one C header file into the same scope.


id: FFI::addr
type: function
doc:
<comment>Description:</comment>
  Creates an unmanaged pointer to C data
  
  Creates an unmanaged pointer to the C data represented by the given <class>FFI\CData</class>. The source <strong>$ptr</strong>
  must survive the resulting pointer. This function is mainly useful to pass arguments to C
  functions by pointer.

<comment>Param:</comment>
  <info>FFI\CData</info>  <strong>$ptr</strong>  The handle of the pointer to a C data structure.

<comment>Return:</comment>
  <info>FFI\CData</info>  Returns the freshly created <class>FFI\CData</class> object.


id: FFI::alignof
type: function
doc:
<comment>Description:</comment>
  Gets the alignment
  
  Gets the alignment of the given <class>FFI\CData</class> or <class>FFI\CType</class> object.

<comment>Param:</comment>
  <info>FFI\CData|FFI\CType</info>  <strong>$ptr</strong>  The handle of the C data or type.

<comment>Return:</comment>
  <info>int</info>  Returns the alignment of the given <class>FFI\CData</class> or <class>FFI\CType</class> object.


id: FFI::arrayType
type: function
doc:
<comment>Description:</comment>
  Dynamically constructs a new C array type
  
  Dynamically constructs a new C array type with elements of type defined by <strong>$type</strong>, and dimensions
  specified by <strong>$dimensions</strong>. In the following example $t1 and $t2 are equivalent array types:
  ]]>

<comment>Param:</comment>
  <info>FFI\CType</info>  <strong>$type</strong>        A valid C declaration as <info>string</info>, or an instance of <class>FFI\CType</class> which has
                          already been created.
  <info>array</info>      <strong>$dimensions</strong>  The dimensions of the type as <info>array</info>.

<comment>Return:</comment>
  <info>FFI\CType</info>  Returns the freshly created <class>FFI\CType</class> object.


id: FFI::cast
type: function
doc:
<comment>Description:</comment>
  Performs a C type cast
  
  FFI::cast creates a new <class>FFI\CData</class> object, that references the same C data structure, but is
  associated with a different type. The resulting object does not own the C data, and the source
  <strong>$ptr</strong> must survive the result. The C type may be specified as a <info>string</info> with any valid C type
  declaration or as <class>FFI\CType</class> object, created before. If this method is called statically, it must
  only use predefined C type names (e.g. <return>int</return>, <return>char</return>, etc.); if the method is called as instance
  method, any type declared for the instance is allowed.

<comment>Param:</comment>
  <info>FFI\CType|string</info>               <strong>$type</strong>  A valid C declaration as <info>string</info>, or an instance of <class>FFI\CType</class>
                                        which has already been created.
  <info>FFI\CData|int|float|bool|null</info>  <strong>$ptr</strong>   The handle of the pointer to a C data structure.

<comment>Return:</comment>
  <info>FFI\CData|null</info>  Returns the freshly created <class>FFI\CData</class> object.


id: FFI::cdef
type: function
doc:
<comment>Description:</comment>
  Creates a new FFI object
  
  Creates a new FFI object.

<comment>Param:</comment>
  <info>string</info>       <strong>$code</strong>  A string containing a sequence of declarations in regular C language (types,
                      structures, functions, variables, etc). Actually, this string may be
                      copy-pasted from C header files.
                      
                      C preprocessor directives are not supported, i.e. #include, #define and CPP
                      macros do not work.
  <info>string|null</info>  <strong>$lib</strong>   The name of a shared library file, to be loaded and linked with the
                      definitions.
                      
                      If <strong>$lib</strong> is omitted or <info>null</info>, platforms supporting <return>RTLD_DEFAULT</return> attempt to
                      lookup symbols declared in <strong>$code</strong> in the normal global scope. Other systems
                      will fail to resolve these symbols.

<comment>Return:</comment>
  <info>FFI</info>  Returns the freshly created <class>FFI</class> object.


id: FFI::free
type: function
doc:
<comment>Description:</comment>
  Releases an unmanaged data structure
  
  Manually releases a previously created unmanaged data structure.

<comment>Param:</comment>
  <info>FFI\CData</info>  <strong>$ptr</strong>  The handle of the unmanaged pointer to a C data structure.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: FFI::isNull
type: function
doc:
<comment>Description:</comment>
  Checks whether a FFI\CData is a null pointer
  
  Checks whether a FFI\CData is a null pointer.

<comment>Param:</comment>
  <info>FFI\CData</info>  <strong>$ptr</strong>  The handle of the pointer to a C data structure.

<comment>Return:</comment>
  <info>bool</info>  Returns whether a <class>FFI\CData</class> is a null pointer.


id: FFI::load
type: function
doc:
<comment>Description:</comment>
  Loads C declarations from a C header file
  
  Loads C declarations from a C header file. It is possible to specify shared libraries that should
  be loaded, using special <return>FFI_LIB</return> defines in the loaded C header file.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  The name of a C header file.
                     
                     C preprocessor directives are not supported, i.e. <return>#include</return>, <return>#define</return> and CPP
                     macros do not work, except for special cases listed below.
                     
                     The header file should contain a <return>#define</return> statement for the <return>FFI_SCOPE</return> variable,
                     e.g.: #define FFI_SCOPE "MYLIB". Refer to the class introduction for details.
                     
                     The header file may contain a <return>#define</return> statement for the <return>FFI_LIB</return> variable to
                     specify the library it exposes. If it is a system library only the file name is
                     required, e.g.: #define FFI_LIB "libc.so.6".  If it is a custom library, a
                     relative path is required, e.g.: #define FFI_LIB "./mylib.so".

<comment>Return:</comment>
  <info>FFI|null</info>  Returns the freshly created <class>FFI</class> object, or <info>null</info> on failure.

<comment>See Also:</comment>
   * FFI::scope


id: FFI::memcmp
type: function
doc:
<comment>Description:</comment>
  Compares memory areas
  
  Compares <strong>$size</strong> bytes from the memory areas <strong>$ptr1</strong> and <strong>$ptr2</strong>. Both <strong>$ptr1</strong> and <strong>$ptr2</strong> can be any native
  data structures (<class>FFI\CData</class>) or PHP <info>string</info>s.

<comment>Param:</comment>
  <info>string|FFI\CData</info>  <strong>$ptr1</strong>  The start of one memory area.
  <info>string|FFI\CData</info>  <strong>$ptr2</strong>  The start of another memory area.
  <info>int</info>               <strong>$size</strong>  The number of bytes to compare.

<comment>Return:</comment>
  <info>int</info>  Returns a value less than <return>0</return> if the contents of the memory area starting at <strong>$ptr1</strong> are
       considered less than the contents of the memory area starting at <strong>$ptr2</strong>, a value greater than
       <return>0</return> if the contents of the first memory area are considered greater than the second, and <return>0</return> if
       they are equal.


id: FFI::memcpy
type: function
doc:
<comment>Description:</comment>
  Copies one memory area to another
  
  Copies <strong>$size</strong> bytes from the memory area <strong>$from</strong> to the memory area <strong>$to</strong>.

<comment>Param:</comment>
  <info>FFI\CData</info>         <strong>$to</strong>    The start of the memory area to copy to.
  <info>FFI\CData|string</info>  <strong>$from</strong>  The start of the memory area to copy from.
  <info>int</info>               <strong>$size</strong>  The number of bytes to copy.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: FFI::memset
type: function
doc:
<comment>Description:</comment>
  Fills a memory area
  
  Fills <strong>$size</strong> bytes of the memory area pointed to by <strong>$ptr</strong> with the given byte <strong>$value</strong>.

<comment>Param:</comment>
  <info>FFI\CData</info>  <strong>$ptr</strong>    The start of the memory area to fill.
  <info>int</info>        <strong>$value</strong>  The byte to fill with.
  <info>int</info>        <strong>$size</strong>   The number of bytes to fill.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: FFI::new
type: function
doc:
<comment>Description:</comment>
  Creates a C data structure
  
  Creates a native data structure of the given C type. If this method is called statically, it must
  only use predefined C type names (e.g. <return>int</return>, <return>char</return>, etc.); if the method is called as instance
  method, any type declared for the instance is allowed.

<comment>Param:</comment>
  <info>FFI\CType|string</info>  <strong>$type</strong>        <strong>$type</strong> is a valid C declaration as <info>string</info>, or an instance of
                                 <class>FFI\CType</class> which has already been created.
  <info>bool</info>              <strong>$owned</strong>       Whether to create owned (i.e. managed) or unmanaged data. Managed
                                 data lives together with the returned <class>FFI\CData</class> object, and is
                                 released when the last reference to that object is released by
                                 regular PHP reference counting or GC. Unmanaged data should be
                                 released by calling FFI::free, when no longer needed.
  <info>bool</info>              <strong>$persistent</strong>  Whether to allocate the C data structure permanently on the system
                                 heap (using  <strong>malloc()</strong>), or on the PHP request heap (using
                                 <strong>emalloc()</strong>).

<comment>Return:</comment>
  <info>FFI\CData|null</info>  Returns the freshly created <class>FFI\CData</class> object, or <info>null</info> on failure.


id: FFI::scope
type: function
doc:
<comment>Description:</comment>
  Instantiates an FFI object with C declarations parsed during preloading
  
  Instantiates an FFI object with C declarations parsed during preloading.
  
  The FFI::scope method is safe to call multiple times for the same scope. Multiple references to
  the same scope may be loaded at the same time.

<comment>Param:</comment>
  <info>string</info>  <strong>$name</strong>  The scope name defined by a special <return>FFI_SCOPE</return> define.

<comment>Return:</comment>
  <info>FFI</info>  Returns the freshly created <class>FFI</class> object.

<comment>See Also:</comment>
   * FFI::load


id: FFI::sizeof
type: function
doc:
<comment>Description:</comment>
  Gets the size of C data or types
  
  Returns the size of the given <class>FFI\CData</class> or <class>FFI\CType</class> object.

<comment>Param:</comment>
  <info>FFI\CData|FFI\CType</info>  <strong>$ptr</strong>  The handle of the C data or type.

<comment>Return:</comment>
  <info>int</info>  The size of the memory area pointed at by <strong>$ptr</strong>.


id: FFI::string
type: function
doc:
<comment>Description:</comment>
  Creates a PHP string from a memory area
  
  Creates a PHP <info>string</info> from <strong>$size</strong> bytes of the memory area pointed to by <strong>$ptr</strong>.

<comment>Param:</comment>
  <info>FFI\CData</info>  <strong>$ptr</strong>   The start of the memory area from which to create a <info>string</info>.
  <info>int|null</info>   <strong>$size</strong>  The number of bytes to copy to the <info>string</info>. If <strong>$size</strong> is omitted or <info>null</info>, <strong>$ptr</strong>
                    must be a zero terminated array of C <return>char</return>.

<comment>Return:</comment>
  <info>string</info>  The freshly created PHP <info>string</info>.


id: FFI::type
type: function
doc:
<comment>Description:</comment>
  Creates an FFI\CType object from a C declaration
  
  This function creates and returns a <class>FFI\CType</class> object for the given <info>string</info> containing a C type
  declaration. If this method is called statically, it must only use predefined C type names (e.g.
  <return>int</return>, <return>char</return>, etc.); if the method is called as instance method, any type declared for the instance
  is allowed.

<comment>Param:</comment>
  <info>string</info>  <strong>$type</strong>  A valid C declaration as <info>string</info>.

<comment>Return:</comment>
  <info>FFI\CType|null</info>  Returns the freshly created <class>FFI\CType</class> object, or <info>null</info> on failure.


id: FFI::typeof
type: function
doc:
<comment>Description:</comment>
  Gets the FFI\CType of FFI\CData
  
  Gets the <class>FFI\CType</class> object representing the type of the given <class>FFI\CData</class> object.

<comment>Param:</comment>
  <info>FFI\CData</info>  <strong>$ptr</strong>  The handle of the pointer to a C data structure.

<comment>Return:</comment>
  <info>FFI\CType</info>  Returns the <class>FFI\CType</class> object representing the type of the given <class>FFI\CData</class> object.


id: FFI\CData
type: class
doc:
<comment>Description:</comment>
  <class>FFI\CData</class> objects can be used in a number of ways as a regular
   PHP data:  C data of scalar types can be read and assigned via the $cdata property, e.g.  $x =
  FFI::new('int'); $x-&gt;cdata = 42;  C struct and union fields can be accessed as regular PHP
  object property, e.g. $cdata-&gt;field  C array elements can be accessed as regular PHP array
  elements, e.g. $cdata[$offset]  C arrays can be iterated using foreach statements.  C arrays can
  be used as arguments of <strong>count()</strong>.  C pointers can be dereferenced as arrays, e.g. $cdata[0]  C
  pointers can be compared using regular comparison operators (\<, \<=, ==, !=, &gt;=, &gt;).  C pointers can be incremented and decremented using regular +/-/ ++/–- operations, e.g. $cdata += 5  C pointers can be subtracted from another using regular - operations.  C pointers to functions can be called as a regular PHP closure, e.g. $cdata()  Any C data can be duplicated using the clone operator, e.g. $cdata2 = clone $cdata;  Any C data can be visualized using <strong>var_dump()</strong>, <strong>print_r()</strong>, etc.   Notable limitations are that <class>FFI\CData</class> instances do not support <strong>isset()</strong>, <strong>empty()</strong> and <strong>unset()</strong>, and that wrapped C structs and unions do not implement Traversable.
  
  C data of scalar types can be read and assigned via the $cdata property, e.g.  $x =
  FFI::new('int'); $x-&gt;cdata = 42;
  
  C struct and union fields can be accessed as regular PHP object property, e.g. $cdata-&gt;field
  
  C array elements can be accessed as regular PHP array elements, e.g. $cdata[$offset]
  
  C arrays can be iterated using foreach statements.
  
  C arrays can be used as arguments of <strong>count()</strong>.
  
  C pointers can be dereferenced as arrays, e.g. $cdata[0]
  
  C pointers can be compared using regular comparison operators (\<, \<=, ==, !=, &gt;=, &gt;).
  
  C pointers can be incremented and decremented using regular +/-/ ++/–- operations, e.g. $cdata +=
  5
  
  C pointers can be subtracted from another using regular - operations.
  
  C pointers to functions can be called as a regular PHP closure, e.g. $cdata()
  
  Any C data can be duplicated using the clone operator, e.g. $cdata2 = clone $cdata;
  
  Any C data can be visualized using <strong>var_dump()</strong>, <strong>print_r()</strong>, etc.
  
  Notable limitations are that <class>FFI\CData</class> instances do not support <strong>isset()</strong>, <strong>empty()</strong> and <strong>unset()</strong>, and
  that wrapped C structs and unions do not implement Traversable.


id: FFI\CType::getAlignment
type: function
doc:
<comment>Description:</comment>
  Description
  
  Esta función
  no está documentada actualmente, solamente se encuentra disponible la lista de parámetros.

<comment>Return:</comment>
  <info>int</info>  


id: FFI\CType::getArrayElementType
type: function
doc:
<comment>Description:</comment>
  Description
  
  Esta función
  no está documentada actualmente, solamente se encuentra disponible la lista de parámetros.

<comment>Return:</comment>
  <info>FFI\CType</info>  


id: FFI\CType::getFuncParameterType
type: function
doc:
<comment>Description:</comment>
  Description
  
  Esta función
  no está documentada actualmente, solamente se encuentra disponible la lista de parámetros.

<comment>Param:</comment>
  <info>int</info>  <strong>$index</strong>  

<comment>Return:</comment>
  <info>FFI\CType</info>  


id: FFI\CType::getName
type: function
doc:
<comment>Description:</comment>
  Description
  
  Esta función
  no está documentada actualmente, solamente se encuentra disponible la lista de parámetros.

<comment>Return:</comment>
  <info>string</info>  


id: FFI\CType::getStructFieldNames
type: function
doc:
<comment>Description:</comment>
  Description
  
  Esta función
  no está documentada actualmente, solamente se encuentra disponible la lista de parámetros.

<comment>Return:</comment>
  <info>array</info>  


id: FFI\CType::getStructFieldOffset
type: function
doc:
<comment>Description:</comment>
  Description
  
  Esta función
  no está documentada actualmente, solamente se encuentra disponible la lista de parámetros.

<comment>Param:</comment>
  <info>string</info>  <strong>$name</strong>  

<comment>Return:</comment>
  <info>int</info>  


id: FFI\CType::getStructFieldType
type: function
doc:
<comment>Description:</comment>
  Description
  
  Esta función
  no está documentada actualmente, solamente se encuentra disponible la lista de parámetros.

<comment>Param:</comment>
  <info>string</info>  <strong>$name</strong>  

<comment>Return:</comment>
  <info>FFI\CType</info>  


id: FILEINFO_COMPRESS
type: constant
doc:
<comment>Description:</comment>
  Descomprimir ficheros comprimidos.
  
  Desactivado desde PHP 5.3.0 por razones de seguridad.


id: FILEINFO_DEVICES
type: constant
doc:
<comment>Description:</comment>
  Busca en el contenido por bloques o carácteres especiales de dispositivos.


id: FILEINFO_MIME_ENCODING
type: constant
doc:
<comment>Description:</comment>
  Devuelve la codificación mime del fichero.
  
  Disponible desde PHP 5.3.0.


id: FILEINFO_RAW
type: constant
doc:
<comment>Description:</comment>
  No traducir carácteres no imprimibles como <return>\ooo</return> a  representación octal.


id: FILE_BINARY
type: constant
doc:
<comment>Description:</comment>
  Modo binario (desde PHP 5.2.7).  Esta constante no tiene efecto y sólo esta disponible por
  <return>compatibiidad de versiones posteriores</return>.
  
  Esta constante no tiene efecto y sólo esta disponible por <return>compatibiidad de versiones posteriores</return>.


id: FILE_TEXT
type: constant
doc:
<comment>Description:</comment>
  Modo texto (desde PHP 5.2.7).  Esta constante no tiene efecto y sólo esta disponible por
  <return>compatibilidad de versiones posteriores</return>.
  
  Esta constante no tiene efecto y sólo esta disponible por <return>compatibilidad de versiones posteriores</return>.


id: FILTER_DEFAULT
type: constant
doc:
<comment>Description:</comment>
  ID del filtro ("unsafe_raw"). Equivale a <info>FILTER_UNSAFE_RAW</info>.


id: FILTER_FLAG_ALLOW_HEX
type: constant
doc:
<comment>Description:</comment>
  Permitir la notación hexadecimal (<return>0x[0-9a-fA-F]+</return>) en el filtro "int".


id: FILTER_FLAG_ALLOW_OCTAL
type: constant
doc:
<comment>Description:</comment>
  Permitir la notación octal (<return>0[0-7]+</return>) en el filtro "int".


id: FILTER_FLAG_ALLOW_SCIENTIFIC
type: constant
doc:
<comment>Description:</comment>
  Permitir la notación científica (<return>e</return>, <return>E</return>) en el filtro "number_float".


id: FILTER_FLAG_ALLOW_THOUSAND
type: constant
doc:
<comment>Description:</comment>
  Permitir el separador de miles (<return>,</return>) en el filtro "number_float".


id: FILTER_VALIDATE_MAC
type: constant
doc:
<comment>Description:</comment>
  ID del filtro "validate_mac_address". (Disponible a partir de PHP 5.5.0)


id: FNM_CASEFOLD
type: constant
doc:
<comment>Description:</comment>
  Comparación insensible a mayúsculas-minúsculas. Parte de la extensión GNU.


id: FNM_PERIOD
type: constant
doc:
<comment>Description:</comment>
  Un punto en una cadena debe coincidir exactamente con otro en el patrón dado.


id: FTP_AUTORESUME
type: constant
doc:
<comment>Description:</comment>
  Determina automáticamente la posición de continuación y la posición de comienzo para peticiones
  GET y PUT (sólo funciona si FTP_AUTOSEEK está habilitado)


id: FT_INTERNAL
type: constant
doc:
<comment>Description:</comment>
  La cadena devuelta está en formato interno, no se canonizará a CRLF.


id: FUNCTION_POLYNOMIAL
type: constant
doc:
<comment>Description:</comment>
  Esta constante está disponible si Imagick ha sido compilado con ImageMagick en su versión  6.4.9 o
  superior.


id: Fiber
type: class
doc:
<comment>Description:</comment>
  Fibers represent full-stack, interruptible functions. Fibers may be suspended from anywhere in the
  call-stack, pausing execution within the fiber until the fiber is resumed at a later time.


id: Fiber::__construct
type: function
doc:
<comment>Description:</comment>
  Creates a new Fiber instance

<comment>Param:</comment>
  <info>callable</info>  <strong>$callback</strong>  The <info>callable</info> to invoke when starting the fiber. Arguments given to
                       Fiber::start will be provided as arguments to the given callable.


id: Fiber::getCurrent
type: function
doc:
<comment>Description:</comment>
  Gets the currently executing Fiber instance

<comment>Return:</comment>
  <info>Fiber|null</info>  Returns the currently executing <class>Fiber</class> instance or <info>null</info> if this method is called from
              outside a fiber.


id: Fiber::getReturn
type: function
doc:
<comment>Description:</comment>
  Gets the value returned by the Fiber

<comment>Return:</comment>
  <info>mixed</info>  Returns the value returned by the <info>callable</info> provided to Fiber::__construct. If the fiber has
         not returned a value, either because it has not been started, has not terminated, or threw
         an exception, a <class>FiberError</class> will be thrown.


id: Fiber::isRunning
type: function
doc:
<comment>Description:</comment>
  Determines if the fiber is running

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> only if the fiber is running. A fiber is considered running after a call to
        Fiber::start, Fiber::resume, or Fiber::throw that has not yet returned. Return <info>false</info> if the
        fiber is not running.


id: Fiber::isStarted
type: function
doc:
<comment>Description:</comment>
  Determines if the fiber has started

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> only after the fiber has been started; otherwise <info>false</info> is returned.


id: Fiber::isSuspended
type: function
doc:
<comment>Description:</comment>
  Determines if the fiber is suspended

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if the fiber is currently suspended; otherwise <info>false</info> is returned.


id: Fiber::isTerminated
type: function
doc:
<comment>Description:</comment>
  Determines if the fiber has terminated

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> only after the fiber has terminated, either by returning or throwing an
        exception; otherwise <info>false</info> is returned.


id: Fiber::resume
type: function
doc:
<comment>Description:</comment>
  Resumes execution of the fiber with a value
  
  Resumes the fiber using the given value as the result of the current Fiber::suspend call.
  
  If the fiber is not suspended when this method is called, a <class>FiberError</class> will be thrown.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$value</strong>  The value to resume the fiber. This value will be the return value of the current
                 Fiber::suspend call.

<comment>Return:</comment>
  <info>mixed</info>  The value provided to the next call to Fiber::suspend or <info>null</info> if the fiber returns. If the
         fiber throws an exception before suspending, it will be thrown from the call to this
         method.


id: Fiber::start
type: function
doc:
<comment>Description:</comment>
  Start execution of the fiber
  
  A variadic list of arguments to provide to the callable used when constructing the fiber.
  
  If the fiber has already been started when this method is called, a <class>FiberError</class> will be thrown.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$args</strong>  The arguments to use when invoking the callable given to the fiber constructor.

<comment>Return:</comment>
  <info>mixed</info>  The value provided to the first call to Fiber::suspend or <info>null</info> if the fiber returns. If the
         fiber throws an exception before suspending, it will be thrown from the call to this
         method.


id: Fiber::suspend
type: function
doc:
<comment>Description:</comment>
  Suspends execution of the current fiber
  
  Suspends execution of the current fiber. The value provided to this method will be returned from
  the call to Fiber::start, Fiber::resume, or Fiber::throw that switched execution into the current
  fiber.
  
  When the fiber is resumed, this method returns the value provided to Fiber::resume. If the fiber
  is resumed using Fiber::throw, the exception given to that method will be thrown from the call to
  this method.
  
  If this method is called from outside a fiber, a <class>FiberError</class> will be thrown.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$value</strong>  The value to return from the call to Fiber::start, Fiber::resume, or Fiber::throw
                 that switched execution into the current fiber.

<comment>Return:</comment>
  <info>mixed</info>  The value provided to Fiber::resume.


id: Fiber::throw
type: function
doc:
<comment>Description:</comment>
  Resumes execution of the fiber with an exception
  
  Resumes the fiber by throwing the given exception from the current Fiber::suspend call.
  
  If the fiber is not suspended when this method is called, a <class>FiberError</class> will be thrown.

<comment>Param:</comment>
  <info>Throwable</info>  <strong>$exception</strong>  The exception to throw into the fiber from the current Fiber::suspend call.

<comment>Return:</comment>
  <info>mixed</info>  The value provided to the next call to Fiber::suspend or <info>null</info> if the fiber returns. If the
         fiber throws an exception before suspending, it will be thrown from the call to this
         method.


id: FilesystemIterator::CURRENT_AS_FILEINFO
type: constant
doc:
<comment>Description:</comment>
  Hace que FilesystemIterator::current devuelva una instancia de <class>SplFileInfo</class> .


id: FilesystemIterator::CURRENT_AS_PATHNAME
type: constant
doc:
<comment>Description:</comment>
  Hace que FilesystemIterator::current devuelva el nombre de la ruta.


id: FilesystemIterator::CURRENT_AS_SELF
type: constant
doc:
<comment>Description:</comment>
  Hace que FilesystemIterator::current devuelva $this (el objeto FilesystemIterator).


id: FilesystemIterator::FOLLOW_SYMLINKS
type: constant
doc:
<comment>Description:</comment>
  Hace que RecursiveDirectoryIterator::hasChildren siga enlaces simbólicos.


id: FilesystemIterator::NEW_CURRENT_AND_KEY
type: constant
doc:
<comment>Description:</comment>
  Igual que <return>FilesystemIterator::KEY_AS_FILENAME | FilesystemIterator::CURRENT_AS_FILEINFO</return>.


id: FilesystemIterator::SKIP_DOTS
type: constant
doc:
<comment>Description:</comment>
  Ignora los ficheros punto (<return>.</return> y <return>..</return>).


id: FilesystemIterator::UNIX_PATHS
type: constant
doc:
<comment>Description:</comment>
  Hace que las rutas usen la barra hacia adelante del estilo Unix independientemente de la
  predeterminada del sistema. Observe que la ruta <strong>$path</strong> pasada al constructor no se modifica.


id: FilesystemIterator::__construct
type: function
doc:
<comment>Description:</comment>
  Construye un nuevo iterador filesystem
  
  Construir un nuevo iterador filesystem a partir del <strong>$path</strong>.

<comment>Param:</comment>
  <info>string</info>  <strong>$path</strong>   la ruta de el elemento filesystem a iterar.
  <info>int</info>     <strong>$flags</strong>  Los flags pueden ser proporcionados para afectar el comportamiento de algunos
                  métodos. Una lista de flags puede ser vista en  constantes predefinidas
                  FilesystemIterator.  Estos pueden ser establecidos después con
                  FilesystemIterator::setFlags

<comment>Return:</comment>
  <info>unknown</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * FilesystemIterator::setFlags
   * DirectoryIterator::__construct


id: FilesystemIterator::current
type: function
doc:
<comment>Description:</comment>
  El fichero actual
  
  Obtiene información de fichero del elemento actual.

<comment>Return:</comment>
  <info>mixed</info>  El nombre del fichero, información del fichero, o $this dependiendo de los indicadores
         establecidos. Véase las constantes de FilesystemIterator.

<comment>See Also:</comment>
   * Las constantes de FilesystemIterator
   * DirectoryIterator::current
   * DirectoryIterator::getFileName


id: FilesystemIterator::getFlags
type: function
doc:
<comment>Description:</comment>
  Obtiene el manejo de flags
  
  Obtener el manejo de flags, como está establecido en FilesystemIterator::__construct o
  FilesystemIterator::setFlags.

<comment>Return:</comment>
  <info>int</info>  Un valor integer con las flags establecidas.

<comment>See Also:</comment>
   * FilesystemIterator::__construct
   * FilesystemIterator::setFlags


id: FilesystemIterator::key
type: function
doc:
<comment>Description:</comment>
  Recupera la clave del fichero actual

<comment>Return:</comment>
  <info>string</info>  Devuelve el nombre de la ruta o el nombre del fichero dependiendo de las flags
          establecidas. Véase las constantes FilesystemIterator.

<comment>See Also:</comment>
   * constantes FilesystemIterator
   * DirectoryIterator::key
   * DirectoryIterator::getFilename
   * DirectoryIterator::getPathname


id: FilesystemIterator::next
type: function
doc:
<comment>Description:</comment>
  Moverse al siguiente fichero
  
  Moverse al siguiente fichero.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * DirectoryIterator::next


id: FilesystemIterator::rewind
type: function
doc:
<comment>Description:</comment>
  Rebobina hasta volver al inicio
  
  Rebobinar el directorio hasta volver al inicio.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * DirectoryIterator::rewind


id: FilesystemIterator::setFlags
type: function
doc:
<comment>Description:</comment>
  Establece las flags de manejo
  
  Establecer las flags de manejo.

<comment>Param:</comment>
  <info>int</info>  <strong>$flags</strong>  las flags de manejo a establecer. Véase las constantes FilesystemIterator.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * FilesystemIterator::__construct
   * FilesystemIterator::getFlags


id: FilterIterator
type: class
doc:
<comment>Description:</comment>
  Este iterador abstracto filtra valores no deseados. Esta clase debería ser ampliada para
  implementar filtros personalizados. FilterIterator::accept debe ser implementado en la subclase.


id: FilterIterator::__construct
type: function
doc:
<comment>Description:</comment>
  Construye un filterIterator
  
  Construir un nuevo <class>FilterIterator</class>, que consiste en  pasar un <strong>$iterator</strong> y aplicar varios filtros a
  este.
  
  Esta función
  no está documentada actualmente, solamente se encuentra disponible la lista de parámetros.

<comment>Param:</comment>
  <info>Iterator</info>  <strong>$iterator</strong>  El iterador que va a ser filtrado.

<comment>Return:</comment>
  <info>unknown</info>  The <class>FilterIterator</class>.

<comment>See Also:</comment>
   * LimitIterator::__construct


id: FilterIterator::accept
type: function
doc:
<comment>Description:</comment>
  Comprueba si el elemento actual del iterador es aceptable
  
  Devuelve si el elemento actual del iterador es aceptable a través de este filtro.

<comment>Return:</comment>
  <info>bool</info>  <info>true</info> si el elemento actual es aceptable, o <info>false</info> en caso contrario.


id: FilterIterator::current
type: function
doc:
<comment>Description:</comment>
  Obtiene el valor del elemento actual
  
  Esta función
  no está documentada actualmente, solamente se encuentra disponible la lista de parámetros.
  
  obtiene el valor del elemento actual.

<comment>Return:</comment>
  <info>mixed</info>  El valor del elemento actual.

<comment>See Also:</comment>
   * <strong>FilterIterator::key()</strong>
   * <strong>FilterIterator::next()</strong>


id: FilterIterator::key
type: function
doc:
<comment>Description:</comment>
  Obtiene la clave actual
  
  Esta función
  no está documentada actualmente, solamente se encuentra disponible la lista de parámetros.
  
  Obtiene la clave actual.

<comment>Return:</comment>
  <info>mixed</info>  La clave actual.

<comment>See Also:</comment>
   * <strong>FilterIterator::next()</strong>
   * <strong>FilterIterator::current()</strong>


id: FilterIterator::next
type: function
doc:
<comment>Description:</comment>
  Mueve el iterador a la siguiente posición
  
  Esta función
  no está documentada actualmente, solamente se encuentra disponible la lista de parámetros.
  
  Mover el iterador a la siguiente posición.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * <strong>FilterIterator::current()</strong>
   * <strong>FilterIterator::key()</strong>


id: FilterIterator::rewind
type: function
doc:
<comment>Description:</comment>
  Rebobina el iterador
  
  Esta función
  no está documentada actualmente, solamente se encuentra disponible la lista de parámetros.
  
  Rebobinar el iterador.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.

<comment>See Also:</comment>
   * <strong>FilterIterator::current()</strong>
   * <strong>FilterIterator::key()</strong>
   * <strong>FilterIterator::next()</strong>


id: FilterIterator::valid
type: function
doc:
<comment>Description:</comment>
  Comprueba si el elemento actual es válido
  
  Esta función
  no está documentada actualmente, solamente se encuentra disponible la lista de parámetros.
  
  Comprobar si el elemento actual es válido.

<comment>Return:</comment>
  <info>bool</info>  <info>true</info> si el elemento actual es válido, en caso contrario <info>false</info>


id: GD_BUNDLED
type: constant
doc:
<comment>Description:</comment>
  Cuando se usa la versión incluida de GD, esto es 1, de otro modo se establece a 0.


id: GD_EXTRA_VERSION
type: constant
doc:
<comment>Description:</comment>
  La versión "extra" (beta/rc..) de GD que fue compilada en PHP. (Disponible a partir de PHP 5.2.4)


id: GD_MAJOR_VERSION
type: constant
doc:
<comment>Description:</comment>
  La versión mayor de GD que fue compilada en PHP. (Disponible a partir de PHP 5.2.4)


id: GD_MINOR_VERSION
type: constant
doc:
<comment>Description:</comment>
  La versión menor de GD que fue compilada en PHP. (Disponible a partir de PHP 5.2.4)


id: GD_RELEASE_VERSION
type: constant
doc:
<comment>Description:</comment>
  La versión de distribución de GD que fue compilada en PHP. (Disponible a partir de PHP 5.2.4)


id: GD_VERSION
type: constant
doc:
<comment>Description:</comment>
  La versión de GD que fue compilada en PHP. (Disponible a partir de PHP 5.2.4)


id: GEARMAN_CLIENT_FREE_TASKS
type: constant
doc:
<comment>Description:</comment>
  Liberar automáticamente objetos una vez que se han completado. Esta es la opción por defecto en
  esta extensión para intentar evitar pérdidas de memoria.


id: GEARMAN_CLIENT_UNBUFFERED_RESULT
type: constant
doc:
<comment>Description:</comment>
  Permite al cliente leer datos en bloques en vez de tener en el buffer el resultado completo y
  pasarlo.


id: GEARMAN_ECHO_DATA_CORRUPTION
type: constant
doc:
<comment>Description:</comment>
  Tras GearmanClient::echo o GearmanWorker::echo, los datos retornados no coinciden con los datos
  enviados.


id: GEARMAN_ERRNO
type: constant
doc:
<comment>Description:</comment>
  Error del sistema. Comprobar GearmanClient::errno o GearmanWorker::errno para obtener el código de
  error del sistema que se ha retornado.


id: GEARMAN_INVALID_FUNCTION_NAME
type: constant
doc:
<comment>Description:</comment>
  Intento de registrar el nombre de una función como NULL o uso de funciones de llamadas de retorno
  sin especificarlas correctamente.


id: GEARMAN_INVALID_WORKER_FUNCTION
type: constant
doc:
<comment>Description:</comment>
  Intento de registrar una funcionón con un NULL en la función de llamada de retorno.


id: GEARMAN_NEED_WORKLOAD_FN
type: constant
doc:
<comment>Description:</comment>
  Cuando el cliente optó por enviar la carga de trabajo de una tarea pero no especificó la función
  de retorno para la carga de trabajo.


id: GEARMAN_NO_ACTIVE_FDS
type: constant
doc:
<comment>Description:</comment>
  Se ha llamado a GearmanClient::wait o GearmanWorker sin una conexión.


id: GEARMAN_NO_JOBS
type: constant
doc:
<comment>Description:</comment>
  Para un trabajador no bloqueante, cuando GearmanWorker::work no tiene ningún trabajo activo.


id: GEARMAN_NO_REGISTERED_FUNCTIONS
type: constant
doc:
<comment>Description:</comment>
  Cuando un trabajador obtiene un trabajo para una función que no registró.


id: GEARMAN_NO_SERVERS
type: constant
doc:
<comment>Description:</comment>
  No se ha llamado a GearmanClient::addServer antes de enviar trabajos o tareas.


id: GEARMAN_PAUSE
type: constant
doc:
<comment>Description:</comment>
  Para el interfaz de tarea no bloqueante, puede ser retornada por la tarea para "pausar" la llamada
  y retornar de GearmanClient::runTasks. Debe llamarse a GearmanClient::runTasks de nuevo para
  continuar.


id: GEARMAN_SEND_BUFFER_TOO_SMALL
type: constant
doc:
<comment>Description:</comment>
  Error interno: intento de enviar más información de la que es posible en un trozo atómico debido a
  los tamaños (definidos en código) de los buffers.


id: GEARMAN_SERVER_ERROR
type: constant
doc:
<comment>Description:</comment>
  Algo ha fallado en el servidor Gearman y no ha podido manejar la petición correctamente.


id: GEARMAN_TIMEOUT
type: constant
doc:
<comment>Description:</comment>
  Se alcazó el límite te tiempo establecido por el cliente/trabajador.


id: GEARMAN_UNEXPECTED_PACKET
type: constant
doc:
<comment>Description:</comment>
  Indica que algo ha ido mal en gearmand. Se aplica sólo a  <class>GearmanWorker</class>.


id: GEARMAN_WORKER_GRAB_UNIQ
type: constant
doc:
<comment>Description:</comment>
  Retirna el identificador único asignado al cliente además del manejador del trabajo.


id: GEARMAN_WORK_DATA
type: constant
doc:
<comment>Description:</comment>
  Código de error de tipo Notice obtenido con GearmanClient::returnCode cuando se usa
  GearmanClient::do. Enviado para actualizar el cliente con datos del trabajo que se está
  ejecutando. Un trabajador lo usa cuando necesita enviar actualizaciones, enviar resultandos
  parciales o enviar datos en trabajos de larga duración.


id: GEARMAN_WORK_EXCEPTION
type: constant
doc:
<comment>Description:</comment>
  Código de error de tipo Notice obtenido con GearmanClient::returnCode cuando se usa
  GearmanClient::do. Indica que el trabajo ha fallado dando una excepción. with a given exception.


id: GEARMAN_WORK_FAIL
type: constant
doc:
<comment>Description:</comment>
  Código de error de tipo Notice obtenido con GearmanClient::returnCode cuando se usa
  GearmanClient::do. Indica que el trabajo ha fallado.


id: GEARMAN_WORK_STATUS
type: constant
doc:
<comment>Description:</comment>
  Código de error de tipo Notice obtenido con GearmanClient::returnCode cuando se usa
  GearmanClient::do. Enviado para actualizar el estado de un proceso de larga duración. Usar
  GearmanClient::doStatus para obtener el porcentaje de tarea completada.


id: GEARMAN_WORK_WARNING
type: constant
doc:
<comment>Description:</comment>
  Código de error de tipo Notice obtenido con GearmanClient::returnCode cuando se usa
  GearmanClient::do. Actualiza el cliente con un warning. Este comportamiento es como
  <info>GEARMAN_WORK_DATA</info> pero debe ser tratado como un warning en vez de datos de respuesta.


id: GMP
type: class
doc:
<comment>Description:</comment>
  Un número GMP. Estos objetos admiten los operadores aritméticos, a nivel de bit y de comparación
  sobrecargados.
  
  No se proporciona ninguna interfaz orientada a objetos para manipular objetos <class>GMP</class>. Use la API de
  GMP procedimental.


id: GearmanClient
type: class
doc:
<comment>Description:</comment>
  Representa una clase para conectar a un servidor de trabajos Gearman y realizar peticiones para
  ejecutar alguna función con los datos proporcionados. La función ejecutada debe ser una de las
  registradas por un trabajador Gearman y los datos que se pasan son opacos al servidor de trabajos.


id: GearmanClient::__construct
type: function
doc:
<comment>Description:</comment>
  Crea una instancia de GearmanClient
  
  Crea una instancia de <class>GearmanClient</class> que representa un cliente que conecta al servidor de trabajos
  y envía tareas para que sean completadas

<comment>Return:</comment>
  <info>unknown</info>  Un objeto <class>GearmanClient</class>.

<comment>See Also:</comment>
   * GearmanClient::clone


id: GearmanClient::addOptions
type: function
doc:
<comment>Description:</comment>
  Añade opciones al cliente
  
  Añade una o más opciones a las que hay actualmente.

<comment>Param:</comment>
  <info>int</info>  <strong>$options</strong>  Opciones a añadir

<comment>Return:</comment>
  <info>bool</info>  Siempre retorna <info>true</info>.


id: GearmanClient::addServer
type: function
doc:
<comment>Description:</comment>
  Añade un servidor de trabajos al cliente
  
  Añade un servidor de trabajos a la lista de servidores que pueden usarse para ejecutar una tarea.
  No hay tráfico de entrada y salida vía socket en este punto; el servidor simplemente es añadido a
  la lista.

<comment>Param:</comment>
  <info>string</info>  <strong>$host</strong>  Nombre del host del job server.
  <info>int</info>     <strong>$port</strong>  Puerto del job server.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * GearmanClient::addServers


id: GearmanClient::addServers
type: function
doc:
<comment>Description:</comment>
  Añade una lista de servidores de trabajos al cliente
  
  Añade una lista de servidores de trabajos que puede usarse para ejecutar una tarea. No se realiza
  ninguna actividad de entrada y salida sobre el socket; los servidores únicamente se añaden a la
  lista completa de servidores.

<comment>Param:</comment>
  <info>string</info>  <strong>$servers</strong>  Una lista separadas por comas de servidores, cada servidor especificado en el
                    formato '<return>host:port</return>'.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * GearmanClient::addServer


id: GearmanClient::addTask
type: function
doc:
<comment>Description:</comment>
  Añade una tarea para ser ejecutada en paralelo
  
  Añade una tarea para ser ejecutada en paralelo con otras tareas. Debe llamarse a este método en
  todas las tareas que van a ejecutarse en paralelo y, entonces, llamar a GearmanClient::runTasks
  para realizar el trabajo. Notar que se necesitan al menos tantos trabajadores como tareas para que
  puedan ejecutarse todos en paralelo de forma simultánea.

<comment>Param:</comment>
  <info>string</info>  <strong>$function_name</strong>  Función registrada que ejecutará el worker
  <info>string</info>  <strong>$workload</strong>       Datos serializados a ser procesados
  <info>mixed</info>   <strong>$context</strong>        Aplicación context a asociar con la tarea
  <info>string</info>  <strong>$unique</strong>         ID único para identificar una tarea en particular

<comment>Return:</comment>
  <info>GearmanTask</info>  Un objeto <class>GearmanTask</class> o <info>false</info> si no se puede añadir la tarea.

<comment>See Also:</comment>
   * GearmanClient::addTaskHigh
   * GearmanClient::addTaskLow
   * GearmanClient::addTaskBackground
   * GearmanClient::addTaskHighBackground
   * GearmanClient::addTaskLowBackground
   * GearmanClient::runTasks


id: GearmanClient::addTaskBackground
type: function
doc:
<comment>Description:</comment>
  Ejecuta una tarea en segundo plano para ser ejecutada en paralelo
  
  Añade una tarea en segundo plano para ser ejecutada en paralelo junto con otras tareas. Este
  método debe llamarse para todas las tareas que deben ejecutarse en paralelo y entonces llamar a
  GearmanClient::runTasks para realizar el trabajo.

<comment>Param:</comment>
  <info>string</info>  <strong>$function_name</strong>  Función registrada que ejecutará el worker
  <info>string</info>  <strong>$workload</strong>       Datos serializados a ser procesados
  <info>mixed</info>   <strong>$context</strong>        Aplicación context a asociar con la tarea
  <info>string</info>  <strong>$unique</strong>         ID único para identificar una tarea en particular

<comment>Return:</comment>
  <info>GearmanTask</info>  Un objeto <class>GearmanTask</class> o <info>false</info> si la tarea no pudo ser añadida.

<comment>See Also:</comment>
   * GearmanClient::addTask
   * GearmanClient::addTaskHigh
   * GearmanClient::addTaskLow
   * GearmanClient::addTaskHighBackground
   * GearmanClient::addTaskLowBackground
   * GearmanClient::runTasks


id: GearmanClient::addTaskHigh
type: function
doc:
<comment>Description:</comment>
  Añade una tarea de alta prioridad para ser ejecutada en paralelo
  
  Añade una tarea de alta prioridad para ser ejecutada en paralelo junto con otras tareas. Este
  método debe llamarse para todas las tareas de alta prioridad que se deben ejecutar en paralelo y
  entonces llamar a GearmanClient::runTasks para realizar el trabajo. Tareas con una alta prioridad
  se seleccionarán de la cola antes de las que tienen prioridad normal o baja.

<comment>Param:</comment>
  <info>string</info>  <strong>$function_name</strong>  Función registrada que ejecutará el worker
  <info>string</info>  <strong>$workload</strong>       Datos serializados a ser procesados
  <info>mixed</info>   <strong>$context</strong>        Aplicación context a asociar con la tarea
  <info>string</info>  <strong>$unique</strong>         ID único para identificar una tarea en particular

<comment>Return:</comment>
  <info>GearmanTask</info>  Un objeto <class>GearmanTask</class> o <info>false</info> si no se puedo añadir la tarea

<comment>See Also:</comment>
   * GearmanClient::addTask
   * GearmanClient::addTaskLow
   * GearmanClient::addTaskBackground
   * GearmanClient::addTaskHighBackground
   * GearmanClient::addTaskLowBackground
   * GearmanClient::runTasks


id: GearmanClient::addTaskHighBackground
type: function
doc:
<comment>Description:</comment>
  Añade una tarea de alta prioridad ejecutada en segundo plano y en paralelo
  
  Añade una tarea de alta prioridad en segundo plano para ejecutar en paralelo junto con otras
  tareas. Debe llamarse a este método para todas las tareas que se ejecutan en paralelo y entonces
  llamar a GearmanClient::runTasks para realizar el trabajo. Tareas con una alta prioridad se
  seleccionarán de la cola antes que las tareas de prioridad normal o baja.

<comment>Param:</comment>
  <info>string</info>  <strong>$function_name</strong>  Función registrada que ejecutará el worker
  <info>string</info>  <strong>$workload</strong>       Datos serializados a ser procesados
  <info>mixed</info>   <strong>$context</strong>        Aplicación context a asociar con la tarea
  <info>string</info>  <strong>$unique</strong>         ID único para identificar una tarea en particular

<comment>Return:</comment>
  <info>GearmanTask</info>  Un objeto <class>GearmanTask</class> o <info>false</info> si la tarea no puede ser añadida.

<comment>See Also:</comment>
   * GearmanClient::addTask
   * GearmanClient::addTaskHigh
   * GearmanClient::addTaskLow
   * GearmanClient::addTaskBackground
   * GearmanClient::addTaskLowBackground
   * GearmanClient::runTasks


id: GearmanClient::addTaskLow
type: function
doc:
<comment>Description:</comment>
  Añade una tarea de baja prioridad para ejecutar en paralelo
  
  Añade una tarea de baja prioridad en segundo plano para ejecutar en paralelo junto con otras
  tareas. Debe llamarse a este método para todas las tareas que se ejecutan en paralelo y entonces
  llamar a GearmanClient::runTasks para realizar el trabajo. Tareas con una baja prioridad se
  seleccionarán de la cola después de las tareas de prioridad normal o alta.

<comment>Param:</comment>
  <info>string</info>  <strong>$function_name</strong>  Función registrada que ejecutará el worker
  <info>string</info>  <strong>$workload</strong>       Datos serializados a ser procesados
  <info>mixed</info>   <strong>$context</strong>        Aplicación context a asociar con la tarea
  <info>string</info>  <strong>$unique</strong>         ID único para identificar una tarea en particular

<comment>Return:</comment>
  <info>GearmanTask</info>  Un objeto <class>GearmanTask</class> o <info>false</info> si la tarea no puede ser añadida.

<comment>See Also:</comment>
   * GearmanClient::addTask
   * GearmanClient::addTaskHigh
   * GearmanClient::addTaskBackground
   * GearmanClient::addTaskHighBackground
   * GearmanClient::addTaskLowBackground
   * GearmanClient::runTasks


id: GearmanClient::addTaskLowBackground
type: function
doc:
<comment>Description:</comment>
  Añade una tarea de baja prioridad en segundo plano para ser
      ejecutada en paralelo
    
  
  Añade una tarea de prioridad baja en segundo plano para ser ejecutada en paralelo junto a otras
  tareas. Debe llamarse a este método para todas las tareas que se ejecutan en paralelo y entonces
  llamar a GearmanClient::runTasks para realizar el trabajo. Tareas con una baja prioridad se
  seleccionarán de la cola después de las tareas de prioridad normal o alta.

<comment>Param:</comment>
  <info>string</info>  <strong>$function_name</strong>  Función registrada que ejecutará el worker
  <info>string</info>  <strong>$workload</strong>       Datos serializados a ser procesados
  <info>mixed</info>   <strong>$context</strong>        Aplicación context a asociar con la tarea
  <info>string</info>  <strong>$unique</strong>         ID único para identificar una tarea en particular

<comment>Return:</comment>
  <info>GearmanTask</info>  Un objeto <class>GearmanTask</class> o <info>false</info> si la tarea no puede ser añadida.

<comment>See Also:</comment>
   * GearmanClient::addTask
   * GearmanClient::addTaskHigh
   * GearmanClient::addTaskLow
   * GearmanClient::addTaskBackground
   * GearmanClient::addTaskHighBackground
   * GearmanClient::runTasks


id: GearmanClient::addTaskStatus
type: function
doc:
<comment>Description:</comment>
  Añade una tarea para obtener el estado
  
  Usado para pedir información de estado del servidor Gearman que llamará a la función de retorno
  especificada (usando el método GearmanClient::setStatusCallback).

<comment>Param:</comment>
  <info>string</info>  <strong>$job_handle</strong>  Manejador de la tarea a obtener el estado
  <info>string</info>  <strong>$context</strong>     Datos a pasar en la llamada a la función de retorno para el estado,
                       generalmente una referencia a un array u objeto.

<comment>Return:</comment>
  <info>GearmanTask</info>  Un objeto <class>GearmanTask</class>.

<comment>See Also:</comment>
   * GearmanClient::setStatusCallback


id: GearmanClient::clearCallbacks
type: function
doc:
<comment>Description:</comment>
  Elimina todas las funciones de retorno de llamada
  
  Elimina todas las funciones de retorno de llamada establecidas anteriormente.

<comment>Return:</comment>
  <info>bool</info>  Retorna siempre <info>true</info>.

<comment>See Also:</comment>
   * GearmanClient::setDataCallback
   * GearmanClient::setCompleteCallback
   * GearmanClient::setCreatedCallback
   * GearmanClient::setExceptionCallback
   * GearmanClient::setFailCallback
   * GearmanClient::setStatusCallback
   * GearmanClient::setWarningCallback
   * GearmanClient::setWorkloadCallback


id: GearmanClient::clone
type: function
doc:
<comment>Description:</comment>
  Crea una copia de un objeto GearmanClient
  
  Crea una copia de un objeto <class>GearmanClient</class>.

<comment>Return:</comment>
  <info>GearmanClient</info>  Un <class>GearmanClient</class> en caso de éxito, <info>false</info> si hay fallo.


id: GearmanClient::context
type: function
doc:
<comment>Description:</comment>
  Obtiene el contexto de la aplicación
  
  Obtiene el contexto de la aplicación anteriormente establecido con  GearmanClient::setContext.

<comment>Return:</comment>
  <info>string</info>  La misma estructura de datos de contexto establecida con GearmanClient::setContext

<comment>See Also:</comment>
   * GearmanClient::setContext


id: GearmanClient::data
type: function
doc:
<comment>Description:</comment>
  Retorna los datos de aplicación (obsoleto)
  
  Obtiene los datos de aplicación fijados anteriormente con  GearmanClient::setData.
  
  Este método fue reemplazado por  GearmanClient::setContext en la versión 0.6.0 de la extensión
  Gearman.

<comment>Return:</comment>
  <info>string</info>  El mismo string de datos que fue establecido con GearmanClient::setData

<comment>See Also:</comment>
   * GearmanClient::setData


id: GearmanClient::do
type: function
doc:
<comment>Description:</comment>
  Ejecuta una sola tarea y retorna el resultado [obsoleto]
  
  El método GearmanClient::do es obsoleto desde  pecl/gearman 1.0.0. Use GearmanClient::doNormal.

<comment>Param:</comment>
  <info>string</info>  <strong>$function_name</strong>  Función registrada que ejecutará el worker
  <info>string</info>  <strong>$workload</strong>       Datos serializados a ser procesados
  <info>string</info>  <strong>$unique</strong>         ID único para identificar una tarea en particular

<comment>Return:</comment>
  <info>string</info>  Un string representando el resultado de la tarea ejecutada.

<comment>See Also:</comment>
   * GearmanClient::doHigh
   * GearmanClient::doLow
   * GearmanClient::doBackground
   * GearmanClient::doHighBackground
   * GearmanClient::doLowBackground


id: GearmanClient::doBackground
type: function
doc:
<comment>Description:</comment>
  Ejecuta una tarea en segundo plano
  
  Ejecuta una tarea en segundo plano, retornando el manejador del trabajo que puede ser usado para
  obtener el estado de la tarea en ejecución.

<comment>Param:</comment>
  <info>string</info>  <strong>$function_name</strong>  Función registrada que ejecutará el worker
  <info>string</info>  <strong>$workload</strong>       Datos serializados a ser procesados
  <info>string</info>  <strong>$unique</strong>         ID único para identificar una tarea en particular

<comment>Return:</comment>
  <info>string</info>  El manejador de la tarea enviada.

<comment>See Also:</comment>
   * GearmanClient::doNormal
   * GearmanClient::doHigh
   * GearmanClient::doLow
   * GearmanClient::doHighBackground
   * GearmanClient::doLowBackground


id: GearmanClient::doHigh
type: function
doc:
<comment>Description:</comment>
  Ejecuta una tarea de prioridad alta
  
  Ejecuta una tarea de prioridad alta y retorna un string con el resultado. Depende de <class>GearmanClient</class>
  y <class>GearmanWorker</class> aceptar el formato del resultado Las tareas de alta prioridad se ejecutan antes
  que las de prioridad normal o baja en la cola de trabajos.

<comment>Param:</comment>
  <info>string</info>  <strong>$function_name</strong>  Función registrada que ejecutará el worker
  <info>string</info>  <strong>$workload</strong>       Datos serializados a ser procesados
  <info>string</info>  <strong>$unique</strong>         ID único para identificar una tarea en particular

<comment>Return:</comment>
  <info>string</info>  Un string representando el resultado de la tarea en ejecución.

<comment>See Also:</comment>
   * GearmanClient::doNormal
   * GearmanClient::doLow
   * GearmanClient::doBackground
   * GearmanClient::doHighBackground
   * GearmanClient::doLowBackground


id: GearmanClient::doHighBackground
type: function
doc:
<comment>Description:</comment>
  Ejecuta una tarea de alta prioridad en segundo plano
  
  Ejecuta una tarea del alta prioridad en segundo plano, retornando el manejador del trabajo que
  puede ser usado para obtener el estado de la tarea en ejecución. Las tareas de alta prioridad
  tienen preferencia sobre las de prioridad normal o baja en la cola de tareas.

<comment>Param:</comment>
  <info>string</info>  <strong>$function_name</strong>  Función registrada que ejecutará el worker
  <info>string</info>  <strong>$workload</strong>       Datos serializados a ser procesados
  <info>string</info>  <strong>$unique</strong>         ID único para identificar una tarea en particular

<comment>Return:</comment>
  <info>string</info>  El manejador del trabajo para la tarea enviada.

<comment>See Also:</comment>
   * GearmanClient::doNormal
   * GearmanClient::doHigh
   * GearmanClient::doLow
   * GearmanClient::doBackground
   * GearmanClient::doLowBackground


id: GearmanClient::doJobHandle
type: function
doc:
<comment>Description:</comment>
  Obtiene el manejador de trabajo para la tarea en ejecución
  
  Retorna el manejador de trabajo para la tarea en ejecución. Debería usarse entre llamadas
  repetidas a GearmanClient::doNormal. El manejador puede ser usado para obtener información de la
  tarea.

<comment>Return:</comment>
  <info>string</info>  El manejador de trabajo para la tarea en ejecución.

<comment>See Also:</comment>
   * GearmanClient::jobStatus


id: GearmanClient::doLow
type: function
doc:
<comment>Description:</comment>
  Ejecuta una tarea de baja prioridad
  
  Ejecuta una tarea de baja prioridad y retorna un string con el resultado. Depende de <class>GearmanClient</class>
  y <class>GearmanWorker</class> aceptar el formato del resultado. Las tareas de prioridad normal o algo  tienen
  preferencia sobre las de baja prioridad en la cola de trabajos.

<comment>Param:</comment>
  <info>string</info>  <strong>$function_name</strong>  Función registrada que ejecutará el worker
  <info>string</info>  <strong>$workload</strong>       Datos serializados a ser procesados
  <info>string</info>  <strong>$unique</strong>         ID único para identificar una tarea en particular

<comment>Return:</comment>
  <info>string</info>  Un string representando el resultado de la tarea en ejecución.

<comment>See Also:</comment>
   * GearmanClient::doNormal
   * GearmanClient::doHigh
   * GearmanClient::doBackground
   * GearmanClient::doHighBackground
   * GearmanClient::doLowBackground


id: GearmanClient::doLowBackground
type: function
doc:
<comment>Description:</comment>
  Ejecuta una tarea de prioridad baja en segundo plano
  
  Ejecuta una tarea de prioridad baja en segundo plano, retornando el manejador del trabajo que
  puede ser usado para obtener el estado de la tarea en ejecución. Las tareas de prioridad normal o
  alta tienen preferencia sobre las de baja prioridad en la cola de trabajos.

<comment>Param:</comment>
  <info>string</info>  <strong>$function_name</strong>  Función registrada que ejecutará el worker
  <info>string</info>  <strong>$workload</strong>       Datos serializados a ser procesados
  <info>string</info>  <strong>$unique</strong>         ID único para identificar una tarea en particular

<comment>Return:</comment>
  <info>string</info>  El manejador de trabajo para la tarea enviada.

<comment>See Also:</comment>
   * GearmanClient::doNormal
   * GearmanClient::doHigh
   * GearmanClient::doLow
   * GearmanClient::doBackground
   * GearmanClient::doHighBackground


id: GearmanClient::doNormal
type: function
doc:
<comment>Description:</comment>
  Ejecutar una única tarea y devolver un resultado
  
  Ejecuta una única tarea y devuelve una representación de tipo string del resultado. Es
  responsabilidad de <class>GearmanClient</class> y <class>GearmanWorker</class> ponerse de acuerdo en le formato del resultado.

<comment>Param:</comment>
  <info>string</info>  <strong>$function_name</strong>  Función registrada que ejecutará el worker
  <info>string</info>  <strong>$workload</strong>       Datos serializados a ser procesados
  <info>string</info>  <strong>$unique</strong>         ID único para identificar una tarea en particular

<comment>Return:</comment>
  <info>string</info>  Una representación de tipo string de los resultados de ejecutar una tarea.

<comment>See Also:</comment>
   * GearmanClient::doHigh
   * GearmanClient::doLow
   * GearmanClient::doBackground
   * GearmanClient::doHighBackground
   * GearmanClient::doLowBackground


id: GearmanClient::doStatus
type: function
doc:
<comment>Description:</comment>
  Obtiene el estado de la tarea en ejecución
  
  Retorna el estado para la tarea en ejecución. Debería usarse entre llamadas  repetidas a
  GearmanClient::doNormal.

<comment>Return:</comment>
  <info>array</info>  Un array representando el porcentaje completado dado como una fracción, el primer elemento
         es el numerador y el segundo es el denominador.

<comment>See Also:</comment>
   * GearmanClient::doNormal
   * GearmanJob::status


id: GearmanClient::echo
type: function
doc:
<comment>Description:</comment>
  Envía datos a todos los servidores de trabajo para ver si retornan [obsoleto]
  
  El método GearmanClient::echo es obsoleto desde  pecl/gearman 1.0.0. Use GearmanClient::ping.

<comment>Param:</comment>
  <info>string</info>  <strong>$workload</strong>  Datos arbitrarios serializados a ser retornados

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.


id: GearmanClient::error
type: function
doc:
<comment>Description:</comment>
  Retorna un string con el último error encontrado
  
  Retorna un string con el último error encontrado.

<comment>Return:</comment>
  <info>string</info>  Un string de error entendible.

<comment>See Also:</comment>
   * GearmanClient::getErrno


id: GearmanClient::getErrno
type: function
doc:
<comment>Description:</comment>
  Obtiene un valor errno
  
  Valor de errno en el caso de retornar un valor GEARMAN_ERRNO.

<comment>Return:</comment>
  <info>int</info>  Un errno de Gearman válido.

<comment>See Also:</comment>
   * GearmanClient::error


id: GearmanClient::jobStatus
type: function
doc:
<comment>Description:</comment>
  Obtiene el estado de un trabajo en segundo plano
  
  Estilo orientado a objetos (método):
  
  Obtiene el estado de un trabajo en segundo plano para un manejador de trabajo dado. La información
  de estado estecifica si el trabajo es conocido, si está ejecutandose actualmente y el porcentaje
  completado.

<comment>Param:</comment>
  <info>string</info>  <strong>$job_handle</strong>  El manipulador de la tarea asignado por el servidor Gearman

<comment>Return:</comment>
  <info>array</info>  Un array que contiene la información del estado para el trabajo correspondiente al
         manejador de trabajo indicado. El primer elemento del array es un boolean indicando si el
         trabajo es conocido, el segundo es un boolean indicando si el trabajo se está ejecutando y
         el tercer y cuarto elemento corresponden al numerador y denonimador del porcenaje de
         trabajo completado, respectivamente.

<comment>See Also:</comment>
   * GearmanClient::doStatus


id: GearmanClient::ping
type: function
doc:
<comment>Description:</comment>
  Envar datos a todos los servidores de trabajo para ver si los repiten
  
  Envía datos arbitrarios a todos los servidores de trabajo para ver si los repiten. Los datos
  enviados no se usan o se procesan de ninguna manera. Se utilizan principalmente para pruebas y
  depuración.

<comment>Param:</comment>
  <info>string</info>  <strong>$workload</strong>  Algunos datos serializados arbitrarios para que sean repetidos

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.


id: GearmanClient::removeOptions
type: function
doc:
<comment>Description:</comment>
  Elimina opciones del cliente
  
  Elimina una o más opciones.

<comment>Param:</comment>
  <info>int</info>  <strong>$options</strong>  Las opciones a ser eliminadas

<comment>Return:</comment>
  <info>bool</info>  Siempre retorna <info>true</info>.


id: GearmanClient::returnCode
type: function
doc:
<comment>Description:</comment>
  Obtiene el último código de retorno de Gearman
  
  Retorna el último código de retorno de Gearman.

<comment>Return:</comment>
  <info>int</info>  Un código de retorno válido de Gearman.


id: GearmanClient::runTasks
type: function
doc:
<comment>Description:</comment>
  Ejecuta una lista de tareas en paralelo
  
  Para un set de tareas previamente añadidas con GearmanClient::addTask, GearmanClient::addTaskHigh,
  GearmanClient::addTaskLow, GearmanClient::addTaskBackground, GearmanClient::addTaskHighBackground,
  or GearmanClient::addTaskLowBackground, esta llamada ordena comenzar la ejecución de las tareas en
  paralelo.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * GearmanClient::addTask


id: GearmanClient::setClientCallback
type: function
doc:
<comment>Description:</comment>
  Función de llamada de retorno cuando hay un paquete de datos para una tarea (obsoleto)
  
  Establece la función de llamada de retorno que acepta paquetes de datos para una tarea. La función
  de llamada de retorno debe tener un solo argumento, un objeto <class>GearmanTask</class>.
  
  Este método ha sido reemplazado por GearmanClient::setDataCallback en la versión 0.6.0 de la
  extensión Gearman..

<comment>Param:</comment>
  <info>callable</info>  <strong>$callback</strong>  Una función o método a llamar

<comment>Return:</comment>
  <info>void</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * GearmanClient::setCompleteCallback
   * GearmanClient::setCreatedCallback
   * GearmanClient::setDataCallback
   * GearmanClient::setExceptionCallback
   * GearmanClient::setFailCallback
   * GearmanClient::setStatusCallback
   * GearmanClient::setWarningCallback
   * GearmanClient::setWorkloadCallback


id: GearmanClient::setCompleteCallback
type: function
doc:
<comment>Description:</comment>
  Especifica una función a ser llamada cuando se complete una tarea
  
  Especifica una función a ser llamada cuando se complete una tarea. La función de llamada de
  retorno acepta un único argument, un objeto <class>GearmanTask</class>.

<comment>Param:</comment>
  <info>callable</info>  <strong>$callback</strong>  Función a ser llamada

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * GearmanClient::setDataCallback
   * GearmanClient::setCreatedCallback
   * GearmanClient::setExceptionCallback
   * GearmanClient::setFailCallback
   * GearmanClient::setStatusCallback
   * GearmanClient::setWarningCallback
   * GearmanClient::setWorkloadCallback


id: GearmanClient::setContext
type: function
doc:
<comment>Description:</comment>
  Establece el contexto de la aplicación
  
  Establece un string arbitrario para dar contexto a la aplicación que pueda ser posteriormente
  recuperado por GearmanClient::context.

<comment>Param:</comment>
  <info>string</info>  <strong>$context</strong>  Datos arbitrarios para el contexto

<comment>Return:</comment>
  <info>bool</info>  Retorna siempre <info>true</info>.

<comment>See Also:</comment>
   * GearmanClient::context


id: GearmanClient::setCreatedCallback
type: function
doc:
<comment>Description:</comment>
  Establece una llamada de retornopara cuando se encola una tarea
  
  Establece una función a ser llamada cuando se recibe una tarea y es encolada por el servidor de
  trabajos Gearman. La función acepta un único parámetro,  un objeto <class>GearmanClient</class>.

<comment>Param:</comment>
  <info>string</info>  <strong>$callback</strong>  Función a llamar

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * GearmanClient::setDataCallback
   * GearmanClient::setCompleteCallback
   * GearmanClient::setExceptionCallback
   * GearmanClient::setFailCallback
   * GearmanClient::setStatusCallback
   * GearmanClient::setWarningCallback
   * GearmanClient::setWorkloadCallback


id: GearmanClient::setData
type: function
doc:
<comment>Description:</comment>
  Establece los datos de aplicación (obsoleto)
  
  Establece datos arbitrarios para la aplicación que pueden ser leídos posteriormente con
  GearmanClient::data.
  
  Este método ha sido reemplazado por GearmanCient::setContext en la versión 0.6.0 de la extensión
  Gearman.

<comment>Param:</comment>
  <info>string</info>  <strong>$data</strong>  

<comment>Return:</comment>
  <info>bool</info>  Siempre retorna <info>true</info>.

<comment>See Also:</comment>
   * GearmanClient::data


id: GearmanClient::setDataCallback
type: function
doc:
<comment>Description:</comment>
  Función de llamada de retorno para cuando hay un paquete de datos para la tarea
  
  Establece la función de llamada de retorno para aceptar paquetes de datos para una tarea. La
  función acepta un único argumento, un objeto <class>GearmanTask</class>.

<comment>Param:</comment>
  <info>callable</info>  <strong>$callback</strong>  Función o método a llamar

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * GearmanClient::setCompleteCallback
   * GearmanClient::setCreatedCallback
   * GearmanClient::setExceptionCallback
   * GearmanClient::setFailCallback
   * GearmanClient::setStatusCallback
   * GearmanClient::setWarningCallback
   * GearmanClient::setWorkloadCallback


id: GearmanClient::setExceptionCallback
type: function
doc:
<comment>Description:</comment>
  Establece una llamada de retorno para excepciones del trabajador
  
  Especifica una función a llamar cuando un trabajador envía una excepción.

<comment>Param:</comment>
  <info>callable</info>  <strong>$callback</strong>  Función a llamar cuando un trabajador lanza una excepción

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * GearmanClient::setDataCallback
   * GearmanClient::setCompleteCallback
   * GearmanClient::setCreatedCallback
   * GearmanClient::setFailCallback
   * GearmanClient::setStatusCallback
   * GearmanClient::setWarningCallback
   * GearmanClient::setWorkloadCallback


id: GearmanClient::setFailCallback
type: function
doc:
<comment>Description:</comment>
  Establece una llamada de retorno para cuando falla un trabajo
  
  Establece una función de retorno a usar cuando una tarea no es completada satisfactoriamente. La
  función acepta un argumento, un objeto <class>GearmanTask</class>.

<comment>Param:</comment>
  <info>callable</info>  <strong>$callback</strong>  Función a llamar

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * GearmanClient::setDataCallback
   * GearmanClient::setCompleteCallback
   * GearmanClient::setCreatedCallback
   * GearmanClient::setExceptionCallback
   * GearmanClient::setStatusCallback
   * GearmanClient::setWarningCallback
   * GearmanClient::setWorkloadCallback


id: GearmanClient::setOptions
type: function
doc:
<comment>Description:</comment>
  Establece opciones del cliente
  
  Establece una o más opciones del cliente.

<comment>Param:</comment>
  <info>int</info>  <strong>$options</strong>  Las opciones a fijar

<comment>Return:</comment>
  <info>bool</info>  Siempre retorna <info>true</info>.


id: GearmanClient::setStatusCallback
type: function
doc:
<comment>Description:</comment>
  Establece una llamada de retorno para obtener el estado de una tarea
  
  Establece una función de llamada de retorno usada para obtener el estado actualizado de un
  trabajador.. La función acepta un único argumento, un objeto <class>GearmanTask</class>.

<comment>Param:</comment>
  <info>callable</info>  <strong>$callback</strong>  Función a llamar

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * GearmanClient::setDataCallback
   * GearmanClient::setCompleteCallback
   * GearmanClient::setCreatedCallback
   * GearmanClient::setExceptionCallback
   * GearmanClient::setFailCallback
   * GearmanClient::setWarningCallback
   * GearmanClient::setWorkloadCallback


id: GearmanClient::setTimeout
type: function
doc:
<comment>Description:</comment>
  Establece el tiempo máximo de inactividad para actividad de entrada/salida en el socket
  
  Establece el tiempo máximo de inactividad para actividad de entrada/salida en el socket

<comment>Param:</comment>
  <info>int</info>  <strong>$timeout</strong>  Un intervalo de tiempo en milisegundos

<comment>Return:</comment>
  <info>bool</info>  Siempre retorna <info>true</info>.


id: GearmanClient::setWarningCallback
type: function
doc:
<comment>Description:</comment>
  Establece una llamada de retorno para los warnings del trabajador
  
  Establece una función a ser llamada cuando un trabajador envía un warning. La función acepta un
  único argumento, un objeto <class>GearmanTask</class>.

<comment>Param:</comment>
  <info>callable</info>  <strong>$callback</strong>  Función a llamar

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * GearmanClient::setDataCallback
   * GearmanClient::setCompleteCallback
   * GearmanClient::setCreatedCallback
   * GearmanClient::setExceptionCallback
   * GearmanClient::setFailCallback
   * GearmanClient::setStatusCallback
   * GearmanClient::setWorkloadCallback


id: GearmanClient::setWorkloadCallback
type: function
doc:
<comment>Description:</comment>
  Establece una llamada de retorno para aceptar actualizaciones incrementales de datos
  
  Establece una función a ser llamada cuando un trabajador necesita enviar datos antes de completar
  el trabajo. Un trabajador puede realizar esta acción cuando necesita enviar actualizaciones,
  enviar resultados parciales o enviar datos durante trabajados de larga duración. La función acepta
  un único argumento, un objeto <class>GearmanTask</class>.

<comment>Param:</comment>
  <info>callable</info>  <strong>$callback</strong>  Función a llamar

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * GearmanClient::setDataCallback
   * GearmanClient::setCompleteCallback
   * GearmanClient::setCreatedCallback
   * GearmanClient::setExceptionCallback
   * GearmanClient::setFailCallback
   * GearmanClient::setStatusCallback
   * GearmanClient::setWarningCallback


id: GearmanClient::timeout
type: function
doc:
<comment>Description:</comment>
  Obtiene el tiempo máximo de inactividad de entrada/salida para el socket
  
  Retorna el tiempo máximo de inactividad de entrada/salida en milisegundos para el socket.

<comment>Return:</comment>
  <info>int</info>  Tiempo máximo en milisegundos a esperar para actividad de entrada/salida. Un valor negativo
       significa tiempo infinito.

<comment>See Also:</comment>
   * GearmanClient::setTimeout


id: GearmanClient::wait
type: function
doc:
<comment>Description:</comment>
  Wait for I/O activity on all connections in a client
  
  This waits for activity from any one of the connected servers.

<comment>Return:</comment>
  <info>bool</info>  <info>true</info> on success <info>false</info> on an error.

<comment>See Also:</comment>
   * GearmanWorker::wait


id: GearmanJob::__construct
type: function
doc:
<comment>Description:</comment>
  Crea una instancia de GearmanJob
  
  Crea una instancia de <class>GearmanJob</class> que representa un trabajo que un trabajador debe completar.

<comment>Return:</comment>
  <info>unknown</info>  Un objeto <class>GearmanJob</class>.


id: GearmanJob::complete
type: function
doc:
<comment>Description:</comment>
  Envía el resultado y el estado completo (obsoleto)
  
  Envía los datos que han resultado del proceso y actualiza el estado a completo para este trabajo.
  
  Este método ha sido reemplazado por GearmanJob::sendComplete en la versión 0.6.0 de la extensión
  Gearman.

<comment>Param:</comment>
  <info>string</info>  <strong>$result</strong>  Los datos que han resultado en formato serializado.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * GearmanJob::sendFail
   * GearmanJob::setReturn


id: GearmanJob::data
type: function
doc:
<comment>Description:</comment>
  Envía datos para un trabajo en ejecución (obsoleto)
  
  Envía datos al servidor de trabajos (y a cualquier cliente a la escucha) para este trabajo.
  
  Este método ha sido reemplazado por GearmanJob::sendData en la versión 0.6.0 de la extensión
  Gearman.

<comment>Param:</comment>
  <info>string</info>  <strong>$data</strong>  Datos arbitrarios serializados.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * GearmanJob::workload
   * GearmanTask::data


id: GearmanJob::exception
type: function
doc:
<comment>Description:</comment>
  Envía una excepción para un trabajo en ejecución (obsoleto)
  
  Envía la excepción indicada cuando este trabajo está siendo ejecutado.
  
  Este método ha sido reemplazado por GearmanJob::sendException en la versión 0.6.0 de la extensión
  Gearman.

<comment>Param:</comment>
  <info>string</info>  <strong>$exception</strong>  Descripción de la excepción.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * GearmanJob::setReturn
   * GearmanJob::sendStatus
   * GearmanJob::sendWarning


id: GearmanJob::fail
type: function
doc:
<comment>Description:</comment>
  Envía el estado de fallo (obsoleto)
  
  Envía el estado de fallo para este trabajo, indicando que el trabajo ha fallado por razones
  conocidas (en contraposición a un fallo debido al lanzamiento de una excepción).
  
  Este método ha sido reemplazado por GearmanJob::sendFail en la versión 0.6.0 de la extensión
  Gearman.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * GearmanJob::sendException
   * GearmanJob::setReturn
   * GearmanJob::sendStatus
   * GearmanJob::sendWarning


id: GearmanJob::functionName
type: function
doc:
<comment>Description:</comment>
  Retorna el nombre de la función
  
  Retorna el nombre de la función para este trabajo. Esta es la función que se ejecutará para
  realizar el trabajo.

<comment>Return:</comment>
  <info>string</info>  El nombre de la función.

<comment>See Also:</comment>
   * GearmanTask::function


id: GearmanJob::handle
type: function
doc:
<comment>Description:</comment>
  Retorna el manejador para el trabajo
  
  Retorna el manejador de trabajo asignado por el servidor de trabajos.

<comment>Return:</comment>
  <info>string</info>  Un manejador de trabajo.

<comment>See Also:</comment>
   * GearmanTask::jobHandle


id: GearmanJob::returnCode
type: function
doc:
<comment>Description:</comment>
  Obtiene el último código de retorno
  
  Retorna el último código de retorno dado por el servidor de trabajos.

<comment>Return:</comment>
  <info>int</info>  Un código de retorno válido de Gearman.

<comment>See Also:</comment>
   * GearmanTask::returnCode


id: GearmanJob::sendComplete
type: function
doc:
<comment>Description:</comment>
  Envía el resultado y el estado completado
  
  Envía los datos que han resultado y la actualización a estado completado para este trabajo.

<comment>Param:</comment>
  <info>string</info>  <strong>$result</strong>  Resultado en formato serializado.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * GearmanJob::sendFail
   * GearmanJob::setReturn


id: GearmanJob::sendData
type: function
doc:
<comment>Description:</comment>
  Envía datos para un trabajo en ejecución
  
  Envía datos al servidor de trabajos (y a cualquier cliente a la escucha) para este trabajo.

<comment>Param:</comment>
  <info>string</info>  <strong>$data</strong>  Datos arbitrarios serializados.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * GearmanJob::workload
   * GearmanTask::data


id: GearmanJob::sendException
type: function
doc:
<comment>Description:</comment>
  Envía una excepción para un trabajo en ejecución
  
  Envía la excepción indicada cuando este trabajo está en ejecución.

<comment>Param:</comment>
  <info>string</info>  <strong>$exception</strong>  Descripción de la excepción.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * GearmanJob::setReturn
   * GearmanJob::sendStatus
   * GearmanJob::sendWarning


id: GearmanJob::sendFail
type: function
doc:
<comment>Description:</comment>
  Envía el estado de fallo
  
  Envía el estado de fallo para este trabajo, indicando que el trabajo ha fallado de forma conocida
  (al contrario que un fallo debido una excepción).

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * GearmanJob::sendException
   * GearmanJob::setReturn
   * GearmanJob::sendStatus
   * GearmanJob::sendWarning


id: GearmanJob::sendStatus
type: function
doc:
<comment>Description:</comment>
  Envía el estado
  
  Envía información de estado al servidor de trabajo y a cualquier cliente a la escucha. Usar para
  especificar qué porcentaje del trabajo ha sido completado.

<comment>Param:</comment>
  <info>int</info>  <strong>$numerator</strong>    El numerador del porcentaje completado, expresado como una fracción.
  <info>int</info>  <strong>$denominator</strong>  El denominador del porcentaje completado, expresado como una fracción.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * GearmanClient::jobStatus
   * GearmanTask::taskDenominator
   * GearmanTask::taskNumerator


id: GearmanJob::sendWarning
type: function
doc:
<comment>Description:</comment>
  Envía una advertencia
  
  Envía una advertencia para este trabajo mientras está en ejecución.

<comment>Param:</comment>
  <info>string</info>  <strong>$warning</strong>  Un mensaje de advertencia.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * GearmanJob::sendComplete
   * GearmanJob::sendException
   * GearmanJob::sendFail


id: GearmanJob::setReturn
type: function
doc:
<comment>Description:</comment>
  Establece el valor de retorno
  
  Establece el valor de retorno para este trabajo, indica cómo se ha completado el trabajo.

<comment>Param:</comment>
  <info>int</info>  <strong>$gearman_return_t</strong>  Un valor de retorno válido de Gearman.

<comment>Return:</comment>
  <info>bool</info>  Descripción...


id: GearmanJob::status
type: function
doc:
<comment>Description:</comment>
  Envía el estado (obsoleto)
  
  Envía información de estado al servidor de trabajo y a cualquier cliente a la  escucha. Usar para
  especificar qué porcentaje del trabajo ha sido completado.
  
  Este método ha sido reemplazado por GearmanJob::sendStatus en la versión 0.6.0 de la extensión
  Gearman.

<comment>Param:</comment>
  <info>int</info>  <strong>$numerator</strong>    El numerador del porcentaje completado, expresado como una fracción.
  <info>int</info>  <strong>$denominator</strong>  El denominador del porcentaje completado, expresado como una fracción.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * GearmanClient::jobStatus
   * GearmanTask::taskDenominator
   * GearmanTask::taskNumerator


id: GearmanJob::unique
type: function
doc:
<comment>Description:</comment>
  Obtiene el identificador único
  
  Retorna el identificador único para este trabajo. El identificador es asignado por el cliente.

<comment>Return:</comment>
  <info>string</info>  Un identificador único.

<comment>See Also:</comment>
   * GearmanClient::do
   * GearmanTask::uuid


id: GearmanJob::warning
type: function
doc:
<comment>Description:</comment>
  Envía un aviso (obsoleto)
  
  Envía un aviso para el trabajo mientras está en ejecución.
  
  Este método ha sido reemplazado por GearmanJob::sendWarning en la versión 0.6.0 de la extensión
  Gearman.

<comment>Param:</comment>
  <info>string</info>  <strong>$warning</strong>  Un mensaje de aviso.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * GearmanJob::sendComplete
   * GearmanJob::sendException
   * GearmanJob::sendFail


id: GearmanJob::workload
type: function
doc:
<comment>Description:</comment>
  Obtiene la carga de trabajo
  
  Retorna la carga de trabajo. Es información serializada que debe ser procesada por el trabajador.

<comment>Return:</comment>
  <info>string</info>  Datos serializados.

<comment>See Also:</comment>
   * GearmanClient::do
   * GearmanJob::workloadSize


id: GearmanJob::workloadSize
type: function
doc:
<comment>Description:</comment>
  Obtiene el tamaño de la carga de trabajo
  
  Retorna el tamaño de la carga de trabajo (datos que el trabajador tiene que procesar) en bytes.

<comment>Return:</comment>
  <info>int</info>  El tamaño en bytes.

<comment>See Also:</comment>
   * GearmanJob::workload


id: GearmanTask::__construct
type: function
doc:
<comment>Description:</comment>
  Crea una instancia de GearmanTask
  
  Crea una instancia <class>GearmanTask</class> que representa una tarea para enviar al servidor de trabajos.

<comment>Return:</comment>
  <info>unknown</info>  Un objeto <class>GearmanTask</class>.


id: GearmanTask::create
type: function
doc:
<comment>Description:</comment>
  Crea una tarea (obsoleto)
  
  Retorna un nuevo objeto <class>GearmanTask</class>.
  
  Este método fue eliminado en la versión 0.6.0 de la extensión Gearman.

<comment>Return:</comment>
  <info>GearmanTask</info>  Un objeto <class>GearmanTask</class> o <info>false</info> en caso de error.


id: GearmanTask::data
type: function
doc:
<comment>Description:</comment>
  Obtiene los datos retornados para una tarea
  
  Obtiene los datos retornados para una tarea por un trabajador.

<comment>Return:</comment>
  <info>string</info>  Los datos serialziados, o <info>false</info> en caso de no haberlos.

<comment>See Also:</comment>
   * GearmanTask::dataSize


id: GearmanTask::dataSize
type: function
doc:
<comment>Description:</comment>
  Obtiene el tamaño de la información retornada
  
  Retorna el tamaño de los datos que serán devueltos por una tarea.

<comment>Return:</comment>
  <info>int</info>  El tamaño de los datos, o <info>false</info> en caso de no haberlos.

<comment>See Also:</comment>
   * GearmanTask::data


id: GearmanTask::function
type: function
doc:
<comment>Description:</comment>
  Obtiene el nombre de la función asociada (obsoleto)
  
  Retorna el nombre de la función que esta tarea tiene asociada con, por ejemplo, la función que el
  trabajador de Gearman llama.
  
  Este método ha sido reemplazado por GearmanTask::functionName en la versión 0.6.0 de la extensión
  Gearman.

<comment>Return:</comment>
  <info>string</info>  El nombre de la función.


id: GearmanTask::functionName
type: function
doc:
<comment>Description:</comment>
  Retorna el nombre de la función asociada
  
  Retorna el nombre de la función con la que esta tarea está asociada, por ejemplo la función que
  llama el trabajador Gearman.

<comment>Return:</comment>
  <info>string</info>  Un nombre de función.


id: GearmanTask::isKnown
type: function
doc:
<comment>Description:</comment>
  Determina si la tarea es conocida
  
  Retorna información sobre el estado para una tarea, sea o no conocida por el servidor de trabajos.

<comment>Return:</comment>
  <info>bool</info>  <info>true</info> si la tarea es conocida, <info>false</info> en otro caso.


id: GearmanTask::isRunning
type: function
doc:
<comment>Description:</comment>
  Comprueba si la tarea está siendo ejecutada
  
  Indica si la tarea está actualmente siendo ejecutada.

<comment>Return:</comment>
  <info>bool</info>  <info>true</info> si la tarea está siendo ejecutada, <info>false</info> en otro caso.


id: GearmanTask::jobHandle
type: function
doc:
<comment>Description:</comment>
  Retorna el manejador del trabajo
  
  Retorna el manejador del trabajo para esta tarea.

<comment>Return:</comment>
  <info>string</info>  El manejador del trabajo.

<comment>See Also:</comment>
   * GearmanClient::doJobHandle


id: GearmanTask::recvData
type: function
doc:
<comment>Description:</comment>
  Guarda un trabajo o los datos resultantes de una tarea en un buffer
  
  Esta función ha sido declarada
  EXPERIMENTAL. Su funcionamiento, nombre y
  la documentación que le acompaña puede cambiar sin previo aviso en futuras versiones de PHP.
  Utilícela bajo su propia responsabilidad.

<comment>Param:</comment>
  <info>int</info>  <strong>$data_len</strong>  Longitud de datos a leer.

<comment>Return:</comment>
  <info>array</info>  Un array cuyo primer elemento es la longitud de los datos leídos y el segundo son los
         datos. Retorna <info>false</info> si falla la lectura.

<comment>See Also:</comment>
   * GearmanTask::sendData


id: GearmanTask::returnCode
type: function
doc:
<comment>Description:</comment>
  Retorna el último código de error
  
  Retorna el último código de error de Gearman para esta tarea.

<comment>Return:</comment>
  <info>int</info>  Un código de retorno de Gearman válido.

<comment>See Also:</comment>
   * GearmanClient::returnCode


id: GearmanTask::sendData
type: function
doc:
<comment>Description:</comment>
  Envía datos a una tarea (obsoleto)
  
  Esta función ha sido declarada
  EXPERIMENTAL. Su funcionamiento, nombre y
  la documentación que le acompaña puede cambiar sin previo aviso en futuras versiones de PHP.
  Utilícela bajo su propia responsabilidad.

<comment>Param:</comment>
  <info>string</info>  <strong>$data</strong>  Datos a enviar al trabajador.

<comment>Return:</comment>
  <info>int</info>  Longitud de los datos a enviar o <info>false</info> si falla el envío.

<comment>See Also:</comment>
   * GearmanTask::recvData


id: GearmanTask::sendWorkload
type: function
doc:
<comment>Description:</comment>
  Envía datos a una tarea
  
  Esta función ha sido declarada
  EXPERIMENTAL. Su funcionamiento, nombre y
  la documentación que le acompaña puede cambiar sin previo aviso en futuras versiones de PHP.
  Utilícela bajo su propia responsabilidad.

<comment>Param:</comment>
  <info>string</info>  <strong>$data</strong>  Datos a enviar al trabajador.

<comment>Return:</comment>
  <info>int</info>  Longitud de los datos enviados o <info>false</info> si falla el envío.

<comment>See Also:</comment>
   * GearmanTask::recvData


id: GearmanTask::taskDenominator
type: function
doc:
<comment>Description:</comment>
  Obtiene el denominador del porcentaje de tarea completada
  
  Retorna el denominador del tanto por ciento completado de la tarea, expresado como una fracción.

<comment>Return:</comment>
  <info>int</info>  Un número entre 0 y 100 o <info>false</info> si no puede ser determinado.

<comment>See Also:</comment>
   * GearmanTask::taskNumerator


id: GearmanTask::taskNumerator
type: function
doc:
<comment>Description:</comment>
  Retorna el numerador del tanto por ciento completado de la tarea, expresado como una fracción
  
  Retorna el numerador del tanto por ciento completado de la tarea, expresado como una fracción.

<comment>Return:</comment>
  <info>int</info>  Un número entre 0 y 100 o <info>false</info> si no se puede determinar.

<comment>See Also:</comment>
   * GearmanTask::taskDenominator


id: GearmanTask::unique
type: function
doc:
<comment>Description:</comment>
  Obtiene el identificador único de una tarea
  
  Retorna el identificador única para esta tarea. Este se asigna por <class>GearmanClient</class>, a diferencia del
  manejador de trabajo que es asignado por el servidor de trabajos Gearman.

<comment>Return:</comment>
  <info>string</info>  El identificador único, o <info>false</info> si no tiene asignado identificador.

<comment>See Also:</comment>
   * GearmanClient::do
   * GearmanClient::addTask


id: GearmanTask::uuid
type: function
doc:
<comment>Description:</comment>
  Obtiene el identificador único de una tarea (obsoleto)
  
  Retorna el identificador único de una tarea. Este es asignado por <class>GearmanClient</class>, a diferencia del
  manejador de trabajo que lo define el servidor de trabajos Gearman.
  
  Este método ha sido reemplazado por GearmanTask::unique en la versión 0.6.0 de la extensión
  Gearman.

<comment>Return:</comment>
  <info>string</info>  El identificador único o <info>false</info> si no tiene identificador asignado.

<comment>See Also:</comment>
   * GearmanClient::do
   * GearmanClient::addTask


id: GearmanWorker::__construct
type: function
doc:
<comment>Description:</comment>
  Crea una instancia GearmanWorker
  
  Crea una instancia <class>GearmanWorker</class> que representa a un trabajador que se conecta a un servidor de
  trabajo y acepta tareas a ejecutar.

<comment>Return:</comment>
  <info>unknown</info>  Un objeto <class>GearmanWorker</class>

<comment>See Also:</comment>
   * GearmanWorker::clone


id: GearmanWorker::addFunction
type: function
doc:
<comment>Description:</comment>
  Registra y añade una función de retorno
  
  Registra el nombre de una función en el servidor de trabajos y especifica la llamada de retorno
  quer corresponde a esa función. Opcionalmente se puede especificar datos extra del contexto  de
  aplicación para que sean usados cuando se realiza la llamada a la función de retorno o expira el
  tiempo máximo permitido.

<comment>Param:</comment>
  <info>string</info>    <strong>$function_name</strong>  Nombre de la función a registrar en el servidor de trabajos
  <info>callable</info>  <strong>$function</strong>       Función de retorno a llamar cuando el trabajo para el nombre de función
                            registrado es enviado
  <info>mixed</info>     <strong>$context</strong>        Referencia a datos de contexto de la aplicación que pueden ser
                            modificados por la la función del trabajador
  <info>int</info>       <strong>$timeout</strong>        Intervalo de tiempo en segundos

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * GearmanClient::do


id: GearmanWorker::addOptions
type: function
doc:
<comment>Description:</comment>
  Añade opciones al trabajador
  
  Añade una o más opciones a las establecidas anteriormente.

<comment>Param:</comment>
  <info>int</info>  <strong>$option</strong>  Opciones a añadir

<comment>Return:</comment>
  <info>bool</info>  Siempre retorna <info>true</info>.

<comment>See Also:</comment>
   * GearmanWorker::options
   * GearmanClient::setOptions
   * GearmanClient::removeOptions


id: GearmanWorker::addServer
type: function
doc:
<comment>Description:</comment>
  Añade un servidor de trabajo
  
  Añade un servidor de trabajo a este trabajador. Se añade a una lista de servidores que pueden ser
  usados para ejecutar trabajos. No se realiza ninguna acción de entrada/salida con sockets.

<comment>Param:</comment>
  <info>string</info>  <strong>$host</strong>  Nombre del host del job server.
  <info>int</info>     <strong>$port</strong>  Puerto del job server.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * GearmanWorker::addServers


id: GearmanWorker::addServers
type: function
doc:
<comment>Description:</comment>
  Añade servidores de trabajo
  
  Añade uno o más servidores de trabajos a este trabajador. Se añaden a una lista de servidores que
  pueden ser usados para ejecutar trabajos. No se realiza ninguna acción de entrada/salida con
  sockets.

<comment>Param:</comment>
  <info>string</info>  <strong>$servers</strong>  Una lista de servidores de trabajo separadas por comas en el formato
                    servidor:puerto. Si no se especifica puerto, se usa el puerto por defecto 4730.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * GearmanWorker::addServer


id: GearmanWorker::clone
type: function
doc:
<comment>Description:</comment>
  Crea una copia del trabajador
  
  Crea una copia del trabajador.

<comment>Return:</comment>
  <info>void</info>  Un objeto <class>GearmanWorker</class>


id: GearmanWorker::echo
type: function
doc:
<comment>Description:</comment>
  Comprueba la respuesta de un servidor de trabajo
  
  Envía datos a todos los servidores de trabajo para comprobar si los retornan. Esta es una función
  de prueba para ver si los servidores de trabajo están respondiendo de forma adecuada.

<comment>Param:</comment>
  <info>string</info>  <strong>$workload</strong>  Datos arbitrarios serializados

<comment>Return:</comment>
  <info>bool</info>  Valor de retorno estándar de Gearman.

<comment>See Also:</comment>
   * GearmanClient::echo


id: GearmanWorker::error
type: function
doc:
<comment>Description:</comment>
  Retorna el último error que ha ocurrido
  
  Retorna una cadena de error para el último error que ha ocurrido.

<comment>Return:</comment>
  <info>string</info>  El string de error.

<comment>See Also:</comment>
   * GearmanWorker::getErrno


id: GearmanWorker::getErrno
type: function
doc:
<comment>Description:</comment>
  Obtiene el código de error
  
  Retorna el valor del código de error (errno) en caso de que se obtenga un GEARMAN_ERRNO.

<comment>Return:</comment>
  <info>int</info>  Un errno válido.

<comment>See Also:</comment>
   * GearmanWorker::error


id: GearmanWorker::options
type: function
doc:
<comment>Description:</comment>
  Retorna las opciones del trabajador
  
  Retorna las opciones que han sido establecidas con anterioridad en el trabajador.

<comment>Return:</comment>
  <info>int</info>  Las opciones que tiene actualmente el trabajador.

<comment>See Also:</comment>
   * GearmanWorker::setOptions


id: GearmanWorker::register
type: function
doc:
<comment>Description:</comment>
  Registra una función en el servidor de trabajo
  
  Registra el nombre de una función en el servidor de trabajo con un tiempo máximo de espera
  opcional. El tiempo de espera indica cuantos segundos debe esperar el servidor antes de  marcar el
  trabajo como fallo. Indicar un tiempo de espera de cero implica deshabilitar la espera.

<comment>Param:</comment>
  <info>string</info>  <strong>$function_name</strong>  El nombre de una función a registrar en el servidor de trabajo
  <info>int</info>     <strong>$timeout</strong>        Un intervalo de tiempo en segundos

<comment>Return:</comment>
  <info>bool</info>  Un valor de retorno estándar de Gearman.

<comment>See Also:</comment>
   * GearmanWorker::unregister
   * GearmanWorker::unregisterAll


id: GearmanWorker::removeOptions
type: function
doc:
<comment>Description:</comment>
  Elimina las opciones del trabajador
  
  Elimina una o más opciones del trabajador.

<comment>Param:</comment>
  <info>int</info>  <strong>$option</strong>  Opciones a ser eliminadas

<comment>Return:</comment>
  <info>bool</info>  Retorna siempre <info>true</info>.

<comment>See Also:</comment>
   * GearmanWorker::options
   * GearmanWorker::setOptions
   * GearmanWorker::addOptions


id: GearmanWorker::returnCode
type: function
doc:
<comment>Description:</comment>
  Obtiene el último código de retorno de Gearman
  
  Retorna el último código de retorno de Gearman.

<comment>Return:</comment>
  <info>int</info>  Un código de retorno válido de Gearman.

<comment>See Also:</comment>
   * GearmanWorker::error
   * GearmanWorker::getErrno


id: GearmanWorker::setId
type: function
doc:
<comment>Description:</comment>
  Asigna un identificador al trabajador de tal forma que pueda ser rastreado cuando se solicite a
  gearmand la lista de los trabajadores disponibles
  
  Asigna un identificador al trabajador.

<comment>Param:</comment>
  <info>string</info>  <strong>$id</strong>  Un identificador de tipo string.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.


id: GearmanWorker::setOptions
type: function
doc:
<comment>Description:</comment>
  Establece las opciones del trabajador
  
  Establece una o más opciones para el valor dado.

<comment>Param:</comment>
  <info>int</info>  <strong>$option</strong>  Las opciones a establecer

<comment>Return:</comment>
  <info>bool</info>  Siempre retorna <info>true</info>.

<comment>See Also:</comment>
   * GearmanWorker::options
   * GearmanWorker::addOptions
   * GearmanWorker::removeOptions
   * GearmanClient::setOptions


id: GearmanWorker::setTimeout
type: function
doc:
<comment>Description:</comment>
  Establece un tiempo de espera máximo para actividad de entrada/salida del socket
  
  Establece el intervalo de tiempo a esperar actividad de entrada/salida del socket. Sets the
  interval of time to wait for socket I/O activity.

<comment>Param:</comment>
  <info>int</info>  <strong>$timeout</strong>  Un intervalo de tiempo en milisegundos. Un valor negativo indica un tiempo de
                 espera infinito.

<comment>Return:</comment>
  <info>bool</info>  Retorna siempre <info>true</info>.

<comment>See Also:</comment>
   * GearmanWorker::timeout


id: GearmanWorker::timeout
type: function
doc:
<comment>Description:</comment>
  Retorna el tiempo máximo de espera para actividad de entrada/salida del socket
  
  Retorna el tiempo actual a esperar, en milisegundos, para actividad de entrada/salida del socket.

<comment>Return:</comment>
  <info>int</info>  Un período de tiempo en milisegundos. Un valor negativo indica un tiempo de espera infinito.

<comment>See Also:</comment>
   * GearmanWorker::setTimeout


id: GearmanWorker::unregister
type: function
doc:
<comment>Description:</comment>
  Elimina el registro del nombre de una función en los servidores de trabajo
  
  Elimina el registro del nombre de una función en los servidores de trabajo asegurando que no se
  envían (para esa función y ese trabajador) más trabajos.

<comment>Param:</comment>
  <info>string</info>  <strong>$function_name</strong>  El nombre de una función registrada en el servidor de trabajo

<comment>Return:</comment>
  <info>bool</info>  Un valor de retorno estándar de Gearman.

<comment>See Also:</comment>
   * GearmanWorker::register
   * GearmanWorker::unregisterAll


id: GearmanWorker::unregisterAll
type: function
doc:
<comment>Description:</comment>
  Elimina el registro de todas los nombres de funciones en los servidores de trabajo
  
  Elimina cualquier función que estuviese registrada con anterioridad, asegurando que que no se
  envían más trabajos a ese trabajador.

<comment>Return:</comment>
  <info>bool</info>  Un valor de retorno estándar de Gearman.

<comment>See Also:</comment>
   * GearmanWorker::register
   * GearmanWorker::unregister


id: GearmanWorker::wait
type: function
doc:
<comment>Description:</comment>
  Espera cualquier actividad de uno de los servidores de trabajo
  
  Provoca que el trabajador espere a cualquier actividad desde uno de los servidores de trabajo
  Gearman cuando trabaja en modo entrada/salida no bloqueante. En caso de fallo, envía un <info>E_WARNING</info>
  con el último error Gearman encontrado.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * GearmanWorker::work


id: GearmanWorker::work
type: function
doc:
<comment>Description:</comment>
  Espera y realiza un trabajo
  
  Espera a que se asigne un trabajo y llama a la función de retorno apropiada. Envía un <info>E_WARNING</info>
  con el último error Gearman si el resultado no es  <info>GEARMAN_SUCCESS</info>, <info>GEARMAN_IO_WAIT</info>, o
  <info>GEARMAN_WORK_FAIL</info>.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.

<comment>See Also:</comment>
   * GearmanWorker::addFunction


id: Gender\Gender::__construct
type: function
doc:
<comment>Description:</comment>
  Construye un objeto Gender
  
  Crea un objeto Gender conectando opcionalmente con un diccionario de nombres externo. Cuando no se
  indica una base de datos externa, los datos integrados serán utilizados.

<comment>Param:</comment>
  <info>string</info>  <strong>$dsn</strong>  DSN (Data Source Name) a abrir.


id: Gender\Gender::connect
type: function
doc:
<comment>Description:</comment>
  Conecta con un diccionario de nombres externo
  
  Conectar con un diccionario de nombres externo. Actualmente sólo las streams están soportadas.

<comment>Param:</comment>
  <info>string</info>  <strong>$dsn</strong>  DSN (Data Source Name) a abrir.

<comment>Return:</comment>
  <info>boolean</info>  Boolean que indica resultado correcto o fallo.


id: Gender\Gender::country
type: function
doc:
<comment>Description:</comment>
  Obtener la representación textual de un país
  
  Devuelve la representación textual de un país a partir de una constante de la clase Gender.

<comment>Param:</comment>
  <info>integer</info>  <strong>$country</strong>  La ID de un país especificada como constante de la clase <class>Gender\Gender</class>.

<comment>Return:</comment>
  <info>array</info>  Devuelve un array con los nombres corto y largo de un país en caso de éxito o <info>false</info> en caso
         de error.


id: Gender\Gender::get
type: function
doc:
<comment>Description:</comment>
  Obtener el género de un nombre
  
  Obtener el género de un nombre en un país concreto.

<comment>Param:</comment>
  <info>string</info>   <strong>$name</strong>     Nombre a comprobar.
  <info>integer</info>  <strong>$country</strong>  ID del país como constante de la clase Gender.

<comment>Return:</comment>
  <info>integer</info>  Devuelve el género de un nombre.


id: Gender\Gender::isNick
type: function
doc:
<comment>Description:</comment>
  Comprueba si name0 es un alias de name1
  
  Comprueba si name0 es un alias de name1.

<comment>Param:</comment>
  <info>string</info>   <strong>$name0</strong>    El nombre a comprobar.
  <info>string</info>   <strong>$name1</strong>    El nombre a comprobar.
  <info>integer</info>  <strong>$country</strong>  El Id del país identificado por una constante la clase Gender. Si se omite, se
                     usa ANY_COUNTRY.

<comment>Return:</comment>
  <info>array</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.


id: Gender\Gender::similarNames
type: function
doc:
<comment>Description:</comment>
  Obtener nombres similares
  
  Obtiene nombres similares para el nombre y el país dado.

<comment>Param:</comment>
  <info>string</info>   <strong>$name</strong>     El nombre a comprobar.
  <info>integer</info>  <strong>$country</strong>  El Id del país identificado por una constante la clase Gender. Si se omite, se
                     usa ANY_COUNTRY.

<comment>Return:</comment>
  <info>array</info>  Devuelve un array con los nombres similares encontrados.


id: Generator
type: class
doc:
<comment>Description:</comment>
  Los objetos <class>Generator</class> son devueltos desde generadores.
  
  Los objetos <class>Generator</class> no pueden ser instanciados mediante new.


id: Generator::__wakeup
type: function
doc:
<comment>Description:</comment>
  Serialize callback
  
  Lanza una excepción indicando que el generador no puede ser presentado.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: Generator::current
type: function
doc:
<comment>Description:</comment>
  Obtener el valor producido

<comment>Return:</comment>
  <info>mixed</info>  Devuelve el valor producido.


id: Generator::getReturn
type: function
doc:
<comment>Description:</comment>
  Obtener el valor devuelto de un generador

<comment>Return:</comment>
  <info>mixed</info>  Devuelve el valor devuelto del generador una vez ha finalizado su ejecución.


id: Generator::key
type: function
doc:
<comment>Description:</comment>
  Obtener la clave generada
  
  Obtiene la clave del valor generado.

<comment>Return:</comment>
  <info>mixed</info>  Devuelve la clave generada.


id: Generator::next
type: function
doc:
<comment>Description:</comment>
  Continua la ejecución del generador
  
  Llamar a Generator::next tiene el mismo efecto que llamar a Generator::send con <info>null</info> como
  argumento.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: Generator::rewind
type: function
doc:
<comment>Description:</comment>
  Rebobina el iterador
  
  Si la iteración ya ha comenzado, lanzará una excepción.

<comment>Return:</comment>
  <info>void</info>  No devuelve ningún valor.


id: Generator::send
type: function
doc:
<comment>Description:</comment>
  Enviar un valor al generador
  
  Envía el valor dado al generador como resultado de la expresión yield actual y reanuda la
  ejecución del generador.
  
  Si el generador no es una expresión yield en el momento de invocar a este método, se permitirá
  avanzar a la primera expresión yield antes de enviar el valor. Por tanto, no es necesario
  «preparar» generadores de PHP con una llamada a Generator::next (como se hace en Python).

<comment>Param:</comment>
  <info>mixed</info>  <strong>$value</strong>  El valor a enviar al generador. Este valor será el valor devuelto de la expresión
                 yield en la que está actualmente el generador.

<comment>Return:</comment>
  <info>mixed</info>  Devuelve el valor producido.


id: Generator::throw
type: function
doc:
<comment>Description:</comment>
  Lanzar una excepción dentro generador
  
  Lanza una excepción dentro del generador y reanuda su ejecución. El comportamiento será el mismo
  que si la expresión yield actual fuera reemplazada con una sentencia <return>throw $exception</return>.
  
  Si el generador ya está cerrado al invocar a este método, la excepción será lanzada en su lugar en
  el contexto del invocador.

<comment>Param:</comment>
  <info>Throwable</info>  <strong>$exception</strong>  La excepción a lanzar dentro del generador.

<comment>Return:</comment>
  <info>mixed</info>  Devuelve el valor generado.


id: Generator::valid
type: function
doc:
<comment>Description:</comment>
  Verificar si el iterador ha sido cerrado

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>false</info> si el iterador ha sido cerrado. De lo contrario devuelve <info>true</info>.


id: GlobIterator
type: class
doc:
<comment>Description:</comment>
  Recorre un sistema de ficheros de forma similar a  <strong>glob()</strong>.


id: GlobIterator::__construct
type: function
doc:
<comment>Description:</comment>
  Construye un directorio usando glob
  
  Construye un nuevo iterador de directorio de una expresión glob.

<comment>Param:</comment>
  <info>string</info>  <strong>$pattern</strong>  Un patrón <strong>glob()</strong>.
  <info>int</info>     <strong>$flags</strong>    flags de opción, las flags pueden ser máscaras de las constantes
                    <class>FilesystemIterator</class>.

<comment>See Also:</comment>
   * DirectoryIterator::__construct
   * GlobIterator::count
   * <strong>glob()</strong>


id: GlobIterator::count
type: function
doc:
<comment>Description:</comment>
  Obtiene el número de directorios y ficheros
  
  Obtener el número de directorios y ficheros encontrados por la  expresión glob.

<comment>Return:</comment>
  <info>int</info>  Devuelve el número de directoeios y ficheros, como un  <info>integer</info>.

<comment>See Also:</comment>
   * GlobIterator::__construct
   * <strong>count()</strong>
   * <strong>glob()</strong>


id: Gmagick::COMPOSITE_ATOP
type: constant
doc:
<comment>Description:</comment>
  El resultado tiene la misma forma que la imagen, con la imagen compuesta oscurenciendo la imagen
  donde la imagen forma traslapado


id: Gmagick::COMPOSITE_EXCLUSION
type: constant
doc:
<comment>Description:</comment>
  Produce un efecto similar al de Gmagick::COMPOSITE_DIFFERENCE, pero aparece con un contraste menor


id: Gmagick::__construct
type: function
doc:
<comment>Description:</comment>
  El constructor Gmagick
  
  El constructor Gmagick.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  La ruta a una imagen para cargar o una matriz de rutas

<comment>Return:</comment>
  <info>unknown</info>  Devuelve un nuevo objeto Gmagick si se tuvo éxito.


id: Gmagick::addimage
type: function
doc:
<comment>Description:</comment>
  Añade una nueva imagen a la lista de imágenes del objeto Gmagick
  
  Añade una nueva imagen al objeto Gmagick desde la posición actual del objeto de origen. Después de
  la operación la posición del iterador se mueve al final de la lista.

<comment>Param:</comment>
  <info></info>  <strong>$source</strong>  El objeto Gmagick de origen

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick con la imagen añadida


id: Gmagick::addnoiseimage
type: function
doc:
<comment>Description:</comment>
  Añade ruido aleatorio a la imagen
  
  Añade ruido aleatorio a la imagen.

<comment>Param:</comment>
  <info></info>  <strong>$noise_type</strong>  El tipo de ruido. Consulte esta lista de constantes de ruido.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick con el ruido añadido.


id: Gmagick::annotateimage
type: function
doc:
<comment>Description:</comment>
  Anota una imagen con texto
  
  Anota una imagen con texto.

<comment>Param:</comment>
  <info>GmagickDraw</info>  <strong>$GmagickDraw</strong>  El objeto GmagickDraw que contiene la configuración para dibujar el
                             texto
  <info>float</info>        <strong>$x</strong>            El índice horizontal en píxeles a la izquierda del texto
  <info>float</info>        <strong>$y</strong>            El índice vertical en píxeles a la línea base del texto
  <info>float</info>        <strong>$angle</strong>        El ángulo en el que escribir el texto
  <info>string</info>       <strong>$text</strong>         La cadena a dibujar

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick con la anotación hecha.


id: Gmagick::blurimage
type: function
doc:
<comment>Description:</comment>
  Añade un filtro de borrosidad a la imagen
  
  Añade un filtro de borrosidad a la imagen.

<comment>Param:</comment>
  <info>float</info>  <strong>$radius</strong>  Radio de borrosidad
  <info>float</info>  <strong>$sigma</strong>   Desviación estándar

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick borroso


id: Gmagick::borderimage
type: function
doc:
<comment>Description:</comment>
  Rodea la imagen con un borde
  
  Rodea la imagen con un borde del color definido por el objeto GmagickPixel de color de borde o por
  una cadena de color.

<comment>Param:</comment>
  <info>GmagickPixel</info>  <strong>$color</strong>   El objeto GmagickPixel o una cadena que contiene el color del borde
  <info>int</info>           <strong>$width</strong>   Ancho del borode
  <info>int</info>           <strong>$height</strong>  Alto del borde

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick con el borde definido


id: Gmagick::charcoalimage
type: function
doc:
<comment>Description:</comment>
  Simula un dibujo a carboncillo
  
  Simula un dibujo a carboncillo.

<comment>Param:</comment>
  <info>float</info>  <strong>$radius</strong>  El radio gaussiano, en píxeles, sin contar el píxel central
  <info>float</info>  <strong>$sigma</strong>   La desviación estándar gaussiana, en píxeles

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick con la simulación de carboncillo


id: Gmagick::chopimage
type: function
doc:
<comment>Description:</comment>
  Elimina una región de una imagen y la recorta
  
  Elimina una región de una imagen y colapsa la imagen para ocupar la porción eliminada.

<comment>Param:</comment>
  <info>int</info>  <strong>$width</strong>   Ancho del área recortada
  <info>int</info>  <strong>$height</strong>  Alto del área recortada
  <info>int</info>  <strong>$x</strong>       Origen X del área recortada
  <info>int</info>  <strong>$y</strong>       Origen Y del área recortada

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick recortado


id: Gmagick::clear
type: function
doc:
<comment>Description:</comment>
  Limpia todos los recursos asociados con el objeto Gmagick
  
  Limpia todos los recursos asociados al objeto Gmagick

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick limpiado


id: Gmagick::commentimage
type: function
doc:
<comment>Description:</comment>
  Añade un comentario a una imagen
  
  Añade un comentario a una imagen.

<comment>Param:</comment>
  <info>string</info>  <strong>$comment</strong>  El comentario a añadir

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick con el comentario añadido.


id: Gmagick::compositeimage
type: function
doc:
<comment>Description:</comment>
  Compone una imagen en otra
  
  Compone una imagen en otra en el índice especificado.

<comment>Param:</comment>
  <info>Gmagick</info>  <strong>$source</strong>   Objeto Gmagick que contiene la imagen compuesta
  <info></info>         <strong>$compose</strong>  Operador de composción
  <info>int</info>      <strong>$x</strong>        El índice de columna de la imagen compuesta
  <info>int</info>      <strong>$y</strong>        El índice de fila de la imagen compuesta

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick con composiciones.


id: Gmagick::cropimage
type: function
doc:
<comment>Description:</comment>
  Extrae una región de la imagen
  
  Extrae una región de la imagen.

<comment>Param:</comment>
  <info>int</info>  <strong>$width</strong>   El ancho del recorte
  <info>int</info>  <strong>$height</strong>  El alto del recorte
  <info>int</info>  <strong>$x</strong>       La coordenada X de la esquina superior izquierda de la región recortada
  <info>int</info>  <strong>$y</strong>       La coordenada Y de la esquina superior izquierda de la región recortada

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick recortado


id: Gmagick::cropthumbnailimage
type: function
doc:
<comment>Description:</comment>
  Crea una miniatura recortada
  
  Crea una miniatura de tamaño fijo ampliando o reduciendo de escala la imagen y recortando un área
  específica desde el centro.

<comment>Param:</comment>
  <info>int</info>  <strong>$width</strong>   El ancho de la miniatura
  <info>int</info>  <strong>$height</strong>  El alto de la miniatura

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick recortado


id: Gmagick::current
type: function
doc:
<comment>Description:</comment>
  Devuelve la refencia al objeto Gmagick acutal
  
  Devuelve la refencia al objeto Gmagick acutal con el puntero de imagen apuntando a la secuencia
  correcta.

<comment>Return:</comment>
  <info>Gmagick</info>  Se devuelve a sí mismo si se tuvo éxito.


id: Gmagick::cyclecolormapimage
type: function
doc:
<comment>Description:</comment>
  Desplaza un mapa de color de una imagen
  
  Desplaza un mapa de color de una imagen por el número de posiciones dado. Si se realiza un ciclo
  del mapa de colores varias veces se puede obtener un efecto psicodélico.

<comment>Param:</comment>
  <info>int</info>  <strong>$displace</strong>  La cantidad a desplazar el mapa de color.

<comment>Return:</comment>
  <info>Gmagick</info>  Se devuelve a sí mismo si se tuvo éxito.


id: Gmagick::deconstructimages
type: function
doc:
<comment>Description:</comment>
  Devuelve ciertas diferencias de píxeles entre imágenes
  
  Compara cada imagen con la siguiente en una secuencia y devuelve la región circundante máxima de
  cualquier diferencia de píxeles que se descubra.

<comment>Return:</comment>
  <info>Gmagick</info>  Devuelve un nuevo objeto <class>Gmagick</class> en caso de éxito.


id: Gmagick::despeckleimage
type: function
doc:
<comment>Description:</comment>
  Reduce el ruido granular de una imagen
  
  Reduce el ruido granular de una imagen mientras preserva los bordes de la imagen original.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick con el ruido granular reducido si se tuvo éxito.

<comment>See Also:</comment>
   * Classname::Method


id: Gmagick::destroy
type: function
doc:
<comment>Description:</comment>
  Destruye un objeto Gmagick
  
  Destruye un objeto Gmagick y libera todos los recursos asociados con él

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.


id: Gmagick::drawimage
type: function
doc:
<comment>Description:</comment>
  Renderiza el objeto GmagickDraw en la imagen actual
  
  Renderiza el objeto GmagickDraw en la imagen actual

<comment>Param:</comment>
  <info>GmagickDraw</info>  <strong>$GmagickDraw</strong>  Las operaciones de dibujo para renderizar sobre la imagen.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick dibujado


id: Gmagick::edgeimage
type: function
doc:
<comment>Description:</comment>
  Mejora los bordes dentro de una imagen
  
  Mejora los bordes dentro de una imagen con un filtro de convolución del radio dado. Use un radio
  de 0 y éste será seleccionado automáticamente.

<comment>Param:</comment>
  <info>float</info>  <strong>$radius</strong>  El radio de la operación.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick con los bordes mejorados.


id: Gmagick::embossimage
type: function
doc:
<comment>Description:</comment>
  Devuelve una imagen en escala de grises con un efecto tridimensional
  
  Devuelve una imagen en escala de grises con un efecto tridimensional. Se convoluciona la imagen
  con un operador gaussiano del radio y desviación estándar (sigma) dados.  Para obtener resultados
  razonables, el radio debería ser mayor que sigma. Use un radio de 0 y se elegirá un radio
  apropiado automáticamente.

<comment>Param:</comment>
  <info>float</info>  <strong>$radius</strong>  El radio del efecto
  <info>float</info>  <strong>$sigma</strong>   El valor sigma del efecto

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick "repujado".


id: Gmagick::enhanceimage
type: function
doc:
<comment>Description:</comment>
  Mejora la calidad de una imagen con ruido
  
  Aplica un filtro digital que mejora la calidad de una imagen con ruido.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick mejorado.


id: Gmagick::equalizeimage
type: function
doc:
<comment>Description:</comment>
  Ecualiza el histograma de la imagen
  
  Ecualiza el histograma de la imagen.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick ecualizado.


id: Gmagick::flipimage
type: function
doc:
<comment>Description:</comment>
  Crea una imagen espejo vertical
  
  Crea una imagen espejo vertical reflejando los píxeles alrededor del eje x central.

<comment>Return:</comment>
  <info>Gmagick</info>  The objeto Gmagick volteado.


id: Gmagick::flopimage
type: function
doc:
<comment>Description:</comment>
  Crea una imagen espejo horizontal
  
  Crea una imagen espejo horizontal reflejando los píxeles alrededor del eje y central.

<comment>Return:</comment>
  <info>Gmagick</info>  The objeto Gmagick volteado.


id: Gmagick::frameimage
type: function
doc:
<comment>Description:</comment>
  Añade un borde tridimensional simulado
  
  Añade un borde tridimensional simulado alrededor de la imagen. El ancho y alto especifican el
  ancho del borde de las caras verticales y horizontales del marco. Los biseles interior y exterior
  indican el ancho de las sombras interiores y exteriores del marco.

<comment>Param:</comment>
  <info>GmagickPixel</info>  <strong>$color</strong>        Objeto GmagickPixel o un valor de tipo float que representa el color
                              mate
  <info>int</info>           <strong>$width</strong>        El ancho del borde
  <info>int</info>           <strong>$height</strong>       El alto del borde
  <info>int</info>           <strong>$inner_bevel</strong>  El ancho del bisel interior
  <info>int</info>           <strong>$outer_bevel</strong>  El ancho del bisel exterior

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick enmarcado.


id: Gmagick::gammaimage
type: function
doc:
<comment>Description:</comment>
  Corrección gamma de una imagen
  
  Corrección gamma de una imagen. La misma imagen vista en diferentes dispositivos tendrá
  diferencias perceptuales en la manera en que la intensidad de la imagen esté representada en la
  pantalla. Especifique niveles gamma indivuduales para los canales rojo, verde y azul, o ajústelos
  todos con el parámetro gamma. El rango de valores es típicamente desde 0.8 a 2.3.

<comment>Param:</comment>
  <info>float</info>  <strong>$gamma</strong>  La cantidad de corrección gamma.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick con el valor gamma corregido.


id: Gmagick::getcopyright
type: function
doc:
<comment>Description:</comment>
  Devuelve el copyright de la API GraphicsMagick como una cadena
  
  Devuelve el copyright de la API GraphicsMagick como una cadena.

<comment>Return:</comment>
  <info>string</info>  Devuelve una cadena que contiene el anuncio del copyright de la API GraphicsMagick y de la
          API de C Magickwand.


id: Gmagick::getfilename
type: function
doc:
<comment>Description:</comment>
  El nombre de archivo asociado a una secuencia de imágenes
  
  Devuelve el nombre de archivo asociado a una secuencia de imágenes.

<comment>Return:</comment>
  <info>string</info>  Devuelve una cadena si se tuvo éxito.


id: Gmagick::getimagebackgroundcolor
type: function
doc:
<comment>Description:</comment>
  Devuelve el color de fondo de la imagen
  
  Devuelve el color de fondo de la imagen.

<comment>Return:</comment>
  <info>GmagickPixel</info>  Devuelve un objeto GmagickPixel establecido al color de fondo de la imagen.


id: Gmagick::getimageblueprimary
type: function
doc:
<comment>Description:</comment>
  Devuelve el punto primario azul de la cromaticidad
  
  Devuelve el punto primario azul de la cromaticidad de una imagen.

<comment>Param:</comment>
  <info></info>  <strong>$x</strong>  El punto x primario azul de la cromaticidad.
  <info></info>  <strong>$y</strong>  El punto y primario azul de la cromaticidad.

<comment>Return:</comment>
  <info>array</info>  Matriz consistente en las coordenadas "x" e "y" del punto.


id: Gmagick::getimagebordercolor
type: function
doc:
<comment>Description:</comment>
  Devuelve el color del borde de la imagen
  
  Devuelve el color del borde de la imagen.

<comment>Return:</comment>
  <info>GmagickPixel</info>  Objeto GmagickPixel que representa el color del borde


id: Gmagick::getimagechanneldepth
type: function
doc:
<comment>Description:</comment>
  Obtiene la profundidad de un canal de imagen en particular
  
  Obtiene la profundidad de un canal de imagen en particular.

<comment>Return:</comment>
  <info>int</info>  La profundidad del canal de la imagen


id: Gmagick::getimagecolors
type: function
doc:
<comment>Description:</comment>
  Devuelve el color del índice del mapa de color especificado
  
  Devuelve el color del índice del mapa de color especificado.

<comment>Return:</comment>
  <info>int</info>  El número de colores en la imagen.


id: Gmagick::getimagecolorspace
type: function
doc:
<comment>Description:</comment>
  Obtiene el espacio de colores de la imagen
  
  Obtiene el espacio de colores de la imagen.

<comment>Return:</comment>
  <info>int</info>  El espacio de colores


id: Gmagick::getimagecompose
type: function
doc:
<comment>Description:</comment>
  Devuelve el operador de composición asociado a la imagen
  
  Devuelve el operador de composición asociado a la imagen.

<comment>Return:</comment>
  <info>int</info>  Devuelve el operador de composición asociado a la imagen.


id: Gmagick::getimagedelay
type: function
doc:
<comment>Description:</comment>
  Obetiene el retraso de la imagen
  
  Obetiene el retraso de la imagen

<comment>Return:</comment>
  <info>int</info>  Devuelve el operados de composción asociado con la imagen.


id: Gmagick::getimagedepth
type: function
doc:
<comment>Description:</comment>
  Obtiene la profundidad de la imagen
  
  Obtiene la profundidad de la imagen.

<comment>Return:</comment>
  <info>int</info>  La profundidad de la imagen.


id: Gmagick::getimagedispose
type: function
doc:
<comment>Description:</comment>
  Obtiene el método de disposición de la imagen
  
  Obtiene el método de disposición de la imagen

<comment>Return:</comment>
  <info>int</info>  Devuelve el método de disposición si se tuvo éxito.


id: Gmagick::getimageextrema
type: function
doc:
<comment>Description:</comment>
  Obtiene los extremos de la imagen
  
  Devuelve una matriz asociativa con las claves "min" y "max". Arroja un
  <class>GmagickException</class> en caso de error.

<comment>Return:</comment>
  <info>array</info>  Devuelve una matriz asociativa con las claves "min" y "max".


id: Gmagick::getimagefilename
type: function
doc:
<comment>Description:</comment>
  Devuelve el nombre de archivo de una imagen en particular de una secuencia
  
  Devuelve el nombre de archivo de una imagen en particular de una secuencia

<comment>Return:</comment>
  <info>string</info>  Devuelve una cadena con el nombre de archivo de la imagen


id: Gmagick::getimageformat
type: function
doc:
<comment>Description:</comment>
  Devuelve el formato de una imagen en particular de una secuencia
  
  Devuelve el formato de una imagen en particular de una secuencia.

<comment>Return:</comment>
  <info>string</info>  Devuelve una cadena que contiene el formato de imagen si se tuvo éxito.


id: Gmagick::getimagegamma
type: function
doc:
<comment>Description:</comment>
  Obtiene el valor gamma de la imagen
  
  Obtiene el valor gamma de la imagen

<comment>Return:</comment>
  <info>float</info>  Devuelve el valor gamma de la imagen si se tuvo éxito


id: Gmagick::getimagegreenprimary
type: function
doc:
<comment>Description:</comment>
  Devuelve el punto primario verde de la cromaticidad
  
  Devuelve el punto primario verde de la cromaticidad. Devuelve una matriz con las claves "x" e "y".

<comment>Return:</comment>
  <info>array</info>  Devuelve una matriz con las claves "x" e "y" si se tuvo éxito.


id: Gmagick::getimageheight
type: function
doc:
<comment>Description:</comment>
  Devuelve el alto de la imagen
  
  Devuelve el alto de la imagen

<comment>Return:</comment>
  <info>int</info>  Devuelve el alto de la imagen en píxeles.


id: Gmagick::getimagehistogram
type: function
doc:
<comment>Description:</comment>
  Obtiene el histograma de la imagen
  
  Devuelve el histograma de la imagen como una matriz de objetos GmagickPixel. Lanza una excepción
  de tipo GmagickException si se produjo un error.

<comment>Return:</comment>
  <info>array</info>  Devuelve el histograma de la imagen como una matriz de objetos GmagickPixel.


id: Gmagick::getimageindex
type: function
doc:
<comment>Description:</comment>
  Obtiene el índice de la imagen activa actual
  
  Devuelve el índice de la imagen activa actual dentro del objeto Gmagick.

<comment>Return:</comment>
  <info>int</info>  El índice de la imagen activa actual


id: Gmagick::getimageinterlacescheme
type: function
doc:
<comment>Description:</comment>
  Obtiene la combinación de entrelazado de la imagen
  
  Obtiene la combinación de entrelazado de la imagen.

<comment>Return:</comment>
  <info>int</info>  Devuelve la combinación de entrelazado como un integer si se tuvo éxito


id: Gmagick::getimageiterations
type: function
doc:
<comment>Description:</comment>
  Obtiene las iteraciones de la imagen
  
  Obtiene las iteraciones de la imagen.

<comment>Return:</comment>
  <info>int</info>  Devuelve las iteraciones de la imagen como un valor integer.


id: Gmagick::getimagematte
type: function
doc:
<comment>Description:</comment>
  Comprobar si la imagen tiene un canal mate
  
  Devuelve <info>true</info> si la imagen tiene un canal mate, si no, devuelve <info>false</info>.

<comment>Return:</comment>
  <info>int</info>  Devuelve <info>true</info> si la imagen tiene un canal mate, si no, devuelve <info>false</info>.


id: Gmagick::getimagemattecolor
type: function
doc:
<comment>Description:</comment>
  Devuelve el color mate de la imagen
  
  Devuelve un objeto GmagickPixel si se tuvo éxtito. Lanza un excepción GmagickException si se
  produjo un error.

<comment>Return:</comment>
  <info>GmagickPixel</info>  Devuelve un objeto GmagickPixel si se tuvo éxito.


id: Gmagick::getimageprofile
type: function
doc:
<comment>Description:</comment>
  Devuelve el perfil nominado de la imagen
  
  Devuelve el perfil nominado de la imagen.

<comment>Return:</comment>
  <info>string</info>  Devuelve una cadena que contiene el perfil de la imagen.


id: Gmagick::getimageredprimary
type: function
doc:
<comment>Description:</comment>
  Devuelve el punto primario rojo de la cromaticidad
  
  Devuelve el punto primario rojo de la cromaticidad como una matriz con las claves "x" e "y".

<comment>Return:</comment>
  <info>array</info>  Devuelve el punto primario rojo de la cromaticidad como una matriz con las claves "x" e
         "y".


id: Gmagick::getimagerenderingintent
type: function
doc:
<comment>Description:</comment>
  Obtiene la propuesta de renderización de la imagen
  
  Obtiene la propuesta de renderización de la imagen

<comment>Return:</comment>
  <info>int</info>  Extrae una región de la imagen y la devuelve como una nueva varita


id: Gmagick::getimageresolution
type: function
doc:
<comment>Description:</comment>
  Obtiene la resolución X e Y de la imagen
  
  Devuelve la resolución como una matriz.

<comment>Return:</comment>
  <info>array</info>  Devuelve la resolución como una matriz.


id: Gmagick::getimagescene
type: function
doc:
<comment>Description:</comment>
  Obtiene la escena de la imagen
  
  Obtiene la escena de la imagen.

<comment>Return:</comment>
  <info>int</info>  Devuelve la escena de la imagen.


id: Gmagick::getimagesignature
type: function
doc:
<comment>Description:</comment>
  Genera un resumen de un mensaje SHA-256
  
  Genera un resumen de un mensaje SHA-256 para el flujo de píxeles de la imagen.

<comment>Return:</comment>
  <info>string</info>  Devuelve una cadena que contiene el hash SHA-256 del archivo.


id: Gmagick::getimagetype
type: function
doc:
<comment>Description:</comment>
  Obtiene el tipo de imagen potencial. 
  
  Obtiene el tipo de imagen potencial.

<comment>Return:</comment>
  <info>int</info>  Devuelve el tipo de imagen potencial.


id: Gmagick::getimageunits
type: function
doc:
<comment>Description:</comment>
  Obtiene las unidades de resolución de la imagen
  
  Obtiene las unidades de resolución de la imagen.

<comment>Return:</comment>
  <info>int</info>  Devuelve las unidades de resolución de la imagen.


id: Gmagick::getimagewhitepoint
type: function
doc:
<comment>Description:</comment>
  Devuelve el punto blanco de la cromaticidad
  
  Devuelve el punto blanco de la cromaticidad como una matriz asociativa con las claves "x" e "y".

<comment>Return:</comment>
  <info>array</info>  Devuelve el punto blanco de la cromaticidad como una matriz asociativa con las claves "x" e
         "y".


id: Gmagick::getimagewidth
type: function
doc:
<comment>Description:</comment>
  Devuelve el ancho de la imagen
  
  Devuelve el ancho de la imagen.

<comment>Return:</comment>
  <info>int</info>  Devuelve el ancho de la imagen.


id: Gmagick::getpackagename
type: function
doc:
<comment>Description:</comment>
  Devuelve el nombre del paquete de GraphicsMagick
  
  Devuelve el nombre del paquete de GraphicsMagick.

<comment>Return:</comment>
  <info>string</info>  Devuelve el nombre del paquete de GraphicsMagick como una cadena.


id: Gmagick::getquantumdepth
type: function
doc:
<comment>Description:</comment>
  Obtiene la profundidad de la cuantía de Gmagick como una cadena
  
  Obtiene la profundidad de la cuantía de Gmagick como una cadena.

<comment>Return:</comment>
  <info>array</info>  Obtiene la profundidad de la cuantía de Gmagick como una cadena.


id: Gmagick::getreleasedate
type: function
doc:
<comment>Description:</comment>
  Devuelve la fecha de distribución de GraphicsMagick como una cadena
  
  Devuelve la fecha de distribución de GraphicsMagick como una cadena.

<comment>Return:</comment>
  <info>string</info>  Devuelve la fecha de distribución de GraphicsMagick como una cadena.


id: Gmagick::getsamplingfactors
type: function
doc:
<comment>Description:</comment>
  Obtiene el factor de muestreo horizontal y vertical
  
  Obtiene el factor de muestreo horizontal y vertical.

<comment>Return:</comment>
  <info>array</info>  Devuelve una matriz asociativa con el factor de muestreo horizontal y vertical de la
         imagen.


id: Gmagick::getsize
type: function
doc:
<comment>Description:</comment>
  Devuelve el tamaño asociado con el objeto Gmagick
  
  Devuelve el tamaño asociado con el objeto Gmagick como una matriz con las claves "columns"
  (columnas) y "rows" (filas).

<comment>Return:</comment>
  <info>array</info>  Devuelve el tamaño asociado con el objeto Gmagick como una matriz con las claves "columns"
         (columnas) y "rows" (filas).


id: Gmagick::getversion
type: function
doc:
<comment>Description:</comment>
  Devuelve la versión de la API GraphicsMagick
  
  Devuelve la versión de la API GraphicsMagick como una cadena y como un número.

<comment>Return:</comment>
  <info>array</info>  Devuelve la versión de la API GraphicsMagick como una cadena y como un número.


id: Gmagick::hasnextimage
type: function
doc:
<comment>Description:</comment>
  Comprueba si el objeto tiene más imágenes
  
  Devuelve TRUE si el objeto tiene más imágenes cuando se atraviesa la lista en dirección hacia
  delante.

<comment>Return:</comment>
  <info>mixed</info>  Devuelve TRUE si el objeto tiene más imágenes cuando se atraviesa la lista en dirección
         hacia delante, devuelve FALSE si no hay ninguna.


id: Gmagick::haspreviousimage
type: function
doc:
<comment>Description:</comment>
  Verifica si el objeto tiene una imagen previa
  
  Devuelve TRUE si el objeto tiene más imágenes cuando se atraviesa la lista en la dirección opuesta

<comment>Return:</comment>
  <info>mixed</info>  Devuelve TRUE si el objeto tiene más imágenes cuando se atraviesa la lista en la dirección
         opuesta, devuelve FALSE si no hay ninguna.


id: Gmagick::implodeimage
type: function
doc:
<comment>Description:</comment>
  Crea una nueva imagen como una copia
  
  Crea una nueva imagen que es una copia de una existente con los píxeles de la imagen
  "implosionados" por el porcentaje especificado.

<comment>Param:</comment>
  <info>float</info>  <strong>$radius</strong>  El radio de la implosión

<comment>Return:</comment>
  <info>mixed</info>  Devuelve el objeto Gmagick implosionado.


id: Gmagick::labelimage
type: function
doc:
<comment>Description:</comment>
  Añade una etiqueta a una imagen
  
  Añade una etiqueta a una imagen.

<comment>Param:</comment>
  <info>string</info>  <strong>$label</strong>  La etiqueta a añadir

<comment>Return:</comment>
  <info>mixed</info>  Objeto Gmagick con etiqueta.


id: Gmagick::levelimage
type: function
doc:
<comment>Description:</comment>
  Ajusta los niveles de la imagen
  
  Ajusta los niveles de una imagen escalando la caída de los colores entre los puntos blanco y negro
  especificados al rango completo de cuantía disponible. Los parámetros proporcionados representan
  los puntos negro, mitad, y blanco. El punto negro especifica el color más oscuro de la imagen. Los
  colores más oscuros que el punto negro se establecen a cero. El punto medio especifica una
  corrección gamma a aplicar a la imagen. Mientras que el punto blanco especifica el color más claro
  de la imagen. Los colores más claros que el punto blanco se establecen al valor de cuantía máximo.

<comment>Param:</comment>
  <info>float</info>  <strong>$blackPoint</strong>  El punto negro de la imagen
  <info>float</info>  <strong>$gamma</strong>       El valor gamma
  <info>float</info>  <strong>$whitePoint</strong>  El punto blanco de la imagen
  <info>int</info>    <strong>$channel</strong>     Proporcione cualquier constante de canal que sea válida para su modo de canal.
                      Para aplicar más de un canal, combine las constantes channeltype usando
                      operadores a nivel de bits. Consulte esta lista de constantes de canal.

<comment>Return:</comment>
  <info>mixed</info>  Objeto Gmagick con la imagen nivelada.


id: Gmagick::magnifyimage
type: function
doc:
<comment>Description:</comment>
  Escala una imagen x2 proporcionalmente
  
  Escala convenientemente una imagen proporcionalmente al doble de su tamaño original.

<comment>Return:</comment>
  <info>mixed</info>  El objeto Gmagick ampliado.


id: Gmagick::mapimage
type: function
doc:
<comment>Description:</comment>
  Reemplaza los colores de una imagen con el color más cercano de una imagen de referencia
  
  Reemplaza los colores de una imagen con el color más cercano de una imagen de referencia.

<comment>Param:</comment>
  <info>gmagick</info>  <strong>$gmagick</strong>  La imagen de referencia
  <info>bool</info>     <strong>$dither</strong>   Establezca este valor integer a algo distinto cero para entramar la imagen
                     mapeada

<comment>Return:</comment>
  <info>Gmagick</info>  Objeto Gmagick


id: Gmagick::medianfilterimage
type: function
doc:
<comment>Description:</comment>
  Aplica un filtro digital
  
  Aplica un filtro digital que mejora la calidad de una imagen con ruido. Cada píxel es reemplazado
  por la media en un conjunto de píxeles inmediatos como está definido por el radio.

<comment>Param:</comment>
  <info>float</info>  <strong>$radius</strong>  El radio de la zona inmediata de los píxeles.

<comment>Return:</comment>
  <info>void</info>  Objeto Gmagick con el filtro de media aplicado.


id: Gmagick::minifyimage
type: function
doc:
<comment>Description:</comment>
  Escala una imagen proporcionalmente a la mitad de su tamaño
  
  Un método conveniente que escala una imagen proporcionalmente a la mitad de su tamaño original

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::modulateimage
type: function
doc:
<comment>Description:</comment>
  Controla el brillo, la saturación y el tono
  
  Permite controlar el brillo, la saturación y el tono de una imagen. El tono es el porcentaje de la
  rotación absoluta desde la posición actual. Por ejemplo, 50 resulta en una rotación en el sentido
  contrario a las agujas del reloj de 90 grados, 150 resulta en una rotación en el sentido de las
  agujas del reloj de 90 grados, con 0 y 200 resultando en una rotación de 180 grados.

<comment>Param:</comment>
  <info>float</info>  <strong>$brightness</strong>  El cambio de porcentaje en brillo (-100 a +100).
  <info>float</info>  <strong>$saturation</strong>  El cambio de porcentaje en saturación (-100 a +100)
  <info>float</info>  <strong>$hue</strong>         El cambio de porcentaje en tono (-100 a +100)

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::motionblurimage
type: function
doc:
<comment>Description:</comment>
  Simula borrosidad en movimiento
  
  Simula borrosidad en movimiento. Se convoluciona la imagen con un operador gaussiano del radio y
  la desviación estándar (sigma) dados. Para obtener resultados razonables, el radio debe ser mayor
  que sigma. Use un radio de 0 y MotionBlurImage() seleccionará un radio apropiado automáticamente.
  El ángulo da el ángulo del movimiento borroso.

<comment>Param:</comment>
  <info>float</info>  <strong>$radius</strong>  El radio gaussiano, en píxeles, sin contar el píxel central.
  <info>float</info>  <strong>$sigma</strong>   La desviación estándar gaussiana, en píxeles.
  <info>float</info>  <strong>$angle</strong>   Aplica el efecto a lo largo de este ángulo.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::newimage
type: function
doc:
<comment>Description:</comment>
  Crea una nueva imagen
  
  Crea una nueva imagen con el color de fondo especificado

<comment>Param:</comment>
  <info>int</info>     <strong>$width</strong>       Ancho de la nueva imagen
  <info>int</info>     <strong>$height</strong>      Alto de la nueva imagen
  <info>string</info>  <strong>$background</strong>  El color de fondo usado para esta imagen (como float)
  <info>string</info>  <strong>$format</strong>      Formato de la imagen.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::nextimage
type: function
doc:
<comment>Description:</comment>
  Moverse a la siguiente imagen
  
  Asocia la siguiente imagen de la lista de ímágenes con un objeto Gmagick.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.


id: Gmagick::normalizeimage
type: function
doc:
<comment>Description:</comment>
  Mejora el contraste de una imagen a color
  
  Mejora el contraste de una imagen a color ajustando los colores de los píxeles para abarcar el
  rango completo de colores disponibles.

<comment>Param:</comment>
  <info>int</info>  <strong>$channel</strong>  Identifica el canal a normalizar

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::oilpaintimage
type: function
doc:
<comment>Description:</comment>
  Simula una pintura al óleo
  
  Aplica un filtro de efecto especial que simula una pintura al óleo. Cada píxel es reemplazado por
  el color más frecuente que suceda en una región circular definida por el radio.

<comment>Param:</comment>
  <info>float</info>  <strong>$radius</strong>  El radio de la zona inmediata circular.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::previousimage
type: function
doc:
<comment>Description:</comment>
  Moverse a la imagen previa del objeto
  
  Asocia la imagen previa de una lista de imágenes con el objeto Gmagick.

<comment>Return:</comment>
  <info>bool</info>  Devuelve <info>true</info> en caso de éxito o <info>false</info> en caso de error.


id: Gmagick::profileimage
type: function
doc:
<comment>Description:</comment>
  Añade o elimina un perfil de una imagen
  
  Añade o elimina un perfil ICC, IPTC, o genérico de una imagen. Si el perfil es NULL, se elimina de
  la imagen, si no, se añade. Use como nombre '*' y un perfil NULL para eliminar todos los perfiles
  de la imagen.

<comment>Param:</comment>
  <info>string</info>  <strong>$name</strong>     Nombre del perfil a añadir o eliminar: ICC, IPTC, o perfil genérico.
  <info>string</info>  <strong>$profile</strong>  El perfil.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::quantizeimage
type: function
doc:
<comment>Description:</comment>
  Analiza los colores dentro de una imagen de referencia
  
  Analiza los colores dentro de una imagen de referencia y elige un número fijo de colores que
  representan la imagen. El objetivo del algoritmo es minimizar la diferencia de colores entre la
  imagen de entrada y de salida mientras minimiza el tiempo de procesamiento.

<comment>Param:</comment>
  <info>int</info>   <strong>$numColors</strong>     El número de colores.
  <info>int</info>   <strong>$colorspace</strong>    Lleva a cabo una reducción de color en este espacio de color, normalmaente
                       RGBColorspace.
  <info>int</info>   <strong>$treeDepth</strong>     Normalmente, este valor de tipo integer es cero o uno. Un cero o uno indica a
                       Quantize que elija una profundidad de árbol óptima de Log4(número_colores).%
                       Un árbol de esta profundidad generalmente permite la mejor representación de
                       la imagen de referencia con la menor cantidad de memoria y la velocidad de
                       computación más rápida. En algunos casos, como una imagen con dispersión de
                       color baja (un número bajo de colores), se requiere un valor distinto de
                       Log4(número_colores). Para expandir el árbol de colores completamente, use un
                       valor de 8.
  <info>bool</info>  <strong>$dither</strong>        Un valor distinto de cero distribuye la diferencia entre una imagen original
                       y el algoritmo de reducción de color correspondiente a los píxeles de la zona
                       inmediata a lo largo de una curva de Hilbert.
  <info>bool</info>  <strong>$measureError</strong>  Un valor distinto de cero mide la diferencia entre la imagen original y la
                       cuantificada. Esta diferencia es el error de cuantización total. El error se
                       computa sumando, en todos los píxeles de una imagen, la distancia al cuadrado
                       en el espacio RGB entre cada valor de píxel de referncia y su valor
                       cuantizado.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::quantizeimages
type: function
doc:
<comment>Description:</comment>
  Analiza los colores dentro de una secuencia de imágenes
  
  Analiza los colores dentro de una secuencia de imágenes y elige un número fijo de colores que
  representan la imagen. El objetivo del algoritmo es minimizar la diferencia de colores entre la
  imagen de entrada y de salida mientras minimiza el tiempo de procesamiento.

<comment>Param:</comment>
  <info>int</info>   <strong>$numColors</strong>     El número de colores.
  <info>int</info>   <strong>$colorspace</strong>    Lleva a cabo una reducción de color en este espacio de color, normalmaente
                       RGBColorspace.
  <info>int</info>   <strong>$treeDepth</strong>     Normalmente, este valor de tipo integer es cero o uno. Un cero o uno indica a
                       Quantize que elija una profundidad de árbol óptima de Log4(número_colores).%
                       Un árbol de esta profundidad generalmente permite la mejor representación de
                       la imagen de referencia con la menor cantidad de memoria y la velocidad de
                       computación más rápida. En algunos casos, como una imagen con dispersión de
                       color baja (un número bajo de colores), se requiere un valor distinto de
                       Log4(número_colores). Para expandir el árbol de colores completamente, use un
                       valor de 8.
  <info>bool</info>  <strong>$dither</strong>        Un valor distinto de cero distribuye la diferencia entre una imagen original
                       y el algoritmo de reducción de color correspondiente a los píxeles de la zona
                       inmediata a lo largo de una curva de Hilbert.
  <info>bool</info>  <strong>$measureError</strong>  Un valor distinto de cero mide la diferencia entre la imagen original y la
                       cuantificada. Esta diferencia es el error de cuantización total. El error se
                       computa sumando, en todos los píxeles de una imagen, la distancia al cuadrado
                       en el espacio RGB entre cada valor de píxel de referncia y su valor
                       cuantizado.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::queryfontmetrics
type: function
doc:
<comment>Description:</comment>
  Devuelve una matriz que representa las métricas de la fuente
  
  MagickQueryFontMetrics() devuelve una matriz que representa las métricas de la fuente.

<comment>Return:</comment>
  <info>array</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::queryfonts
type: function
doc:
<comment>Description:</comment>
  Devuelve las fuentes configuradas
  
  Devuelve las fuentes soportadas por Gmagick.

<comment>Return:</comment>
  <info>array</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::queryformats
type: function
doc:
<comment>Description:</comment>
  Devuelve los formatos admitidos por Gmagick
  
  Devuelve los formatos admitidos por Gmagick.

<comment>Param:</comment>
  <info>string</info>  <strong>$pattern</strong>  Especifica un <info>string</info> que contiene un patrón.

<comment>Return:</comment>
  <info>array</info>  El objeto Gmagick en caso de éxito


id: Gmagick::radialblurimage
type: function
doc:
<comment>Description:</comment>
  Hace borrosa de forma radial una imagen
  
  Hace borrosa de forma radial una imagen.

<comment>Param:</comment>
  <info>float</info>  <strong>$angle</strong>    El ángulo de la borrosidad en grados.
  <info>int</info>    <strong>$channel</strong>  El canal relacionado.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::raiseimage
type: function
doc:
<comment>Description:</comment>
  Crea un efecto de botón en 3D simulado
  
  Crea un efecto de botón tridimensional simulado aclarando y oscureciendo los bordes de la imagen.
  Los miembros ancho y alto de la información de elevación definen el ancho del borde vertical y
  horizontal del efecto.

<comment>Param:</comment>
  <info>int</info>   <strong>$width</strong>   Ancho del área a realzar.
  <info>int</info>   <strong>$height</strong>  Alto del área a realzar.
  <info>int</info>   <strong>$x</strong>       Coordenada X
  <info>int</info>   <strong>$y</strong>       Coordenada Y
  <info>bool</info>  <strong>$raise</strong>   Un valor distinto de cero crea un efecto de realzado en 3D, de otro modo tiene un
                 efecto contrario.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::read
type: function
doc:
<comment>Description:</comment>
  Lee una imagen desde un nombre de archivo
  
  Lee una imagen desde un nombre de archivo.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  El nombre de archivo de la imagen.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::readimageblob
type: function
doc:
<comment>Description:</comment>
  Lee una imagen desde una cadena binaria
  
  Lee una imagen desde una cadena binaria.

<comment>Param:</comment>
  <info>string</info>  <strong>$imageContents</strong>  El contenido de la imagen
  <info>string</info>  <strong>$filename</strong>       El nombre de archivo de la imagen.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::readimagefile
type: function
doc:
<comment>Description:</comment>
  Lee una imagen desde un descriptor de archivo abierto
  
  Lee una imagen o secuencia de imágenes desde un descriptor de archivo abierto.

<comment>Param:</comment>
  <info>resource</info>  <strong>$fp</strong>  El descriptor de archivo.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::reducenoiseimage
type: function
doc:
<comment>Description:</comment>
  Suaviza los contornos de una imagen
  
  Suaviza los contornos de una imagen mientras que se preserva todavía la información del borde. El
  algoritmo funciona reemplazando cada píxel con su más cercano inmediato en valor. La zona
  inmediata está definida por el radio. Use un radio de 0 y Gmagick::reduceNoiseImage() seleccionará
  una radio apropiado automáticamente.

<comment>Param:</comment>
  <info>float</info>  <strong>$radius</strong>  El radio de la zona inmediata de píxeles.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::removeimage
type: function
doc:
<comment>Description:</comment>
  Elimina una imagen de la lista de imágenes
  
  Elimina una imagen de la lista de imágenes.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito.


id: Gmagick::removeimageprofile
type: function
doc:
<comment>Description:</comment>
  Elimina el perfil nombrado de la imagen y lo devuelve
  
  Elimina el perfil nombrado de la imagen y lo devuelve.

<comment>Param:</comment>
  <info>string</info>  <strong>$name</strong>  El nombre del perfil a devolver: ICC, IPTC, o perfil genérico.

<comment>Return:</comment>
  <info>string</info>  El perfil nombrado.


id: Gmagick::resampleimage
type: function
doc:
<comment>Description:</comment>
  Re-muestrea la imagen a la resolución deseada
  
  Re-muestrea la imagen a la resolución deseada.

<comment>Param:</comment>
  <info>float</info>  <strong>$xResolution</strong>  La nueva resolución x de la imagen.
  <info>float</info>  <strong>$yResolution</strong>  La nueva resolución x de la imagen.
  <info>int</info>    <strong>$filter</strong>       El filtro de imagen a usar.
  <info>float</info>  <strong>$blur</strong>         El factor de borrosidad donde mayor que que es borroso, menor que uno es
                       nítido.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::resizeimage
type: function
doc:
<comment>Description:</comment>
  Escala una imagen
  
  Escala una imagen a las dimensiones deseadas con un filtro.

<comment>Param:</comment>
  <info>int</info>    <strong>$width</strong>   El número de columnas en la imagen escalada.
  <info>int</info>    <strong>$height</strong>  El número de filas en la imagen escalada.
  <info>int</info>    <strong>$filter</strong>  El filtro de imagen a usar.
  <info>float</info>  <strong>$blur</strong>    El factor de borrosidad dondo mayor que 1 es borroso, menor que 1 es nítido.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::rollimage
type: function
doc:
<comment>Description:</comment>
  Compensa una imagen
  
  Compensa una imagen tal como está definido por x e y.

<comment>Param:</comment>
  <info>int</info>  <strong>$x</strong>  El índice x.
  <info>int</info>  <strong>$y</strong>  El índice y.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::rotateimage
type: function
doc:
<comment>Description:</comment>
  Rota una imagen
  
  Rota una imagen el número de grados especificado. Los triángulos vacíos sobrantes por la rotación
  de la imagen se rellenan con el color de fondo.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$color</strong>    El píxel de color de fondo.
  <info>float</info>  <strong>$degrees</strong>  El número de grados que se va a rotar la imagen.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::scaleimage
type: function
doc:
<comment>Description:</comment>
  Escala el tamaño de una imagen
  
  Escala el tamaño de una imagen a las dimensiones dadas. El otro parámetro será calculado si se
  pasa 0 como parámetro.

<comment>Param:</comment>
  <info>int</info>  <strong>$width</strong>   El número de columnas en la imagen escalada.
  <info>int</info>  <strong>$height</strong>  El número de filas en la imagen escalada.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito.


id: Gmagick::separateimagechannel
type: function
doc:
<comment>Description:</comment>
  Separa un canal de la imagen
  
  Separa un canal de la imagen y devuelve una imagen en escala de grises. Un canal es un componente
  de color en particular de cada píxel de la imagen.

<comment>Param:</comment>
  <info>int</info>  <strong>$channel</strong>  Identifica qué canal extraer: RedChannel, GreenChannel, BlueChannel,
                 OpacityChannel, CyanChannel, MagentaChannel, YellowChannel, BlackChannel.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::setCompressionQuality
type: function
doc:
<comment>Description:</comment>
  Establece la calidad de compresión predeterminada del objeto
  
  Establece la calidad de compresión predeterminada del objeto.

<comment>Param:</comment>
  <info>int</info>  <strong>$quality</strong>  

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick en caso de éxito


id: Gmagick::setfilename
type: function
doc:
<comment>Description:</comment>
  Establece el nombre de archivo antes de que se lea o escriba una imagen
  
  Establece el nombre de archivo antes de que se lea o escriba una imagen.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  El nombre de archivo de la imagen.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::setimagebackgroundcolor
type: function
doc:
<comment>Description:</comment>
  Establece el color de fondo de la imagen
  
  Establece el color de fondo de la imagen.

<comment>Param:</comment>
  <info>GmagickPixel</info>  <strong>$color</strong>  La varita de píxel de color de fondo.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::setimageblueprimary
type: function
doc:
<comment>Description:</comment>
  Establece el punto primario azul de la cromaticidad de la imagen
  
  Establece el punto primario azul de la cromaticidad de la imagen.

<comment>Param:</comment>
  <info>float</info>  <strong>$x</strong>  El punto x primario azul.
  <info>float</info>  <strong>$y</strong>  El punto y primario azul.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::setimagebordercolor
type: function
doc:
<comment>Description:</comment>
  Establece el color de borde de la imagen
  
  Establece el color de borde de la imagen.

<comment>Param:</comment>
  <info>GmagickPixel</info>  <strong>$color</strong>  La várita de píxel de borde.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::setimagechanneldepth
type: function
doc:
<comment>Description:</comment>
  Establece la profundidad de una canal de imagen en particular
  
  Establece la profundidad de una canal de imagen en particular.

<comment>Param:</comment>
  <info>int</info>  <strong>$channel</strong>  Identifica qué canal extraer: RedChannel, GreenChannel, BlueChannel,
                 OpacityChannel, CyanChannel, MagentaChannel, YellowChannel, BlackChannel.
  <info>int</info>  <strong>$depth</strong>    La profundidad de la imagen en bits.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::setimagecolorspace
type: function
doc:
<comment>Description:</comment>
  Establece el espacio de color de una imagen
  
  Establece el espacio de color de una imagen.

<comment>Param:</comment>
  <info>int</info>  <strong>$colorspace</strong>  El espacio de color de la imagen: UndefinedColorspace, RGBColorspace,
                    GRAYColorspace, TransparentColorspace, OHTAColorspace, XYZColorspace,
                    YCbCrColorspace, YCCColorspace, YIQColorspace, YPbPrColorspace, YPbPrColorspace,
                    YUVColorspace, CMYKColorspace, sRGBColorspace,  HSLColorspace, o HWBColorspace.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::setimagecompose
type: function
doc:
<comment>Description:</comment>
  Establece el operador de composción de una imagen
  
  Establece el operador de composción de una imagen.

<comment>Param:</comment>
  <info>int</info>  <strong>$composite</strong>  El operador de composición de la imagen.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::setimagedelay
type: function
doc:
<comment>Description:</comment>
  Establece el retardo de una imagen
  
  Establece el retardo de una imagen

<comment>Param:</comment>
  <info>int</info>  <strong>$delay</strong>  El retardo de la imagen en 1/100avo de segundo.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito.


id: Gmagick::setimagedepth
type: function
doc:
<comment>Description:</comment>
  Establece la profundidad de una imagen
  
  Establece la profundidad de una imagen

<comment>Param:</comment>
  <info>int</info>  <strong>$depth</strong>  La profundidad de la imgaen en  bits: 8, 16, o 32.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito.


id: Gmagick::setimagedispose
type: function
doc:
<comment>Description:</comment>
  Establece el método de disposición de una imagen
  
  Establece el método de disposición de una imagen.

<comment>Param:</comment>
  <info>int</info>  <strong>$disposeType</strong>  El tipo de disposición de la imagen.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::setimagefilename
type: function
doc:
<comment>Description:</comment>
  Establece el nombre de archivo de una imagen en particular en una secuencia
  
  Establece el nombre de archivo de una imagen en particular en una secuencia.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  El nombre de archivo de la imagen.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito.


id: Gmagick::setimageformat
type: function
doc:
<comment>Description:</comment>
  Establece el formato de una imagen en particular
  
  Establece el formato de una imagen en particular en una secuencia.

<comment>Param:</comment>
  <info>string</info>  <strong>$imageFormat</strong>  El formato de la imagen.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito.


id: Gmagick::setimagegamma
type: function
doc:
<comment>Description:</comment>
  Establece el valor gamma de la imagen
  
  Establece el valor gamma de la imagen.

<comment>Param:</comment>
  <info>float</info>  <strong>$gamma</strong>  El valor gamma de la imagen.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::setimagegreenprimary
type: function
doc:
<comment>Description:</comment>
  Establece el punto primario verde de la cromaticidad de la imagen
  
  Establece el punto primario verde de la cromaticidad de la imagen.

<comment>Param:</comment>
  <info>float</info>  <strong>$x</strong>  El punto x primario verde de la cromaticidad.
  <info>float</info>  <strong>$y</strong>  El punto y primario verde de la cromaticidad.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito.


id: Gmagick::setimageindex
type: function
doc:
<comment>Description:</comment>
  Establece la posición del iterador en la lista de imágenes especificada con el parámetro index
  
  Establece la posición del iterador en la lista de imágenes especificada con el parámetro index.

<comment>Param:</comment>
  <info>int</info>  <strong>$index</strong>  El número de escena.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito.


id: Gmagick::setimageinterlacescheme
type: function
doc:
<comment>Description:</comment>
  Establece la combinación de entrelazado de la imagen
  
  Establece la combinación de entrelazado de la imagen.

<comment>Param:</comment>
  <info>int</info>  <strong>$interlace</strong>  La combinación de entrelazado de la imagen: NoInterlace, LineInterlace,
                   PlaneInterlace, PartitionInterlace.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::setimageiterations
type: function
doc:
<comment>Description:</comment>
  Establece las iteraciones de la imagen
  
  Establece las iteraciones de la imagen.

<comment>Param:</comment>
  <info>int</info>  <strong>$iterations</strong>  El retraso de la imagen en 1/100avo de segundo.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito.


id: Gmagick::setimageprofile
type: function
doc:
<comment>Description:</comment>
  Añade un perfil nombrado al objeto Gmagick
  
  Añade un perfil nombrado al objeto Gmagick. Si un perfil con el mismo nobre ya existe, se
  reemplaza. Este método difiere del método Gmagick::ProfileImage() en que no aplica ningún perfil
  de color CMS.

<comment>Param:</comment>
  <info>string</info>  <strong>$name</strong>     El nombre del perfil a añadir o eliminar: ICC, IPTC, o perfil genérico.
  <info>string</info>  <strong>$profile</strong>  El perfil.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito.


id: Gmagick::setimageredprimary
type: function
doc:
<comment>Description:</comment>
  Establece el punto primario rojo de la cromaticidad de la imagen
  
  Establece el punto primario rojo de la cromaticidad de la imagen.

<comment>Param:</comment>
  <info>float</info>  <strong>$x</strong>  El punto x primario rojo.
  <info>float</info>  <strong>$y</strong>  El punto y primario rojo.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito.


id: Gmagick::setimagerenderingintent
type: function
doc:
<comment>Description:</comment>
  Establece el propósito de renderización de la imagen
  
  Establece el propósito de renderización de la imagen.

<comment>Param:</comment>
  <info>int</info>  <strong>$rendering_intent</strong>  El propósito de renderización: UndefinedIntent, SaturationIntent,
                          PerceptualIntent, AbsoluteIntent, o RelativeIntent.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito.


id: Gmagick::setimageresolution
type: function
doc:
<comment>Description:</comment>
  Establece la resolución de la imagen
  
  Establece la resolución de la imagen.

<comment>Param:</comment>
  <info>float</info>  <strong>$xResolution</strong>  La resolución x de la imagen.
  <info>float</info>  <strong>$yResolution</strong>  La resolución y de la imagen.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito.


id: Gmagick::setimagescene
type: function
doc:
<comment>Description:</comment>
  Establece la escena de la imagen
  
  Establece la escena de la imagen.

<comment>Param:</comment>
  <info>int</info>  <strong>$scene</strong>  El número de escena de la imagen.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito.


id: Gmagick::setimagetype
type: function
doc:
<comment>Description:</comment>
  Establece el tipo de imagen
  
  Establece el tipo de imagen.

<comment>Param:</comment>
  <info>int</info>  <strong>$imgType</strong>  El tipo de imagen: UndefinedType, BilevelType, GrayscaleType, GrayscaleMatteType,
                 PaletteType, PaletteMatteType, TrueColorType, TrueColorMatteType,
                 ColorSeparationType, ColorSeparationMatteType, o OptimizeType.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito.


id: Gmagick::setimageunits
type: function
doc:
<comment>Description:</comment>
  Establece las unidades de resolución de la imagen
  
  Establece las unidades de resolución de la imagen.

<comment>Param:</comment>
  <info>int</info>  <strong>$resolution</strong>  Las unidades de resolución de la imagen: Undefinedresolution,
                    PixelsPerInchResolution, o PixelsPerCentimeterResolution.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito.


id: Gmagick::setimagewhitepoint
type: function
doc:
<comment>Description:</comment>
  Establece el punto blanco de cromaticidad de la imagen
  
  Establece el punto blanco de cromaticidad de la imagen.

<comment>Param:</comment>
  <info>float</info>  <strong>$x</strong>  El punto x blanco.
  <info>float</info>  <strong>$y</strong>  El punto y blanco.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito.


id: Gmagick::setsamplingfactors
type: function
doc:
<comment>Description:</comment>
  Establece los factores de muestreo de la imagen
  
  Establece los factores de muestreo de la imagen.

<comment>Param:</comment>
  <info>array</info>  <strong>$factors</strong>  Una matriz de valores de tipo double que representa el factor de muestreo de cada
                   componente de color (en el orden RGB).

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito.


id: Gmagick::setsize
type: function
doc:
<comment>Description:</comment>
  Establece el tamaño del objeto Gmagick
  
  Establece el tamaño del Gmagick. Se debe establecer antes de leer un formato de imagen en bruto
  como RGB, GRAY, o CMYK.

<comment>Param:</comment>
  <info>int</info>  <strong>$columns</strong>  En ancho en píxeles.
  <info>int</info>  <strong>$rows</strong>     En alto en píxeles.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito.


id: Gmagick::shearimage
type: function
doc:
<comment>Description:</comment>
  Crea un paralelogramo
  
  Desliza un extremo de una imagen a lo largo del eje X o Y, creando un paralelogramo. Un recorte en
  la dirección X desliza un extremo a lo largo del eje X, mientras que un recorte en la dirección Y
  desliza un extremo a lo largo del eje Y. La cantidad del recorte se controla por un ángulo de
  recorte. Para recortes en la dirección X, x_shear se mide relativo al eje Y, y de forma similar,
  para recortes en la dirección Y, y_shear se mide relativo al eje X. Los triángulos vacíos
  sobrantes del recorte de la imagen se rellenan con el color de fondo.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$color</strong>   La varita de píxel de color de fondo.
  <info>float</info>  <strong>$xShear</strong>  El número de grados a recortar la imagen.
  <info>float</info>  <strong>$yShear</strong>  El número de grados a recortar la imagen.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::solarizeimage
type: function
doc:
<comment>Description:</comment>
  Aplica un efecto de solarización a la imagen
  
  Aplica un efecto especial a la imagen, similar al efecto conseguido en un cuarto oscuro
  fotográfico exponiendo selectivamente áreas del papel sensible fotográfico a la luz. Los rangos de
  umbral van desde 0 al de QuantumRange y es una medida de la extensión de la solarización.

<comment>Param:</comment>
  <info>int</info>  <strong>$threshold</strong>  Define la extensión de la solarización.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito.


id: Gmagick::spreadimage
type: function
doc:
<comment>Description:</comment>
  Despalza aleatoriamente cada píxel en un bloque
  
  Método de efecto especial que desplaza aleatoriamente cada píxel en un bloque definido por el
  parámetro radius (radio).

<comment>Param:</comment>
  <info>float</info>  <strong>$radius</strong>  Elige un píxel aleatorio en una zona inmediata de esta extensión.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::stripimage
type: function
doc:
<comment>Description:</comment>
  Elimina todos los perfiles y comentarios de una imagen
  
  Elimina todos los perfiles y comentarios de una imagen.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::swirlimage
type: function
doc:
<comment>Description:</comment>
  Arremolina los píxeles desde el centro de la imagen
  
  Arremolina los píxeles desde el centro de la imagen, donde los grados indican el alcance del arco
  a través del cuál cada píxel es movido. Se puede obtener un efecto más dramático moviendo los
  grados desde 1 a 360.

<comment>Param:</comment>
  <info>float</info>  <strong>$degrees</strong>  Define la tirantez del efecto de arremolinamiento.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito


id: Gmagick::thumbnailimage
type: function
doc:
<comment>Description:</comment>
  Cambia el tamaño de una imagen
  
  Cambia el tamaño de una imagen a las dimensiones dadas y elimina cualquier perfil asociado. El
  objetivo es producir conjuntos de imágenes de miniaturas pequeñas de bajo coste para mostrar en la
  web. Si <info>true</info> se da como tercer parámetro, los parámetros columns (columnas) y rows (filas) se usan
  como máximos para cada cara. Ambas caras serán escaladas a una proporción menor hasta que la
  comparación sea menor que el parámetro dado para la cara.

<comment>Param:</comment>
  <info>int</info>  <strong>$width</strong>   El ancho de la imagen
  <info>int</info>  <strong>$height</strong>  El alto de la imagen

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick si se tuvo éxito.


id: Gmagick::trimimage
type: function
doc:
<comment>Description:</comment>
  Elimina los extremos de la imagen
  
  Elimina los extremos que son el color de fondo de la imagen.

<comment>Param:</comment>
  <info>float</info>  <strong>$fuzz</strong>  Por defecto, el objetivo debe coincidir exactamente con un color de píxel en
                particular. Sin embargo, en la mayoría de los casos dos colores pueden diferir por
                una cantidad pequeña. El miembro enfoque de la imagen define cuánta tolerancia es
                aceptable para considerar que dos colores son el mismo. Este parámetro represenata
                la variación del rango de cuantía.

<comment>Return:</comment>
  <info>Gmagick</info>  El objeto Gmagick


id: Gmagick::write
type: function
doc:
<comment>Description:</comment>
  Alias de Gmagick::writeimage
  
  Este método es un alias de  Gmagick::writeimage.


