23.04.2015 Views

Grupo ARCO - Universidad de Castilla-La Mancha

Grupo ARCO - Universidad de Castilla-La Mancha

Grupo ARCO - Universidad de Castilla-La Mancha

SHOW MORE
SHOW LESS

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

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

Tipos <strong>de</strong> filtros<br />

D<br />

Los filtros se indican en un secuencia <strong>de</strong> ca<strong>de</strong>nas, que internamente son transformadas en<br />

instancias <strong>de</strong> las siguientes clases. Cada clase contiene un método para comprobar que un<br />

cierto valor es correcto en el filtro.<br />

D.1.<br />

EventFilter<br />

Si en la ca<strong>de</strong>na don<strong>de</strong> se indica el filtro, el operador <strong>de</strong>finido es “==”, el objeto correspondiente<br />

será una instancia a la clase EventFilter. <strong>La</strong> utilización <strong>de</strong> este filtro indicará que<br />

los valores en una cierta coor<strong>de</strong>nada serán iguales a un <strong>de</strong>terminado valor.<br />

class EventFilter(object):<br />

<strong>de</strong>f __init__(self, name, num):<br />

self.field_name = name<br />

self.num = num<br />

<strong>de</strong>f match(self, value):<br />

return value == self.num<br />

<strong>de</strong>f equal(self, filter_):<br />

return ((type(filter_)==type(self))<br />

and (filter_.field_name == self.field_name)<br />

and (filter_.num == self.num))<br />

Listado D.1: Clase EventFilter<br />

D.2.<br />

EventFilterRange<br />

Si el operador especificado en la ca<strong>de</strong>na <strong>de</strong>l filtro es “in range”, se creará una instancia <strong>de</strong><br />

la clase EventFilterRange. Esta clase representa a los valores <strong>de</strong> una <strong>de</strong>terminada coor<strong>de</strong>nada<br />

que pertenecen al rango entre dos valores.<br />

class EventFilterRange(object):<br />

<strong>de</strong>f __init__(self, name, n, m):<br />

self.field_name = name<br />

self.valueLow = n<br />

self.valueHigh = m<br />

<strong>de</strong>f match(self, low, high=None):<br />

85

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

Saved successfully!

Ooh no, something went wrong!